class circular_raw_ostream
Declaration
class circular_raw_ostream : public raw_ostream { /* full declaration omitted */ };
Description
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.
Declared at: llvm/include/llvm/Support/circular_raw_ostream.h:24
Inherits from: raw_ostream
Member Variables
- public 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.
- public static const bool REFERENCE_ONLY = false
- REFERENCE_ONLY - Tell this stream it should not manage the held stream.
Inherited from raw_ostream:
- public static BLACK = Colors::BLACK
- public static RED = Colors::RED
- public static GREEN = Colors::GREEN
- public static YELLOW = Colors::YELLOW
- public static BLUE = Colors::BLUE
- public static MAGENTA = Colors::MAGENTA
- public static CYAN = Colors::CYAN
- public static WHITE = Colors::WHITE
- public static SAVEDCOLOR = Colors::SAVEDCOLOR
- public static RESET = Colors::RESET
Method Overview
- public circular_raw_ostream(llvm::raw_ostream & Stream, const char * Header, size_t BuffSize = 0, bool Owns = REFERENCE_ONLY)
- public void flushBufferWithBanner()
- public bool is_displayed() const
- public void setStream(llvm::raw_ostream & Stream, bool Owns = REFERENCE_ONLY)
- public ~circular_raw_ostream()
Inherited from raw_ostream:
- public GetBufferSize
- public GetNumBytesInBuffer
- protected SetBuffer
- public SetBufferSize
- public SetBuffered
- public SetUnbuffered
- public changeColor
- public enable_colors
- public flush
- protected getBufferStart
- public has_colors
- public indent
- public is_displayed
- protected preferred_buffer_size
- public resetColor
- public reverseColor
- public tell
- public write
- public write
- public write_escaped
- public write_hex
- public write_uuid
- public write_zeros
Methods
¶circular_raw_ostream(llvm::raw_ostream& Stream,
const char* Header,
size_t BuffSize = 0,
bool Owns = REFERENCE_ONLY)
circular_raw_ostream(llvm::raw_ostream& Stream,
const char* Header,
size_t BuffSize = 0,
bool Owns = REFERENCE_ONLY)
Description
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.
Declared at: llvm/include/llvm/Support/circular_raw_ostream.h:107
Parameters
- llvm::raw_ostream& Stream
- const char* Header
- size_t BuffSize = 0
- bool Owns = REFERENCE_ONLY
¶void flushBufferWithBanner()
void flushBufferWithBanner()
Description
flushBufferWithBanner - Force output of the buffer along with a small header.
Declared at: llvm/include/llvm/Support/circular_raw_ostream.h:143
¶bool is_displayed() const
bool is_displayed() const
Description
This function determines if this stream is connected to a "tty" or "console" window. That is, the output would be displayed to the user rather than being put on a pipe or stored in a file.
Declared at: llvm/include/llvm/Support/circular_raw_ostream.h:125
¶void setStream(llvm::raw_ostream& Stream,
bool Owns = REFERENCE_ONLY)
void setStream(llvm::raw_ostream& Stream,
bool Owns = REFERENCE_ONLY)
Description
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.
Declared at: llvm/include/llvm/Support/circular_raw_ostream.h:134
Parameters
- llvm::raw_ostream& Stream
- bool Owns = REFERENCE_ONLY
¶~circular_raw_ostream()
~circular_raw_ostream()
Declared at: llvm/include/llvm/Support/circular_raw_ostream.h:118