|
LLVM 23.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 ()=default |
| 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 | isInParensInTemplateArgs () const |
| Returns true if we're currently between a '(' and ')' when printing template args. | |
| bool | isInsideTemplateArgs () const |
| Returns true if we're printing template args. | |
| 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() |
| struct { | |
| unsigned ParenDepth = 0 | |
| The depth of '(' and ')' inside the currently printed template arguments. More... | |
| bool InsideTemplate = false | |
| True if we're currently printing a template argument. More... | |
| } | TemplateTracker |
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().
Definition at line 77 of file Utility.h.
References OutputBuffer().
|
default |
|
delete |
References OutputBuffer().
|
virtualdefault |
|
inline |
Definition at line 213 of file Utility.h.
References DEMANGLE_ASSERT.
|
inline |
Definition at line 220 of file Utility.h.
Referenced by llvm::dlangDemangle(), removeNullBytes(), and llvm::ThinLTOCodeGenerator::writeGeneratedObject().
|
inline |
Definition at line 207 of file Utility.h.
Referenced by decodePunycode(), llvm::dlangDemangle(), and removeNullBytes().
Definition at line 194 of file Utility.h.
References DEMANGLE_ASSERT, N, and notifyInsertion().
Referenced by decodePunycode().
|
inline |
Returns true if we're currently between a '(' and ')' when printing template args.
Definition at line 118 of file Utility.h.
References TemplateTracker.
|
inline |
Returns true if we're printing template args.
Definition at line 123 of file Utility.h.
References TemplateTracker.
Referenced by printClose(), and printOpen().
Called when we make the CurrentPosition of this object smaller.
Definition at line 100 of file Utility.h.
Referenced by setCurrentPosition().
|
inline |
Definition at line 145 of file Utility.h.
References C(), and OutputBuffer().
|
inline |
Definition at line 136 of file Utility.h.
References OutputBuffer(), and Size.
|
inline |
Definition at line 168 of file Utility.h.
References C(), and OutputBuffer().
|
inline |
Definition at line 186 of file Utility.h.
References N, and OutputBuffer().
|
inline |
Definition at line 170 of file Utility.h.
References N, and OutputBuffer().
|
inline |
Definition at line 178 of file Utility.h.
References N, and OutputBuffer().
|
inline |
Definition at line 166 of file Utility.h.
References OutputBuffer().
|
inline |
Definition at line 190 of file Utility.h.
References N, and OutputBuffer().
|
inline |
Definition at line 174 of file Utility.h.
References N, and OutputBuffer().
|
inline |
Definition at line 182 of file Utility.h.
References N, and OutputBuffer().
|
delete |
References OutputBuffer().
|
inline |
Definition at line 151 of file Utility.h.
References notifyInsertion(), OutputBuffer(), and Size.
|
inline |
Definition at line 130 of file Utility.h.
References isInsideTemplateArgs(), and TemplateTracker.
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 6256 of file ItaniumDemangle.h.
References N.
|
inline |
Definition at line 125 of file Utility.h.
References isInsideTemplateArgs(), and TemplateTracker.
Definition at line 6258 of file ItaniumDemangle.h.
References N.
|
inline |
Definition at line 208 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.
| bool OutputBuffer::InsideTemplate = false |
| unsigned OutputBuffer::ParenDepth = 0 |
| struct { ... } OutputBuffer::TemplateTracker |
Referenced by isInParensInTemplateArgs(), isInsideTemplateArgs(), printClose(), and printOpen().