LLVM  8.0.1
List of all members
llvm::itanium_demangle::ManglingParser< Alloc > Struct Template Reference

#include "llvm/Demangle/ItaniumDemangle.h"

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

Additional Inherited Members

- Public Member Functions inherited from llvm::itanium_demangle::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 ()
 
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 ()
 
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 llvm::itanium_demangle::AbstractManglingParser< ManglingParser< Alloc >, Alloc >
const charFirst
 
const charLast
 
PODSmallVector< Node *, 32 > Names
 
PODSmallVector< Node *, 32 > Subs
 
PODSmallVector< Node *, 8 > TemplateParams
 
PODSmallVector< ForwardTemplateReference *, 4 > ForwardTemplateRefs
 
bool TryToParseTemplateArgs
 
bool PermitForwardTemplateReferences
 
bool ParsingLambdaParams
 
Alloc ASTAllocator
 

Detailed Description

template<typename Alloc>
struct llvm::itanium_demangle::ManglingParser< Alloc >

Definition at line 5176 of file ItaniumDemangle.h.


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