LLVM  14.0.0git
List of all members
ManglingParser< Alloc > Struct Template Reference

#include "llvm/Demangle/ItaniumDemangle.h"

Inheritance diagram for ManglingParser< Alloc >:
Inheritance graph
[legend]
Collaboration diagram for ManglingParser< Alloc >:
Collaboration graph
[legend]

Additional Inherited Members

- Public Types inherited from AbstractManglingParser< ManglingParser< Alloc >, Alloc >
using TemplateParamList = PODSmallVector< Node *, 8 >
 
- Public Member Functions inherited from AbstractManglingParser< ManglingParser< Alloc >, Alloc >
 AbstractManglingParser (const char *First_, const char *Last_)
 
ManglingParser< Alloc > & getDerived ()
 
void reset (const char *First_, const char *Last_)
 
Nodemake (Args &&... args)
 
NodeArray makeNodeArray (It begin, It end)
 
NodeArray popTrailingNodeArray (size_t FromPosition)
 
bool consumeIf (StringView S)
 
bool consumeIf (char C)
 
char consume ()
 
char look (unsigned Lookahead=0)
 
size_t numLeft () const
 
StringView parseNumber (bool AllowNegative=false)
 
Qualifiers parseCVQualifiers ()
 
bool parsePositiveInteger (size_t *Out)
 
StringView parseBareSourceName ()
 
bool parseSeqId (size_t *Out)
 
NodeparseSubstitution ()
 
NodeparseTemplateParam ()
 
NodeparseTemplateParamDecl ()
 
NodeparseTemplateArgs (bool TagTemplates=false)
 
NodeparseTemplateArg ()
 
NodeparseExpr ()
 Parse the <expr> production. More...
 
NodeparsePrefixExpr (StringView Kind)
 
NodeparseBinaryExpr (StringView Kind)
 
NodeparseIntegerLiteral (StringView Lit)
 
NodeparseExprPrimary ()
 
NodeparseFloatingLiteral ()
 
NodeparseFunctionParam ()
 
NodeparseNewExpr ()
 
NodeparseConversionExpr ()
 
NodeparseBracedExpr ()
 
NodeparseFoldExpr ()
 
NodeparsePointerToMemberConversionExpr ()
 
NodeparseSubobjectExpr ()
 
NodeparseType ()
 Parse the <type> production. More...
 
NodeparseFunctionType ()
 
NodeparseVectorType ()
 
NodeparseDecltype ()
 
NodeparseArrayType ()
 
NodeparsePointerToMemberType ()
 
NodeparseClassEnumType ()
 
NodeparseQualifiedType ()
 
NodeparseEncoding ()
 
bool parseCallOffset ()
 
NodeparseSpecialName ()
 
bool resolveForwardTemplateRefs (NameState &State)
 
NodeparseName (NameState *State=nullptr)
 Parse the <name> production> More...
 
NodeparseLocalName (NameState *State)
 
NodeparseOperatorName (NameState *State)
 
NodeparseUnqualifiedName (NameState *State)
 
NodeparseUnnamedTypeName (NameState *State)
 
NodeparseSourceName (NameState *State)
 
NodeparseUnscopedName (NameState *State)
 
NodeparseNestedName (NameState *State)
 
NodeparseCtorDtorName (Node *&SoFar, NameState *State)
 
NodeparseAbiTags (Node *N)
 
NodeparseUnresolvedName ()
 Parse the <unresolved-name> production. More...
 
NodeparseSimpleId ()
 
NodeparseBaseUnresolvedName ()
 
NodeparseUnresolvedType ()
 
NodeparseDestructorName ()
 
Nodeparse ()
 Top-level entry point into the parser. More...
 
- Public Attributes inherited from AbstractManglingParser< ManglingParser< Alloc >, Alloc >
const char * First
 
const char * Last
 
PODSmallVector< Node *, 32 > Names
 
PODSmallVector< Node *, 32 > Subs
 
TemplateParamList OuterTemplateParams
 
PODSmallVector< TemplateParamList *, 4 > TemplateParams
 
PODSmallVector< ForwardTemplateReference *, 4 > ForwardTemplateRefs
 
bool TryToParseTemplateArgs
 
bool PermitForwardTemplateReferences
 
size_t ParsingLambdaParamsAtLevel
 
unsigned NumSyntheticTemplateParameters [3]
 
Alloc ASTAllocator
 

Detailed Description

template<typename Alloc>
struct ManglingParser< Alloc >

Definition at line 5743 of file ItaniumDemangle.h.


The documentation for this struct was generated from the following file: