LLVM: lib/Demangle/MicrosoftDemangle.cpp File Reference (original) (raw)

Go to the source code of this file.

Functions
static bool startsWithDigit (std::string_view S)
static bool consumeFront (std::string_view &S, char C)
static bool consumeFront (std::string_view &S, std::string_view C)
static bool consumeFront (std::string_view &S, std::string_view PrefixA, std::string_view PrefixB, bool A)
static bool startsWith (std::string_view S, std::string_view PrefixA, std::string_view PrefixB, bool A)
static SpecialIntrinsicKind consumeSpecialIntrinsicKind (std::string_view &MangledName)
static bool startsWithLocalScopePattern (std::string_view S)
static bool isTagType (std::string_view S)
static bool isCustomType (std::string_view S)
static bool isPointerType (std::string_view S)
static bool isArrayType (std::string_view S)
static bool isFunctionType (std::string_view S)
static FunctionRefQualifier demangleFunctionRefQualifier (std::string_view &MangledName)
static std::pair< Qualifiers, PointerAffinity > demanglePointerCVQualifiers (std::string_view &MangledName)
static NodeArrayNode * nodeListToNodeArray (ArenaAllocator &Arena, NodeList *Head, size_t Count)
static NamedIdentifierNode * synthesizeNamedIdentifier (ArenaAllocator &Arena, std::string_view Name)
static QualifiedNameNode * synthesizeQualifiedName (ArenaAllocator &Arena, IdentifierNode *Identifier)
static QualifiedNameNode * synthesizeQualifiedName (ArenaAllocator &Arena, std::string_view Name)
static VariableSymbolNode * synthesizeVariable (ArenaAllocator &Arena, TypeNode *Type, std::string_view VariableName)
static bool isRebasedHexDigit (char C)
static uint8_t rebasedHexDigitToNumber (char C)
static void writeHexDigit (char *Buffer, uint8_t Digit)
static void outputHex (OutputBuffer &OB, unsigned C)
static void outputEscapedChar (OutputBuffer &OB, unsigned C)
static unsigned countTrailingNullBytes (const uint8_t *StringBytes, int Length)
static unsigned countEmbeddedNulls (const uint8_t *StringBytes, unsigned Length)
static unsigned guessCharByteSize (const uint8_t *StringBytes, unsigned NumChars, uint64_t NumBytes)
static unsigned decodeMultiByteChar (const uint8_t *StringBytes, unsigned CharIndex, unsigned CharBytes)

consumeFront() [1/3]

bool consumeFront ( std::string_view & S, char C ) static

consumeFront() [2/3]

bool consumeFront ( std::string_view & S, std::string_view C ) static

consumeFront() [3/3]

bool consumeFront ( std::string_view & S, std::string_view PrefixA, std::string_view PrefixB, bool A ) static

consumeSpecialIntrinsicKind()

Definition at line 135 of file MicrosoftDemangle.cpp.

References consumeFront(), llvm::ms_demangle::DynamicAtexitDestructor, llvm::ms_demangle::DynamicInitializer, llvm::ms_demangle::LocalStaticGuard, llvm::ms_demangle::LocalStaticThreadGuard, llvm::ms_demangle::LocalVftable, llvm::ms_demangle::None, llvm::ms_demangle::RttiBaseClassArray, llvm::ms_demangle::RttiBaseClassDescriptor, llvm::ms_demangle::RttiClassHierarchyDescriptor, llvm::ms_demangle::RttiCompleteObjLocator, llvm::ms_demangle::RttiTypeDescriptor, llvm::ms_demangle::StringLiteralSymbol, llvm::ms_demangle::Typeof, llvm::ms_demangle::UdtReturning, llvm::ms_demangle::Vbtable, llvm::ms_demangle::VcallThunk, and llvm::ms_demangle::Vftable.

countEmbeddedNulls()

countTrailingNullBytes()

decodeMultiByteChar()

demangleFunctionRefQualifier()

demanglePointerCVQualifiers()

guessCharByteSize()

isArrayType()

bool isArrayType ( std::string_view S) static

isCustomType()

bool isCustomType ( std::string_view S) static

isFunctionType()

bool isFunctionType ( std::string_view S) static

isPointerType()

bool isPointerType ( std::string_view S) static

isRebasedHexDigit()

isTagType()

bool isTagType ( std::string_view S) static

nodeListToNodeArray()

outputEscapedChar()

outputHex()

rebasedHexDigitToNumber()

startsWith()

bool startsWith ( std::string_view S, std::string_view PrefixA, std::string_view PrefixB, bool A ) static

startsWithDigit()

bool startsWithDigit ( std::string_view S) static

startsWithLocalScopePattern()

bool startsWithLocalScopePattern ( std::string_view S) static

synthesizeNamedIdentifier()

synthesizeQualifiedName() [1/2]

synthesizeQualifiedName() [2/2]

synthesizeVariable()

writeHexDigit()