|
LLDB mainline
|
#include <StreamTee.h>
Public Member Functions | |
| StreamTee (bool colors=false) | |
| StreamTee (lldb::StreamSP &stream_sp) | |
| StreamTee (lldb::StreamSP &stream_sp, lldb::StreamSP &stream_2_sp) | |
| StreamTee (const StreamTee &rhs) | |
| ~StreamTee () override=default | |
| StreamTee & | operator= (const StreamTee &rhs) |
| void | Flush () override |
| Flush the stream. | |
| size_t | AppendStream (const lldb::StreamSP &stream_sp) |
| size_t | GetNumStreams () const |
| lldb::StreamSP | GetStreamAtIndex (uint32_t idx) const |
| void | SetStreamAtIndex (uint32_t idx, const lldb::StreamSP &stream_sp) |
| Public Member Functions inherited from lldb_private::Stream | |
| Stream (uint32_t flags, uint32_t addr_size, lldb::ByteOrder byte_order, bool colors=false) | |
| Construct with flags and address size and byte order. | |
| Stream (bool colors=false) | |
| Construct a default Stream, not binary, host byte order and host addr size. | |
| Stream (const Stream &other) | |
| Stream & | operator= (const Stream &rhs) |
| virtual | ~Stream () |
| Destructor. | |
| size_t | Write (const void *src, size_t src_len) |
| Output character bytes to the stream. | |
| size_t | GetWrittenBytes () const |
| size_t | PutChar (char ch) |
| lldb::ByteOrder | SetByteOrder (lldb::ByteOrder byte_order) |
| Set the byte_order value. | |
| size_t | PrintfAsRawHex8 (const char *format,...) __attribute__((__format__(__printf__ |
| Format a C string from a printf style format and variable arguments and encode and append the resulting C string as hex bytes. | |
| size_t size_t | PutHex8 (uint8_t uvalue) |
| Append an uint8_t value in the hexadecimal format to the stream. | |
| size_t | PutNHex8 (size_t n, uint8_t uvalue) |
| size_t | PutHex16 (uint16_t uvalue, lldb::ByteOrder byte_order=lldb::eByteOrderInvalid) |
| size_t | PutHex32 (uint32_t uvalue, lldb::ByteOrder byte_order=lldb::eByteOrderInvalid) |
| size_t | PutHex64 (uint64_t uvalue, lldb::ByteOrder byte_order=lldb::eByteOrderInvalid) |
| size_t | PutMaxHex64 (uint64_t uvalue, size_t byte_size, lldb::ByteOrder byte_order=lldb::eByteOrderInvalid) |
| size_t | PutFloat (float f, lldb::ByteOrder byte_order=lldb::eByteOrderInvalid) |
| size_t | PutDouble (double d, lldb::ByteOrder byte_order=lldb::eByteOrderInvalid) |
| size_t | PutLongDouble (long double ld, lldb::ByteOrder byte_order=lldb::eByteOrderInvalid) |
| size_t | PutPointer (void *ptr) |
| size_t | PutBytesAsRawHex8 (const void *src, size_t src_len, lldb::ByteOrder src_byte_order=lldb::eByteOrderInvalid, lldb::ByteOrder dst_byte_order=lldb::eByteOrderInvalid) |
| size_t | PutRawBytes (const void *s, size_t src_len, lldb::ByteOrder src_byte_order=lldb::eByteOrderInvalid, lldb::ByteOrder dst_byte_order=lldb::eByteOrderInvalid) |
| size_t | PutStringAsRawHex8 (llvm::StringRef s) |
| Stream & | operator<< (const char *cstr) |
| Output a NULL terminated C string cstr to the stream s. | |
| Stream & | operator<< (llvm::StringRef str) |
| Stream & | operator<< (const void *p) |
| Output a pointer value p to the stream s. | |
| Stream & | operator<< (char ch) |
| Output a character ch to the stream s. | |
| Stream & | operator<< (uint8_t uval)=delete |
| Stream & | operator<< (uint16_t uval)=delete |
| Stream & | operator<< (uint32_t uval)=delete |
| Stream & | operator<< (uint64_t uval)=delete |
| Stream & | operator<< (int8_t sval)=delete |
| Stream & | operator<< (int16_t sval)=delete |
| Stream & | operator<< (int32_t sval)=delete |
| Stream & | operator<< (int64_t sval)=delete |
| size_t | PutCString (llvm::StringRef cstr) |
| Output a C string to the stream. | |
| void | PutCStringColorHighlighted (llvm::StringRef text, std::optional< HighlightSettings > settings=std::nullopt) |
| Output a C string to the stream with color highlighting. | |
| size_t | EOL () |
| Output and End of Line character to the stream. | |
| uint32_t | GetAddressByteSize () const |
| Get the address size in bytes. | |
| Flags & | GetFlags () |
| The flags accessor. | |
| const Flags & | GetFlags () const |
| The flags const accessor. | |
| lldb::ByteOrder | GetByteOrder () const |
| unsigned | GetIndentLevel () const |
| Get the current indentation level. | |
| void | SetIndentLevel (unsigned level) |
| Set the current indentation level. | |
| size_t | Indent (llvm::StringRef s="") |
| Indent the current line in the stream. | |
| void | IndentLess (unsigned amount=2) |
| Decrement the current indentation level. | |
| void | IndentMore (unsigned amount=2) |
| Increment the current indentation level. | |
| IndentScope | MakeIndentScope (unsigned indent_amount=2) |
| Create an indentation scope that restores the original indent level when the object goes out of scope (RAII). | |
| void | Offset (uint32_t offset, const char *format="0x%8.8x: ") |
| Output an offset value. | |
| size_t | Printf (const char *format,...) __attribute__((format(printf |
| Output printf formatted output to the stream. | |
| size_t size_t | PrintfVarArg (const char *format, va_list args) |
| template<typename... Args> | |
| void | Format (const char *format, Args &&... args) |
| void | QuotedCString (const char *cstr, const char *format="\"%s\"") |
| Output a quoted C string value to the stream. | |
| void | SetAddressByteSize (uint32_t addr_size) |
| Set the address size in bytes. | |
| size_t | PutSLEB128 (int64_t uval) |
| Output a SLEB128 number to the stream. | |
| size_t | PutULEB128 (uint64_t uval) |
| Output a ULEB128 number to the stream. | |
| llvm::raw_ostream & | AsRawOstream () |
| Returns a raw_ostream that forwards the data to this Stream object. | |
Protected Types | |
| typedef std::vector< lldb::StreamSP > | collection |
Protected Member Functions | |
| size_t | WriteImpl (const void *s, size_t length) override |
| Output character bytes to the stream. | |
| Protected Member Functions inherited from lldb_private::Stream | |
| void | _PutHex8 (uint8_t uvalue, bool add_prefix) |
Protected Attributes | |
| std::recursive_mutex | m_streams_mutex |
| collection | m_streams |
| Protected Attributes inherited from lldb_private::Stream | |
| Flags | m_flags |
| Dump flags. | |
| uint32_t | m_addr_size = 4 |
| Size of an address in bytes. | |
| lldb::ByteOrder | m_byte_order |
| Byte order to use when encoding scalar types. | |
| unsigned | m_indent_level = 0 |
| Indention level. | |
| std::size_t | m_bytes_written = 0 |
| Number of bytes written so far. | |
| RawOstreamForward | m_forwarder |
Additional Inherited Members | |
| Public Types inherited from lldb_private::Stream | |
| enum | { eBinary = (1 << 0) } |
| m_flags bit values. More... | |
Definition at line 20 of file StreamTee.h.
|
protected |
Definition at line 107 of file StreamTee.h.
|
inline |
Definition at line 22 of file StreamTee.h.
References lldb_private::Stream::Stream().
Referenced by operator=(), and StreamTee().
|
inline |
Definition at line 24 of file StreamTee.h.
References m_streams.
|
inline |
Definition at line 30 of file StreamTee.h.
References m_streams.
|
inline |
Definition at line 38 of file StreamTee.h.
References m_streams, m_streams_mutex, lldb_private::Stream::Stream(), and StreamTee().
|
overridedefault |
|
inline |
Definition at line 72 of file StreamTee.h.
References m_streams, and m_streams_mutex.
|
inlineoverridevirtual |
Flush the stream.
Subclasses should flush the stream to make any output appear if the stream has any buffering.
Implements lldb_private::Stream.
Definition at line 59 of file StreamTee.h.
References lldb_private::Stream::Flush(), m_streams, m_streams_mutex, and lldb_private::Stream::Stream().
|
inline |
Definition at line 79 of file StreamTee.h.
References m_streams, and m_streams_mutex.
|
inline |
Definition at line 88 of file StreamTee.h.
References m_streams, and m_streams_mutex.
Definition at line 46 of file StreamTee.h.
References m_streams, m_streams_mutex, lldb_private::Stream::operator=(), and StreamTee().
|
inline |
Definition at line 96 of file StreamTee.h.
References m_streams, and m_streams_mutex.
|
inlineoverrideprotectedvirtual |
Output character bytes to the stream.
Appends src_len characters from the buffer src to the stream.
| [in] | src | A buffer containing at least src_len bytes of data. |
| [in] | src_len | A number of bytes to append to the stream. |
Implements lldb_private::Stream.
Definition at line 111 of file StreamTee.h.
References m_streams, m_streams_mutex, lldb_private::Stream::Stream(), and lldb_private::Stream::Write().
|
protected |
Definition at line 109 of file StreamTee.h.
Referenced by AppendStream(), Flush(), GetNumStreams(), GetStreamAtIndex(), operator=(), SetStreamAtIndex(), StreamTee(), StreamTee(), StreamTee(), and WriteImpl().
|
mutableprotected |
Definition at line 108 of file StreamTee.h.
Referenced by AppendStream(), Flush(), GetNumStreams(), GetStreamAtIndex(), operator=(), SetStreamAtIndex(), StreamTee(), and WriteImpl().