| Interface | Description |
|---|---|
| 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.
|
| ICPPASTAmbiguousTemplateArgument |
Place-holder in the AST for template arguments that are not yet understood.
|
| ICPPASTArrayDeclarator |
Array declarator for C++
|
| ICPPASTArraySubscriptExpression | |
| ICPPASTAttribute |
Represents a C++11 (ISO/IEC 14882:2011 7.6) attribute.
|
| 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.
|
| ICPPASTConstructorChainInitializer |
Represents a member initializer:
class X {
int a;
X();
};
X::X : a(0) {} // a(0) is 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. delete [] operand;
|
| ICPPASTElaboratedTypeSpecifier |
Elaborated types in C++ include classes.
|
| ICPPASTEnumerationSpecifier |
enum struct : unsigned int {...} |
| ICPPASTExplicitTemplateInstantiation |
This interface represents an explicit template instantiation.
|
| ICPPASTExpression |
Interface for c++ expressions.
|
| ICPPASTExpressionList | |
| ICPPASTFieldDeclarator |
Field declarator for c++.
|
| 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:
void func() try {
} catch (...) {
}
|
| ICPPASTIfStatement |
The 'if' statement including the optional else clause.
|
| ICPPASTInitializerClause |
C++ specific initializer clause.
|
| ICPPASTInitializerList |
Braced initializer list.
|
| ICPPASTLambdaExpression |
Lambda expression, introduced in C++11.
|
| ICPPASTLinkageSpecification |
This interface represents a linkage specification. e.g. extern "C" { ... }
|
| 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. namespace ABC { int* x; } namespace DEF = ABC;
|
| ICPPASTNamespaceDefinition |
This interface represents a namespace definition in C++.
|
| ICPPASTNameSpecifier |
AST node for elements of the qualifier in a qualified name.
|
| 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. &, used in a declarator.
|
| ICPPASTSimpleDeclSpecifier |
This interface represents a built-in type in C++.
|
| ICPPASTSimpleTypeConstructorExpression |
Functional cast expressions:
simple-type-specifier (expression-list?)
|
| ICPPASTSimpleTypeTemplateParameter |
This interface represents a simple type template parameter.
|
| ICPPASTStaticAssertDeclaration |
Models static assertions:
static_assert(false, "message"); |
| ICPPASTSwitchStatement | |
| ICPPASTTemplateDeclaration |
Template declaration.
|
| ICPPASTTemplatedTypeTemplateParameter |
This is a template template parameter as
V in
template<template<typename T> class V> class CT; |
| ICPPASTTemplateId | |
| ICPPASTTemplateParameter |
Base interface for all template parameters.
|
| ICPPASTTemplateSpecialization |
This interface represents a template specialization.
|
| ICPPASTTranslationUnit | |
| ICPPASTTryBlockStatement |
This interface represents the try block statement. try { //body } catch (Exc e )
{ // handler } catch ( ... ) { }
|
| ICPPASTTypeId |
Type ids in C++.
|
| ICPPASTTypeIdExpression | |
| ICPPASTTypenameExpression | Deprecated
Unified with
ICPPASTSimpleTypeConstructorExpression. |
| 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 | |
| ICPPDeferredFunction |
Represents a reference to a function which cannot be resolved
because an argument depends on a template parameter.
|
| ICPPDeferredTemplateInstance | Deprecated
use
ICPPDeferredClassInstance instead. |
| ICPPEnumeration |
C++ specific version of enumerations.
|
| ICPPEnumerationSpecialization | |
| ICPPEnumScope |
Interface for enumeration scopes.
|
| ICPPField | |
| ICPPFunction |
Binding for c++ functions.
|
| ICPPFunctionInstance |
This interface represents an instantiation of a function template.
|
| ICPPFunctionScope | |
| 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.
|
| 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 of a class or 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 |
| Class | Description |
|---|---|
| CPPASTVisitor | Deprecated
you can use
ASTVisitor, instead. |
| SemanticQueries |
This class exposes semantic queries about C++ code to clients such
as code analysis.
|
| Enum | Description |
|---|---|
| ICPPASTClassVirtSpecifier.SpecifierKind | |
| ICPPASTFunctionDeclarator.RefQualifier | |
| ICPPASTLambdaExpression.CaptureDefault |
The capture default can be by copy, by reference or unspecified.
|
| ICPPASTVirtSpecifier.SpecifierKind | |
| ICPPUnaryTypeTransformation.Operator |
Identifies the type transformation operator being applied.
|
Copyright (c) IBM Corp. and others 2004, 2014. All Rights Reserved.