Enum clang::EntityKind
[−]
[src]
pub enum EntityKind { UnexposedDecl, StructDecl, UnionDecl, ClassDecl, EnumDecl, FieldDecl, EnumConstantDecl, FunctionDecl, VarDecl, ParmDecl, ObjCInterfaceDecl, ObjCCategoryDecl, ObjCProtocolDecl, ObjCPropertyDecl, ObjCIvarDecl, ObjCInstanceMethodDecl, ObjCClassMethodDecl, ObjCImplementationDecl, ObjCCategoryImplDecl, TypedefDecl, Method, Namespace, LinkageSpec, Constructor, Destructor, ConversionFunction, TemplateTypeParameter, NonTypeTemplateParameter, TemplateTemplateParameter, FunctionTemplate, ClassTemplate, ClassTemplatePartialSpecialization, NamespaceAlias, UsingDirective, UsingDeclaration, TypeAliasDecl, ObjCSynthesizeDecl, ObjCDynamicDecl, AccessSpecifier, ObjCSuperClassRef, ObjCProtocolRef, ObjCClassRef, TypeRef, BaseSpecifier, TemplateRef, NamespaceRef, MemberRef, LabelRef, OverloadedDeclRef, VariableRef, UnexposedExpr, DeclRefExpr, MemberRefExpr, CallExpr, ObjCMessageExpr, BlockExpr, IntegerLiteral, FloatingLiteral, ImaginaryLiteral, StringLiteral, CharacterLiteral, ParenExpr, UnaryOperator, ArraySubscriptExpr, BinaryOperator, CompoundAssignOperator, ConditionalOperator, CStyleCastExpr, CompoundLiteralExpr, InitListExpr, AddrLabelExpr, StmtExpr, GenericSelectionExpr, GNUNullExpr, StaticCastExpr, DynamicCastExpr, ReinterpretCastExpr, ConstCastExpr, FunctionalCastExpr, TypeidExpr, BoolLiteralExpr, NullPtrLiteralExpr, ThisExpr, ThrowExpr, NewExpr, DeleteExpr, UnaryExpr, ObjCStringLiteral, ObjCEncodeExpr, ObjCSelectorExpr, ObjCProtocolExpr, ObjCBridgedCastExpr, PackExpansionExpr, SizeOfPackExpr, LambdaExpr, ObjCBoolLiteralExpr, ObjCSelfExpr, UnexposedStmt, LabelStmt, CompoundStmt, CaseStmt, DefaultStmt, IfStmt, SwitchStmt, WhileStmt, DoStmt, ForStmt, GotoStmt, IndirectGotoStmt, ContinueStmt, BreakStmt, ReturnStmt, AsmStmt, ObjCAtTryStmt, ObjCAtCatchStmt, ObjCAtFinallyStmt, ObjCAtThrowStmt, ObjCAtSynchronizedStmt, ObjCAutoreleasePoolStmt, ObjCForCollectionStmt, CatchStmt, TryStmt, ForRangeStmt, SehTryStmt, SehExceptStmt, SehFinallyStmt, SehLeaveStmt, MsAsmStmt, NullStmt, DeclStmt, OmpParallelDirective, OmpSimdDirective, OmpForDirective, OmpSectionsDirective, OmpSectionDirective, OmpSingleDirective, OmpParallelForDirective, OmpParallelSectionsDirective, OmpTaskDirective, OmpMasterDirective, OmpCriticalDirective, OmpTaskyieldDirective, OmpBarrierDirective, OmpTaskwaitDirective, OmpFlushDirective, OmpOrderedDirective, OmpAtomicDirective, OmpForSimdDirective, OmpParallelForSimdDirective, OmpTargetDirective, OmpTeamsDirective, OmpTaskgroupDirective, OmpCancellationPointDirective, OmpCancelDirective, TranslationUnit, UnexposedAttr, IbActionAttr, IbOutletAttr, IbOutletCollectionAttr, FinalAttr, OverrideAttr, AnnotateAttr, AsmLabelAttr, PackedAttr, PureAttr, ConstAttr, NoDuplicateAttr, CudaConstantAttr, CudaDeviceAttr, CudaGlobalAttr, CudaHostAttr, CudaSharedAttr, PreprocessingDirective, MacroDefinition, MacroExpansion, InclusionDirective, ModuleImportDecl, OverloadCandidate, }
Indicates the categorization of an AST entity.
Variants
UnexposedDecl
A declaration whose specific type is not exposed via this interface.
StructDecl
A C or C++ struct.
UnionDecl
A C or C++ union.
ClassDecl
A C++ class.
EnumDecl
An enum.
FieldDecl
A C field or C++ non-static data member in a struct, union, or class.
EnumConstantDecl
An enum constant.
FunctionDecl
A function.
VarDecl
A variable.
ParmDecl
A parameter.
ObjCInterfaceDecl
An Objective-C @interface
.
ObjCCategoryDecl
An Objective-C @interface
for a category.
ObjCProtocolDecl
An Objective-C @protocol
declaration.
ObjCPropertyDecl
An Objective-C @property
declaration.
ObjCIvarDecl
An Objective-C instance variable.
ObjCInstanceMethodDecl
An Objective-C instance method.
ObjCClassMethodDecl
An Objective-C class method.
ObjCImplementationDecl
An Objective-C @implementation
.
ObjCCategoryImplDecl
An Objective-C @implementation
for a category.
TypedefDecl
A typedef.
Method
A C++ method.
Namespace
A C++ namespace.
LinkageSpec
A linkage specification (e.g., extern "C"
).
Constructor
A C++ constructor.
Destructor
A C++ destructor.
ConversionFunction
A C++ conversion function.
TemplateTypeParameter
A C++ template type parameter.
NonTypeTemplateParameter
A C++ template non-type parameter.
TemplateTemplateParameter
A C++ template template parameter.
FunctionTemplate
A C++ function template.
ClassTemplate
A C++ class template.
ClassTemplatePartialSpecialization
A C++ class template partial specialization.
NamespaceAlias
A C++ namespace alias declaration.
UsingDirective
A C++ using directive.
UsingDeclaration
A C++ using declaration.
TypeAliasDecl
A C++ type alias declaration.
ObjCSynthesizeDecl
An Objective-C @synthesize
definition.
ObjCDynamicDecl
An Objective-C @dynamic
definition.
AccessSpecifier
An access specifier.
ObjCSuperClassRef
A reference to a super class in Objective-C.
ObjCProtocolRef
A reference to a protocol in Objective-C.
ObjCClassRef
A reference to a class in Objective-C.
TypeRef
A reference to a type declaration.
BaseSpecifier
A base class specifier.
TemplateRef
A reference to a class template, function template, template template parameter, or class template partial specialization.
NamespaceRef
A reference to a namespace or namespace alias.
MemberRef
A reference to a member of a struct, union, or class that occurs in some non-expression context.
LabelRef
A reference to a labeled statement.
OverloadedDeclRef
A reference to a set of overloaded functions or function templates that has not yet been resolved to a specific function or function template.
VariableRef
A reference to a variable that occurs in some non-expression context.
UnexposedExpr
An expression whose specific kind is not exposed via this interface.
DeclRefExpr
An expression that refers to some value declaration, such as a function or enumerator.
MemberRefExpr
An expression that refers to the member of a struct, union, or class.
CallExpr
An expression that calls a function.
ObjCMessageExpr
An expression that sends a message to an Objective-C object or class.
BlockExpr
An expression that represents a block literal.
IntegerLiteral
An integer literal.
FloatingLiteral
A floating point number literal.
ImaginaryLiteral
An imaginary number literal.
StringLiteral
A string literal.
CharacterLiteral
A character literal.
ParenExpr
A parenthesized expression.
UnaryOperator
Any unary expression other than sizeof
and alignof
.
ArraySubscriptExpr
An array subscript expression ([C99 6.5.2.1]
).
BinaryOperator
A built-in binary expression (e.g., x + y
).
CompoundAssignOperator
A compound assignment expression (e.g., x += y
).
ConditionalOperator
A ternary expression.
CStyleCastExpr
An explicit cast in C or a C-style cast in C++.
CompoundLiteralExpr
A compound literal expression ([C99 6.5.2.5]
).
InitListExpr
A C or C++ initializer list.
AddrLabelExpr
A GNU address of label expression.
StmtExpr
A GNU statement expression.
GenericSelectionExpr
A C11 generic selection expression.
GNUNullExpr
A GNU __null
expression.
StaticCastExpr
A C++ static_cast<>
expression.
DynamicCastExpr
A C++ dynamic_cast<>
expression.
ReinterpretCastExpr
A C++ reinterpret_cast<>
expression.
ConstCastExpr
A C++ const_cast<>
expression.
FunctionalCastExpr
A C++ cast that uses "function" notation (e.g., int(0.5)
).
TypeidExpr
A C++ typeid
expression.
BoolLiteralExpr
A C++ boolean literal.
NullPtrLiteralExpr
A C++ nullptr
exrepssion.
ThisExpr
A C++ this
expression.
ThrowExpr
A C++ throw
expression.
NewExpr
A C++ new
expression.
DeleteExpr
A C++ delete
expression.
UnaryExpr
A unary expression.
ObjCStringLiteral
An Objective-C string literal.
ObjCEncodeExpr
An Objective-C @encode
expression.
ObjCSelectorExpr
An Objective-C @selector
expression.
ObjCProtocolExpr
An Objective-C @protocol
expression.
ObjCBridgedCastExpr
An Objective-C bridged cast expression.
PackExpansionExpr
A C++11 parameter pack expansion expression.
SizeOfPackExpr
A C++11 sizeof...
expression.
LambdaExpr
A C++11 lambda expression.
ObjCBoolLiteralExpr
An Objective-C boolean literal.
ObjCSelfExpr
An Objective-C self
expression.
UnexposedStmt
A statement whose specific kind is not exposed via this interface.
LabelStmt
A labelled statement in a function.
CompoundStmt
A group of statements (e.g., a function body).
CaseStmt
A case
statement.
DefaultStmt
A default
statement.
IfStmt
An if
statement.
SwitchStmt
A switch
statement.
WhileStmt
A while
statement.
DoStmt
A do
statement.
ForStmt
A for
statement.
GotoStmt
A goto
statement.
IndirectGotoStmt
An indirect goto
statement.
ContinueStmt
A continue
statement.
BreakStmt
A break
statement.
ReturnStmt
A return
statement.
AsmStmt
An inline assembly statement.
ObjCAtTryStmt
An Objective-C @try
-@catch
-@finally
statement.
ObjCAtCatchStmt
An Objective-C @catch
statement.
ObjCAtFinallyStmt
An Objective-C @finally
statement.
ObjCAtThrowStmt
An Objective-C @throw
statement.
ObjCAtSynchronizedStmt
An Objective-C @synchronized
statement.
ObjCAutoreleasePoolStmt
An Objective-C autorelease pool statement.
ObjCForCollectionStmt
An Objective-C collection statement.
CatchStmt
A C++ catch statement.
TryStmt
A C++ try statement.
ForRangeStmt
A C++11 range-based for statement.
SehTryStmt
A Windows Structured Exception Handling __try
statement.
SehExceptStmt
A Windows Structured Exception Handling __except
statement.
SehFinallyStmt
A Windows Structured Exception Handling __finally
statement.
SehLeaveStmt
A Windows Structured Exception Handling __leave
statement.
MsAsmStmt
A Microsoft inline assembly statement.
NullStmt
A null statement.
DeclStmt
An adaptor for mixing declarations with statements and expressions.
OmpParallelDirective
An OpenMP parallel directive.
OmpSimdDirective
An OpenMP SIMD directive.
OmpForDirective
An OpenMP for directive.
OmpSectionsDirective
An OpenMP sections directive.
OmpSectionDirective
An OpenMP section directive.
OmpSingleDirective
An OpenMP single directive.
OmpParallelForDirective
An OpenMP parallel for directive.
OmpParallelSectionsDirective
An OpenMP parallel sections directive.
OmpTaskDirective
An OpenMP task directive.
OmpMasterDirective
An OpenMP master directive.
OmpCriticalDirective
An OpenMP critical directive.
OmpTaskyieldDirective
An OpenMP taskyield directive.
OmpBarrierDirective
An OpenMP barrier directive.
OmpTaskwaitDirective
An OpenMP taskwait directive.
OmpFlushDirective
An OpenMP flush directive.
OmpOrderedDirective
An OpenMP ordered directive.
OmpAtomicDirective
An OpenMP atomic directive.
OmpForSimdDirective
An OpenMP for SIMD directive.
OmpParallelForSimdDirective
An OpenMP parallel for SIMD directive.
OmpTargetDirective
An OpenMP target directive.
OmpTeamsDirective
An OpenMP teams directive.
OmpTaskgroupDirective
An OpenMP taskgroup directive.
OmpCancellationPointDirective
An OpenMP cancellation point directive.
OmpCancelDirective
An OpenMP cancel directive.
TranslationUnit
The top-level AST entity which acts as the root for the other entitys.
UnexposedAttr
An attribute whose specific kind is not exposed via this interface.
IbActionAttr
An attribute applied to an Objective-C IBAction.
IbOutletAttr
An attribute applied to an Objective-C IBOutlet.
IbOutletCollectionAttr
An attribute applied to an Objective-C IBOutletCollection.
FinalAttr
The final
attribute.
OverrideAttr
The override
attribute.
AnnotateAttr
An annotation attribute.
AsmLabelAttr
An ASM label attribute.
PackedAttr
An attribute that requests for packed records (e.g., __attribute__ ((__packed__))
).
PureAttr
An attribute that asserts a function has no side effects (e.g., __attribute__((pure))
).
ConstAttr
The const
attribute.
NoDuplicateAttr
An attribute that allows calls to a function to be duplicated by the optimized
(e.g., __attribute__((noduplicate))
).
CudaConstantAttr
A CUDA constant attribute.
CudaDeviceAttr
A CUDA device attribute.
CudaGlobalAttr
A CUDA global attribute.
CudaHostAttr
A CUDA host attribute.
A CUDA shared attribute.
PreprocessingDirective
A preprocessing directive.
MacroDefinition
A macro definition.
MacroExpansion
A macro expansion.
InclusionDirective
An inclusion directive.
ModuleImportDecl
A module import declaration.
OverloadCandidate
A single overload in a set of overloads.
Trait Implementations
impl Hash for EntityKind
[src]
fn hash<__H: Hasher>(&self, __arg_0: &mut __H)
Feeds this value into the state given, updating the hasher as necessary.
fn hash_slice<H>(data: &[Self], state: &mut H) where H: Hasher
1.3.0
Feeds a slice of this type into the state provided.
impl Eq for EntityKind
[src]
impl PartialEq for EntityKind
[src]
fn eq(&self, __arg_0: &EntityKind) -> bool
This method tests for self
and other
values to be equal, and is used by ==
. Read more
fn ne(&self, other: &Rhs) -> bool
1.0.0
This method tests for !=
.
impl Debug for EntityKind
[src]
impl Clone for EntityKind
[src]
fn clone(&self) -> EntityKind
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0
Performs copy-assignment from source
. Read more