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

#include "llvm/Demangle/ItaniumDemangle.h"

Inheritance diagram for ManglingParser< Alloc >:
Inheritance 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 (std::string_view S)
 
bool consumeIf (char C)
 
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 InConstraintExpr
 
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 5943 of file ItaniumDemangle.h.


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