|
LLVM 22.0.0git
|
#include "llvm/Demangle/Utility.h"
Public Member Functions | |
| OutputBuffer (char *StartBuf, size_t Size) | |
| OutputBuffer (char *StartBuf, size_t *SizePtr) | |
| OutputBuffer ()=default | |
| OutputBuffer (const OutputBuffer &)=delete | |
| OutputBuffer & | operator= (const OutputBuffer &)=delete |
| virtual | ~OutputBuffer () |
| operator std::string_view () const | |
| virtual void | printLeft (const Node &N) |
| Called by the demangler when printing the demangle tree. | |
| virtual void | printRight (const Node &N) |
| virtual void | notifyInsertion (size_t, size_t) |
| Called when we write to this object anywhere other than the end. | |
| virtual void | notifyDeletion (size_t, size_t) |
Called when we make the CurrentPosition of this object smaller. | |
| bool | isGtInsideTemplateArgs () const |
| void | printOpen (char Open='(') |
| void | printClose (char Close=')') |
| OutputBuffer & | operator+= (std::string_view R) |
| OutputBuffer & | operator+= (char C) |
| OutputBuffer & | prepend (std::string_view R) |
| OutputBuffer & | operator<< (std::string_view R) |
| OutputBuffer & | operator<< (char C) |
| OutputBuffer & | operator<< (long long N) |
| OutputBuffer & | operator<< (unsigned long long N) |
| OutputBuffer & | operator<< (long N) |
| OutputBuffer & | operator<< (unsigned long N) |
| OutputBuffer & | operator<< (int N) |
| OutputBuffer & | operator<< (unsigned int N) |
| void | insert (size_t Pos, const char *S, size_t N) |
| size_t | getCurrentPosition () const |
| void | setCurrentPosition (size_t NewPos) |
| char | back () const |
| bool | empty () const |
| char * | getBuffer () |
| char * | getBufferEnd () |
| size_t | getBufferCapacity () const |
Public Attributes | |
| unsigned | CurrentPackIndex = std::numeric_limits<unsigned>::max() |
| If a ParameterPackExpansion (or similar type) is encountered, the offset into the pack that we're currently printing. | |
| unsigned | CurrentPackMax = std::numeric_limits<unsigned>::max() |
| unsigned | GtIsGt = 1 |
| When zero, we're printing template args and '>' needs to be parenthesized. | |
|
inline |
Definition at line 75 of file Utility.h.
References Size.
Referenced by operator+=(), operator+=(), operator<<(), operator<<(), operator<<(), operator<<(), operator<<(), operator<<(), operator<<(), operator<<(), operator=(), OutputBuffer(), OutputBuffer(), and prepend().
|
inline |
Definition at line 77 of file Utility.h.
References OutputBuffer().
|
default |
|
delete |
References OutputBuffer().
|
inline |
Definition at line 199 of file Utility.h.
References DEMANGLE_ASSERT.
|
inline |
Definition at line 206 of file Utility.h.
Referenced by llvm::dlangDemangle(), removeNullBytes(), and llvm::ThinLTOCodeGenerator::writeGeneratedObject().
|
inline |
Definition at line 193 of file Utility.h.
Referenced by decodePunycode(), llvm::dlangDemangle(), and removeNullBytes().
Definition at line 180 of file Utility.h.
References DEMANGLE_ASSERT, N, and notifyInsertion().
Referenced by decodePunycode().
|
inline |
|
inlinevirtual |
Called when we make the CurrentPosition of this object smaller.
Definition at line 100 of file Utility.h.
Referenced by setCurrentPosition().
|
inlinevirtual |
|
inline |
Definition at line 131 of file Utility.h.
References C(), and OutputBuffer().
|
inline |
Definition at line 122 of file Utility.h.
References OutputBuffer(), and Size.
|
inline |
Definition at line 154 of file Utility.h.
References C(), and OutputBuffer().
|
inline |
Definition at line 172 of file Utility.h.
References N, and OutputBuffer().
|
inline |
Definition at line 156 of file Utility.h.
References N, and OutputBuffer().
|
inline |
Definition at line 164 of file Utility.h.
References N, and OutputBuffer().
|
inline |
Definition at line 152 of file Utility.h.
References OutputBuffer().
|
inline |
Definition at line 176 of file Utility.h.
References N, and OutputBuffer().
|
inline |
Definition at line 160 of file Utility.h.
References N, and OutputBuffer().
|
inline |
Definition at line 168 of file Utility.h.
References N, and OutputBuffer().
|
delete |
References OutputBuffer().
|
inline |
Definition at line 137 of file Utility.h.
References notifyInsertion(), OutputBuffer(), and Size.
|
inline |
Called by the demangler when printing the demangle tree.
By default calls into Node::print{Left|Right} but can be overriden by clients to track additional state when printing the demangled name.
Definition at line 6200 of file ItaniumDemangle.h.
References N.
|
inline |
Definition at line 6202 of file ItaniumDemangle.h.
References N.
|
inline |
Definition at line 194 of file Utility.h.
References notifyDeletion().
Referenced by llvm::dlangDemangle(), and removeNullBytes().
If a ParameterPackExpansion (or similar type) is encountered, the offset into the pack that we're currently printing.
| unsigned OutputBuffer::GtIsGt = 1 |
When zero, we're printing template args and '>' needs to be parenthesized.
Use a counter so we can simply increment inside parentheses.
Definition at line 109 of file Utility.h.
Referenced by isGtInsideTemplateArgs(), printClose(), and printOpen().