| ICPPAliasTemplate |
Represents an alias template (14.5.7).
|
| ICPPAliasTemplateInstance |
Represents an instance of an alias template (14.5.7).
|
| ICPPASTAliasDeclaration |
Represents a C++ alias declaration.
|
| ICPPASTAlignmentSpecifier |
A C++ alignment-specifier.
|
| ICPPASTAmbiguousTemplateArgument |
Place-holder in the AST for template arguments that are not yet understood.
|
| ICPPASTArrayDeclarator |
Array declarator for C++
|
| ICPPASTArrayDesignator |
Array designator, e.g.
|
| ICPPASTArraySubscriptExpression |
|
| ICPPASTAttribute |
Represents a C++11 (ISO/IEC 14882:2011 7.6) attribute.
|
| ICPPASTAttributeList |
Represents a C++11 (ISO/IEC 14882:2011 7.6.1 [dcl.attr.grammar]) attribute specifier
of the form [[ attribute-list ]].
|
| ICPPASTBinaryExpression |
C++ adds a few more binary expressions over C.
|
| ICPPASTCapture |
Capture for a lambda expression, introduced in C++0x.
|
| ICPPASTCastExpression |
C++ adds in additional cast-style expressions.
|
| ICPPASTCatchHandler |
Catch handler used for try block statements or for functions with try block.
|
| ICPPASTClassVirtSpecifier |
A class-virt-specifier after a class name.
|
| ICPPASTCompositeTypeSpecifier |
|
| ICPPASTCompositeTypeSpecifier.ICPPASTBaseSpecifier |
Base specifiers are where a class expresses from whom it inherits.
|
| ICPPASTCompoundStatement |
Represents a block of statements in C++.
|
| ICPPASTConstructorChainInitializer |
Represents a member initializer:
|
| ICPPASTConstructorInitializer |
Represents a potentially empty list of initializers in parenthesis: ( initializer-list? )
|
| ICPPASTConversionName |
This interface represents a C++ conversion member function.
|
| ICPPASTDeclarator |
Declarator for c++.
|
| ICPPASTDeclSpecifier |
C++ adds additional modifiers and types for decl specifier sequence.
|
| ICPPASTDecltypeSpecifier |
C++ AST node for decltype-specifiers.
|
| ICPPASTDeleteExpression |
This interface represents a delete expression.
|
| ICPPASTDesignatedInitializer |
This interface represents a designated initializer,
e.g.
|
| ICPPASTDesignator |
Base interface for all C-style designators.
|
| ICPPASTElaboratedTypeSpecifier |
Elaborated types specifier in C++ [dcl.type.elab].
|
| ICPPASTEnumerationSpecifier |
enum struct : unsigned int {...}
|
| ICPPASTExplicitTemplateInstantiation |
This interface represents an explicit template instantiation.
|
| ICPPASTExpression |
Interface for C++ expressions.
|
| ICPPASTExpressionList |
|
| ICPPASTFieldDeclarator |
Field declarator for c++.
|
| ICPPASTFieldDesignator |
Specific designator that represents a field reference.
|
| ICPPASTFieldReference |
Certain field references in C++ require the use the keyword template to
specify the parse.
|
| ICPPASTForStatement |
The C++ 'for' statement.
|
| ICPPASTFunctionCallExpression |
|
| ICPPASTFunctionDeclarator |
C++ adds a few things to function declarators.
|
| ICPPASTFunctionDefinition |
In c++ the a function definition for a constructor may contain member initializers.
|
| ICPPASTFunctionTryBlockDeclarator |
Deprecated.
|
| ICPPASTFunctionWithTryBlock |
Models a function defined with a try block, which is a function definition:
|
| ICPPASTIfStatement |
The 'if' statement including the optional else clause.
|
| ICPPASTInitCapture |
Init capture for a lambda expression, introduced in C++14.
|
| ICPPASTInitializerClause |
C++ specific initializer clause.
|
| ICPPASTInitializerList |
Braced initializer list.
|
| ICPPASTLambdaExpression |
Lambda expression, introduced in C++11.
|
| ICPPASTLinkageSpecification |
This interface represents a linkage specification.
|
| ICPPASTLiteralExpression |
C++ adds additional literal types to primary expression.
|
| ICPPASTName |
AST node for names in C++ translation units.
|
| ICPPASTNamedTypeSpecifier |
C++ adds the capability of qualifying a named type specifier w/the keyword
typename.
|
| ICPPASTNamespaceAlias |
This interface represents a namespace alias in C++,
e.g.
|
| ICPPASTNamespaceDefinition |
This interface represents a namespace definition in C++.
|
| ICPPASTNameSpecifier |
AST node for elements of the qualifier in a qualified name.
|
| ICPPASTNaryTypeIdExpression |
A type-id expression with any number of arguments.
|
| ICPPASTNewExpression |
This interface represents a new expression.
|
| ICPPASTOperatorName |
This interface represents a C++ overloaded operator member function name.
|
| ICPPASTPackExpandable |
Interface for nodes that can potentially be pack-expansions.
|
| ICPPASTPackExpansionExpression |
Pack expansion as it can occur as an element in an expression-lists or as a
non-type template argument.
|
| ICPPASTParameterDeclaration |
|
| ICPPASTPointerToMember |
This is a pointer to member pointer operator for declarators.
|
| ICPPASTQualifiedName |
This interface is a qualified name in C++.
|
| ICPPASTRangeBasedForStatement |
Represents a range-based 'for' loop.
|
| ICPPASTReferenceOperator |
This is C++'s reference operator, i.e.
|
| ICPPASTSimpleDeclSpecifier |
This interface represents a built-in type in C++.
|
| ICPPASTSimpleTypeConstructorExpression |
Functional cast expressions:
simple-type-specifier (expression-list?)
simple-type-specifier braced-init-list
typename-specifier (expression-list?)
typename-specifier braced-init-list
|
| ICPPASTSimpleTypeTemplateParameter |
This interface represents a simple type template parameter.
|
| ICPPASTStaticAssertDeclaration |
Models static assertions: static_assert(false, "message");
|
| ICPPASTStructuredBindingDeclaration |
This is a structured binding declaration which contains a sequence names,
in square brackets, that decompose an initializer.
|
| ICPPASTSwitchStatement |
|
| ICPPASTTemplateDeclaration |
Template declaration.
|
| ICPPASTTemplatedTypeTemplateParameter |
This is a template template parameter as V in
template<template<typename T> class V> class CT;
|
| ICPPASTTemplateId |
|
| ICPPASTTemplateName |
This interface represents template names which use the template disambiguator
keyword.
|
| ICPPASTTemplateParameter |
Base interface for all template parameters.
|
| ICPPASTTemplateSpecialization |
This interface represents a template specialization.
|
| ICPPASTTranslationUnit |
|
| ICPPASTTryBlockStatement |
This interface represents the try block statement.
|
| ICPPASTTypeId |
Type ids in C++.
|
| ICPPASTTypeIdExpression |
|
| ICPPASTTypenameExpression |
Deprecated.
|
| ICPPASTTypeTransformationSpecifier |
A decl-specifier that represents the application of an intrinsic type
transformation operator like __underlying_type(T).
|
| ICPPASTUnaryExpression |
|
| ICPPASTUsingDeclaration |
This interface represents a using declaration.
|
| ICPPASTUsingDirective |
This interface represents a C++ using directive.
|
| ICPPASTVirtSpecifier |
A virt-specifier at the end of a function declaration.
|
| ICPPASTVisibilityLabel |
C++ allows for visibility labels to be mixed with declarations in class specifiers.
|
| ICPPASTVisitor |
Interface for visitors to visit c-specific nodes.
|
| ICPPASTWhileStatement |
This interface accommodates C++ allows for broader while loop syntax.
|
| ICPPBase |
Represents the relationship between a class and one of its base classes.
|
| ICPPBasicType |
|
| ICPPBinding |
|
| ICPPBlockScope |
|
| ICPPClassScope |
Interface for class scopes.
|
| ICPPClassSpecialization |
Specializations of all sorts of class types.
|
| ICPPClassTemplate |
|
| ICPPClassTemplatePartialSpecialization |
This interface represents a class template partial specialization.
|
| ICPPClassTemplatePartialSpecializationSpecialization |
Interface for specializations of partial specializations.
|
| ICPPClassType |
Represents a C++ class.
|
| ICPPConstructor |
|
| ICPPConstructorSpecialization |
Binding for specializations of constructors.
|
| ICPPDeferredFunction |
Represents a reference to a function which cannot be resolved
because an argument depends on a template parameter.
|
| ICPPDeferredTemplateInstance |
Deprecated.
|
| ICPPEnumeration |
C++ specific version of enumerations.
|
| ICPPEnumerationSpecialization |
|
| ICPPEnumScope |
Interface for enumeration scopes.
|
| ICPPField |
|
| ICPPFieldTemplate |
A field template.
|
| ICPPFunction |
Binding for c++ functions.
|
| ICPPFunctionInstance |
This interface represents an instantiation or an explicit specialization of a function template.
|
| ICPPFunctionScope |
|
| ICPPFunctionSpecialization |
Binding for specializations of functions.
|
| ICPPFunctionTemplate |
Interface for function templates
|
| ICPPFunctionType |
|
| ICPPMember |
Represents a member of a class.
|
| ICPPMethod |
Base interface for methods, also used for constructors.
|
| ICPPMethodSpecialization |
Specialization of a method.
|
| ICPPNamespace |
This interface represents a C++ namespace
|
| ICPPNamespaceAlias |
|
| ICPPNamespaceScope |
A namespace scope is either a block-scope or a namespace-scope or global scope.
|
| ICPPNodeFactory |
Factory for AST nodes for the C++ programming language.
|
| ICPPParameter |
|
| ICPPParameterPackType |
A parameter pack is not actually a type, however we model it as such in order
to be able to represent function-types that contain parameter packs.
|
| ICPPPartiallySpecializable |
Something that can be partially specialized.
|
| ICPPPartialSpecialization |
A partially specialized variable or class template.
|
| ICPPPointerToMemberType |
|
| ICPPReferenceType |
|
| ICPPScope |
|
| ICPPSpecialization |
For an instantiation of a class template, the members of that instantiation will be
specializations of the members of the original class template.
|
| ICPPTemplateArgument |
Models the value of a template parameter or for the argument of a template-id.
|
| ICPPTemplateDefinition |
Base interface for all template definitions including explicit (partial) specializations.
|
| ICPPTemplateInstance |
This interface represents an instantiation or an explicit specialization of a class or a function template.
|
| ICPPTemplateNonTypeParameter |
Interface for template non type parameters.
|
| ICPPTemplateParameter |
Base interface for all template parameters (non-type, type and template).
|
| ICPPTemplateParameterMap |
Models the mapping of template parameters to values, or pack-expansions.
|
| ICPPTemplateScope |
A separate template scope is used for each template declaration.
|
| ICPPTemplateTemplateParameter |
Template parameters of type template.
|
| ICPPTemplateTypeParameter |
|
| ICPPTypeSpecialization |
A common interface for ICPPClassSpecialization and ICPPEnumerationSpecialization.
|
| ICPPUnaryTypeTransformation |
A type used to represent the result of applying an unary
type transformation operator like __underlying_type(T).
|
| ICPPUsingDeclaration |
A using declaration introduces a name into the declarative region in which
it appears, that name is a synonym of some entity declared elsewhere
The using declaration is both a declaration of a new binding and a reference to a
previously declared binding
|
| ICPPUsingDirective |
Interface to model using directives.
|
| ICPPVariable |
|
| ICPPVariableInstance |
Represents an instantiation or an explicit specialization of a variable template.
|
| ICPPVariableTemplate |
A variable template.
|
| ICPPVariableTemplatePartialSpecialization |
Partial specialization of a variable template.
|