| 
    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 ()=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 | 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().
      
  | 
  virtualdefault | 
      
  | 
  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().