LLVM 22.0.0git
ManglingParser< Alloc > Struct Template Reference

#include "llvm/Demangle/ItaniumDemangle.h"

Inheritance diagram for ManglingParser< Alloc >:
[legend]

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_)
Nodemake (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)
NodeparseSubstitution ()
NodeparseTemplateParam ()
NodeparseTemplateParamDecl (TemplateParamList *Params)
NodeparseTemplateArgs (bool TagTemplates=false)
NodeparseTemplateArg ()
bool isTemplateParamDecl ()
NodeparseExpr ()
 Parse the <expression> production.
NodeparsePrefixExpr (std::string_view Kind, Node::Prec Prec)
NodeparseBinaryExpr (std::string_view Kind, Node::Prec Prec)
NodeparseIntegerLiteral (std::string_view Lit)
NodeparseExprPrimary ()
NodeparseFloatingLiteral ()
NodeparseFunctionParam ()
NodeparseConversionExpr ()
NodeparseBracedExpr ()
NodeparseFoldExpr ()
NodeparsePointerToMemberConversionExpr (Node::Prec Prec)
NodeparseSubobjectExpr ()
NodeparseConstraintExpr ()
NodeparseRequiresExpr ()
NodeparseType ()
 Parse the <type> production.
NodeparseFunctionType ()
NodeparseVectorType ()
NodeparseDecltype ()
NodeparseArrayType ()
NodeparsePointerToMemberType ()
NodeparseClassEnumType ()
NodeparseQualifiedType ()
NodeparseEncoding (bool ParseParams=true)
bool parseCallOffset ()
NodeparseSpecialName ()
bool resolveForwardTemplateRefs (NameState &State)
NodeparseName (NameState *State=nullptr)
 Parse the <name> production>
NodeparseLocalName (NameState *State)
NodeparseOperatorName (NameState *State)
bool parseModuleNameOpt (ModuleName *&Module)
NodeparseUnqualifiedName (NameState *State, Node *Scope, ModuleName *Module)
NodeparseUnnamedTypeName (NameState *State)
NodeparseSourceName (NameState *State)
NodeparseUnscopedName (NameState *State, bool *isSubstName)
NodeparseNestedName (NameState *State)
NodeparseCtorDtorName (Node *&SoFar, NameState *State)
NodeparseAbiTags (Node *N)
const OperatorInfo * parseOperatorEncoding ()
NodeparseUnresolvedName (bool Global)
 Parse the <unresolved-name> production.
NodeparseSimpleId ()
NodeparseBaseUnresolvedName ()
NodeparseUnresolvedType ()
NodeparseDestructorName ()
Nodeparse (bool ParseParams=true)
 Top-level entry point into the parser.
Public Attributes inherited from AbstractManglingParser< ManglingParser< Alloc >, Alloc >
const charFirst
const charLast
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

template<typename Alloc>
struct ManglingParser< Alloc >

Definition at line 6195 of file ItaniumDemangle.h.


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