LLVM: ManglingParser< Alloc > Struct Template Reference (original) (raw)

#include "[llvm/Demangle/ItaniumDemangle.h](ItaniumDemangle%5F8h%5Fsource.html)"

Inheritance diagram for ManglingParser< Alloc >:

Additional Inherited Members
Public Types inherited from AbstractManglingParser< ManglingParser< Alloc >, Alloc >
using TemplateParamList
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_)
Node * make (Args &&... args)
NodeArray makeNodeArray (It begin, It end)
NodeArray popTrailingNodeArray (size_t FromPosition)
bool consumeIf (std::string_view S)
char consume ()
char look (unsigned Lookahead=0) const
size_t numLeft () const
std::string_view parseNumber (bool AllowNegative=false)
Qualifiers parseCVQualifiers ()
bool parsePositiveInteger (size_t *Out)
std::string_view parseBareSourceName ()
bool parseSeqId (size_t *Out)
Node * parseSubstitution ()
Node * parseTemplateParam ()
Node * parseTemplateParamDecl (TemplateParamList *Params)
Node * parseTemplateArgs (bool TagTemplates=false)
Node * parseTemplateArg ()
bool isTemplateParamDecl ()
Node * parseExpr ()
Parse the production.
Node * parsePrefixExpr (std::string_view Kind, Node::Prec Prec)
Node * parseBinaryExpr (std::string_view Kind, Node::Prec Prec)
Node * parseIntegerLiteral (std::string_view Lit)
Node * parseExprPrimary ()
Node * parseFloatingLiteral ()
Node * parseFunctionParam ()
Node * parseConversionExpr ()
Node * parseBracedExpr ()
Node * parseFoldExpr ()
Node * parsePointerToMemberConversionExpr (Node::Prec Prec)
Node * parseSubobjectExpr ()
Node * parseConstraintExpr ()
Node * parseRequiresExpr ()
Node * parseType ()
Parse the production.
Node * parseFunctionType ()
Node * parseVectorType ()
Node * parseDecltype ()
Node * parseArrayType ()
Node * parsePointerToMemberType ()
Node * parseClassEnumType ()
Node * parseQualifiedType ()
Node * parseEncoding (bool ParseParams=true)
bool parseCallOffset ()
Node * parseSpecialName ()
bool resolveForwardTemplateRefs (NameState &State)
Node * parseName (NameState *State=nullptr)
Parse the production>
Node * parseLocalName (NameState *State)
Node * parseOperatorName (NameState *State)
bool parseModuleNameOpt (ModuleName *&Module)
Node * parseUnqualifiedName (NameState *State, Node *Scope, ModuleName *Module)
Node * parseUnnamedTypeName (NameState *State)
Node * parseSourceName (NameState *State)
Node * parseUnscopedName (NameState *State, bool *isSubstName)
Node * parseNestedName (NameState *State)
Node * parseCtorDtorName (Node *&SoFar, NameState *State)
Node * parseAbiTags (Node *N)
const OperatorInfo * parseOperatorEncoding ()
Node * parseUnresolvedName (bool Global)
Parse the production.
Node * parseSimpleId ()
Node * parseBaseUnresolvedName ()
Node * parseUnresolvedType ()
Node * parseDestructorName ()
Node * parse (bool ParseParams=true)
Top-level entry point into the parser.
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
bool HasIncompleteTemplateParameterTracking
size_t ParsingLambdaParamsAtLevel
unsigned NumSyntheticTemplateParameters [3]
Alloc ASTAllocator
Static Public Attributes inherited from AbstractManglingParser< ManglingParser< Alloc >, Alloc >
static const OperatorInfo Ops []
static const size_t NumOps

Detailed Description


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