LLVM
8.0.1
|
circular_raw_ostream - A raw_ostream which can save its data to a circular buffer, or can pass it through directly to an underlying stream if specified with a buffer of zero. More...
#include "llvm/Support/circular_raw_ostream.h"
Public Member Functions | |
circular_raw_ostream (raw_ostream &Stream, const char *Header, size_t BuffSize=0, bool Owns=REFERENCE_ONLY) | |
circular_raw_ostream - Construct an optionally circular-buffered stream, handing it an underlying stream to do the "real" output. More... | |
~circular_raw_ostream () override | |
void | setStream (raw_ostream &Stream, bool Owns=REFERENCE_ONLY) |
setStream - Tell the circular_raw_ostream to output a different stream. More... | |
void | flushBufferWithBanner () |
flushBufferWithBanner - Force output of the buffer along with a small header. More... | |
Public Member Functions inherited from llvm::raw_ostream | |
raw_ostream (bool unbuffered=false) | |
raw_ostream (const raw_ostream &)=delete | |
void | operator= (const raw_ostream &)=delete |
virtual | ~raw_ostream () |
uint64_t | tell () const |
tell - Return the current offset with the file. More... | |
void | SetBuffered () |
Set the stream to be buffered, with an automatically determined buffer size. More... | |
void | SetBufferSize (size_t Size) |
Set the stream to be buffered, using the specified buffer size. More... | |
size_t | GetBufferSize () const |
void | SetUnbuffered () |
Set the stream to be unbuffered. More... | |
size_t | GetNumBytesInBuffer () const |
void | flush () |
raw_ostream & | operator<< (char C) |
raw_ostream & | operator<< (unsigned char C) |
raw_ostream & | operator<< (signed char C) |
raw_ostream & | operator<< (StringRef Str) |
raw_ostream & | operator<< (const char *Str) |
raw_ostream & | operator<< (const std::string &Str) |
raw_ostream & | operator<< (const SmallVectorImpl< char > &Str) |
raw_ostream & | operator<< (unsigned long N) |
raw_ostream & | operator<< (long N) |
raw_ostream & | operator<< (unsigned long long N) |
raw_ostream & | operator<< (long long N) |
raw_ostream & | operator<< (const void *P) |
raw_ostream & | operator<< (unsigned int N) |
raw_ostream & | operator<< (int N) |
raw_ostream & | operator<< (double N) |
raw_ostream & | write_hex (unsigned long long N) |
Output N in hexadecimal, without any prefix or padding. More... | |
raw_ostream & | write_uuid (const uuid_t UUID) |
raw_ostream & | write_escaped (StringRef Str, bool UseHexEscapes=false) |
Output Str , turning '\', '', '', '"', and anything that doesn't satisfy llvm::isPrint into an escape sequence. More... | |
raw_ostream & | write (unsigned char C) |
raw_ostream & | write (const char *Ptr, size_t Size) |
raw_ostream & | operator<< (const format_object_base &Fmt) |
raw_ostream & | operator<< (const FormattedString &) |
raw_ostream & | operator<< (const FormattedNumber &) |
raw_ostream & | operator<< (const formatv_object_base &) |
raw_ostream & | operator<< (const FormattedBytes &) |
raw_ostream & | indent (unsigned NumSpaces) |
indent - Insert 'NumSpaces' spaces. More... | |
raw_ostream & | write_zeros (unsigned NumZeros) |
write_zeros - Insert 'NumZeros' nulls. More... | |
virtual raw_ostream & | changeColor (enum Colors Color, bool Bold=false, bool BG=false) |
Changes the foreground color of text that will be output from this point forward. More... | |
virtual raw_ostream & | resetColor () |
Resets the colors to terminal defaults. More... | |
virtual raw_ostream & | reverseColor () |
Reverses the foreground and background colors. More... | |
virtual bool | is_displayed () const |
This function determines if this stream is connected to a "tty" or "console" window. More... | |
virtual bool | has_colors () const |
This function determines if this stream is displayed and supports colors. More... | |
Static Public Attributes | |
static const bool | TAKE_OWNERSHIP = true |
TAKE_OWNERSHIP - Tell this stream that it owns the underlying stream and is responsible for cleanup, memory management issues, etc. More... | |
static const bool | REFERENCE_ONLY = false |
REFERENCE_ONLY - Tell this stream it should not manage the held stream. More... | |
Additional Inherited Members | |
Public Types inherited from llvm::raw_ostream | |
enum | Colors { BLACK = 0, RED, GREEN, YELLOW, BLUE, MAGENTA, CYAN, WHITE, SAVEDCOLOR } |
using | uuid_t = uint8_t[16] |
Output a formatted UUID with dash separators. More... | |
Protected Member Functions inherited from llvm::raw_ostream | |
void | SetBuffer (char *BufferStart, size_t Size) |
Use the provided buffer as the raw_ostream buffer. More... | |
virtual size_t | preferred_buffer_size () const |
Return an efficient buffer size for the underlying output mechanism. More... | |
const char * | getBufferStart () const |
Return the beginning of the current stream buffer, or 0 if the stream is unbuffered. More... | |
circular_raw_ostream - A raw_ostream which can save its data to a circular buffer, or can pass it through directly to an underlying stream if specified with a buffer of zero.
Definition at line 25 of file circular_raw_ostream.h.
|
inline |
circular_raw_ostream - Construct an optionally circular-buffered stream, handing it an underlying stream to do the "real" output.
As a side effect, if BuffSize is nonzero, the given Stream is set to be Unbuffered. This is because circular_raw_ostream does its own buffering, so it doesn't want another layer of buffering to be happening underneath it.
"Owns" tells the circular_raw_ostream whether it is responsible for managing the held stream, doing memory management of it, etc.
Definition at line 108 of file circular_raw_ostream.h.
References setStream().
|
inlineoverride |
Definition at line 119 of file circular_raw_ostream.h.
References llvm::raw_ostream::flush(), and flushBufferWithBanner().
void circular_raw_ostream::flushBufferWithBanner | ( | ) |
flushBufferWithBanner - Force output of the buffer along with a small header.
Definition at line 39 of file circular_raw_ostream.cpp.
References llvm::raw_ostream::write().
Referenced by debug_user_sig_handler(), setStream(), and ~circular_raw_ostream().
|
inline |
setStream - Tell the circular_raw_ostream to output a different stream.
"Owns" tells circular_raw_ostream whether it should take responsibility for managing the underlying stream.
Definition at line 131 of file circular_raw_ostream.h.
References flushBufferWithBanner().
Referenced by circular_raw_ostream().
REFERENCE_ONLY - Tell this stream it should not manage the held stream.
Definition at line 36 of file circular_raw_ostream.h.
TAKE_OWNERSHIP - Tell this stream that it owns the underlying stream and is responsible for cleanup, memory management issues, etc.
Definition at line 31 of file circular_raw_ostream.h.