The Psyche Project
|
The AmbiguousTypedefNameOrIdentifierExpressionSyntax class. More...
#include <SyntaxNodes_Declarations.h>
Public Member Functions | |
const SpecifierSyntax * | typedefName () const |
const ExpressionSyntax * | identifier () const |
Private Member Functions | |
AST_CHILD_LST2 (typedefName_, identExpr_) | |
Private Member Functions inherited from psy::C::SyntaxNode | |
SyntaxNode (const SyntaxNode &other)=delete | |
SyntaxNode & | operator= (const SyntaxNode &other)=delete |
const SyntaxTree * | syntaxTree () const |
SyntaxKind | kind () const |
bool | isKind (SyntaxKind k) |
SyntaxToken | firstToken () const |
SyntaxToken | lastToken () const |
virtual TranslationUnitSyntax * | asTranslationUnit () |
virtual const TranslationUnitSyntax * | asTranslationUnit () const |
virtual DeclarationSyntax * | asDeclaration () |
virtual const DeclarationSyntax * | asDeclaration () const |
virtual EmptyDeclarationSyntax * | asEmptyDeclaration () |
virtual const EmptyDeclarationSyntax * | asEmptyDeclaration () const |
virtual NamedDeclarationSyntax * | asNamedDeclaration () |
virtual const NamedDeclarationSyntax * | asNamedDeclaration () const |
virtual TypeDeclarationSyntax * | asTypeDeclaration () |
virtual const TypeDeclarationSyntax * | asTypeDeclaration () const |
virtual TagDeclarationSyntax * | asTagDeclaration () |
virtual const TagDeclarationSyntax * | asTagDeclaration () const |
virtual StructOrUnionDeclarationSyntax * | asStructOrUnionDeclaration () |
virtual const StructOrUnionDeclarationSyntax * | asStructOrUnionDeclaration () const |
virtual EnumDeclarationSyntax * | asEnumDeclaration () |
virtual const EnumDeclarationSyntax * | asEnumDeclaration () const |
virtual EnumMemberDeclarationSyntax * | asEnumMemberDeclaration () |
virtual const EnumMemberDeclarationSyntax * | asEnumMemberDeclaration () const |
virtual ValueDeclarationSyntax * | asValueDeclaration () |
virtual const ValueDeclarationSyntax * | asValueDeclaration () const |
virtual DeclaratorDeclarationSyntax * | asDeclaratorDeclaration () |
virtual const DeclaratorDeclarationSyntax * | asDeclaratorDeclaration () const |
virtual VariableAndOrFunctionDeclarationSyntax * | asVariableAndOrFunctionDeclaration () |
virtual const VariableAndOrFunctionDeclarationSyntax * | asVariableAndOrFunctionDeclaration () const |
virtual ParameterDeclarationSyntax * | asParameterDeclaration () |
virtual const ParameterDeclarationSyntax * | asParameterDeclaration () const |
virtual FieldDeclarationSyntax * | asFieldDeclaration () |
virtual const FieldDeclarationSyntax * | asFieldDeclaration () const |
virtual StaticAssertDeclarationSyntax * | asStaticAssertDeclaration () |
virtual const StaticAssertDeclarationSyntax * | asStaticAssertDeclaration () const |
virtual FunctionDefinitionSyntax * | asFunctionDefinition () |
virtual const FunctionDefinitionSyntax * | asFunctionDefinition () const |
virtual ExtPSY_TemplateDeclarationSyntax * | asExtPSY_TemplateDeclaration () |
virtual const ExtPSY_TemplateDeclarationSyntax * | asExtPSY_TemplateDeclaration () const |
virtual ExtGNU_AsmStatementDeclarationSyntax * | asExtGNU_AsmStatementDeclaration () |
virtual const ExtGNU_AsmStatementDeclarationSyntax * | asExtGNU_AsmStatementDeclaration () const |
virtual SpecifierSyntax * | asSpecifier () |
virtual const SpecifierSyntax * | asSpecifier () const |
virtual TrivialSpecifierSyntax * | asTrivialSpecifier () |
virtual const TrivialSpecifierSyntax * | asTrivialSpecifier () const |
virtual StorageClassSyntax * | asStorageClass () |
virtual const StorageClassSyntax * | asStorageClass () const |
virtual BuiltinTypeSpecifierSyntax * | asBuiltinTypeSpecifier () |
virtual const BuiltinTypeSpecifierSyntax * | asBuiltinTypeSpecifier () const |
virtual TaggedTypeSpecifierSyntax * | asTaggedTypeSpecifier () |
virtual const TaggedTypeSpecifierSyntax * | asTaggedTypeSpecifier () const |
virtual TypeDeclarationAsSpecifierSyntax * | asTypeDeclarationAsSpecifier () |
virtual const TypeDeclarationAsSpecifierSyntax * | asTypeDeclarationAsSpecifier () const |
virtual TypeQualifierSyntax * | asTypeQualifier () |
virtual const TypeQualifierSyntax * | asTypeQualifier () const |
virtual FunctionSpecifierSyntax * | asFunctionSpecifier () |
virtual const FunctionSpecifierSyntax * | asFunctionSpecifier () const |
virtual AlignmentSpecifierSyntax * | asAlignmentSpecifier () |
virtual const AlignmentSpecifierSyntax * | asAlignmentSpecifier () const |
virtual TypedefNameSyntax * | asTypedefName () |
virtual const TypedefNameSyntax * | asTypedefName () const |
virtual ExtGNU_AttributeSpecifierSyntax * | asExtGNU_AttributeSpecifier () |
virtual const ExtGNU_AttributeSpecifierSyntax * | asExtGNU_AttributeSpecifier () const |
virtual ExtGNU_AttributeSyntax * | asExtGNU_Attribute () |
virtual const ExtGNU_AttributeSyntax * | asExtGNU_Attribute () const |
virtual ExtGNU_AsmLabelSyntax * | asExtGNU_AsmLabel () |
virtual const ExtGNU_AsmLabelSyntax * | asExtGNU_AsmLabel () const |
virtual ExtGNU_TypeofSyntax * | asExtGNU_Typeof () |
virtual const ExtGNU_TypeofSyntax * | asExtGNU_Typeof () const |
virtual ExtPSY_QuantifiedTypeSpecifierSyntax * | asExtPSY_QuantifiedTypeSpecifier () |
virtual const ExtPSY_QuantifiedTypeSpecifierSyntax * | asExtPSY_QuantifiedTypeSpecifier () const |
virtual DeclaratorSyntax * | asDeclarator () |
virtual const DeclaratorSyntax * | asDeclarator () const |
virtual PointerDeclaratorSyntax * | asPointerDeclarator () |
virtual const PointerDeclaratorSyntax * | asPointerDeclarator () const |
virtual IdentifierDeclaratorSyntax * | asIdentifierDeclarator () |
virtual const IdentifierDeclaratorSyntax * | asIdentifierDeclarator () const |
virtual AbstractDeclaratorSyntax * | asAbstractDeclarator () |
virtual const AbstractDeclaratorSyntax * | asAbstractDeclarator () const |
virtual ParenthesizedDeclaratorSyntax * | asParenthesizedDeclarator () |
virtual const ParenthesizedDeclaratorSyntax * | asParenthesizedDeclarator () const |
virtual ArrayOrFunctionDeclaratorSyntax * | asArrayOrFunctionDeclarator () |
virtual const ArrayOrFunctionDeclaratorSyntax * | asArrayOrFunctionDeclarator () const |
virtual DeclaratorSuffixSyntax * | asDeclaratorSuffix () |
virtual const DeclaratorSuffixSyntax * | asDeclaratorSuffix () const |
virtual SubscriptSuffixSyntax * | asSubscriptSuffix () |
virtual const SubscriptSuffixSyntax * | asSubscriptSuffix () const |
virtual ParameterSuffixSyntax * | asParameterSuffix () |
virtual const ParameterSuffixSyntax * | asParameterSuffix () const |
virtual BitfieldDeclaratorSyntax * | asBitfieldDeclarator () |
virtual const BitfieldDeclaratorSyntax * | asBitfieldDeclarator () const |
virtual TypeNameSyntax * | asTypeName () |
virtual const TypeNameSyntax * | asTypeName () const |
virtual InitializerSyntax * | asInitializer () |
virtual const InitializerSyntax * | asInitializer () const |
virtual ExpressionInitializerSyntax * | asExpressionInitializer () |
virtual const ExpressionInitializerSyntax * | asExpressionInitializer () const |
virtual BraceEnclosedInitializerSyntax * | asBraceEnclosedInitializer () |
virtual const BraceEnclosedInitializerSyntax * | asBraceEnclosedInitializer () const |
virtual DesignatedInitializerSyntax * | asDesignatedInitializer () |
virtual const DesignatedInitializerSyntax * | asDesignatedInitializer () const |
virtual DesignatorSyntax * | asDesignator () |
virtual const DesignatorSyntax * | asDesignator () const |
virtual ArrayDesignatorSyntax * | asArrayDesignator () |
virtual const ArrayDesignatorSyntax * | asArrayDesignator () const |
virtual FieldDesignatorSyntax * | asFieldDesignator () |
virtual const FieldDesignatorSyntax * | asFieldDesignator () const |
virtual ExpressionSyntax * | asExpression () |
virtual const ExpressionSyntax * | asExpression () const |
virtual IdentifierExpressionSyntax * | asIdentifierExpression () |
virtual const IdentifierExpressionSyntax * | asIdentifierExpression () const |
virtual ConstantExpressionSyntax * | asConstantExpression () |
virtual const ConstantExpressionSyntax * | asConstantExpression () const |
virtual StringLiteralExpressionSyntax * | asStringLiteralExpression () |
virtual const StringLiteralExpressionSyntax * | asStringLiteralExpression () const |
virtual ParenthesizedExpressionSyntax * | asParenthesizedExpression () |
virtual const ParenthesizedExpressionSyntax * | asParenthesizedExpression () const |
virtual GenericSelectionExpressionSyntax * | asGenericSelectionExpression () |
virtual const GenericSelectionExpressionSyntax * | asGenericSelectionExpression () const |
virtual GenericAssociationSyntax * | asGenericAssociation () |
virtual const GenericAssociationSyntax * | asGenericAssociation () const |
virtual ExtGNU_EnclosedCompoundStatementExpressionSyntax * | asExtGNU_EnclosedCompoundStatementExpression () |
virtual const ExtGNU_EnclosedCompoundStatementExpressionSyntax * | asExtGNU_EnclosedCompoundStatementExpression () const |
virtual UnaryExpressionSyntax * | asUnaryExpression () |
virtual const UnaryExpressionSyntax * | asUnaryExpression () const |
virtual PostfixUnaryExpressionSyntax * | asPostfixUnaryExpression () |
virtual const PostfixUnaryExpressionSyntax * | asPostfixUnaryExpression () const |
virtual PrefixUnaryExpressionSyntax * | asPrefixUnaryExpression () |
virtual const PrefixUnaryExpressionSyntax * | asPrefixUnaryExpression () const |
virtual MemberAccessExpressionSyntax * | asMemberAccessExpression () |
virtual const MemberAccessExpressionSyntax * | asMemberAccessExpression () const |
virtual ArraySubscriptExpressionSyntax * | asArraySubscriptExpression () |
virtual const ArraySubscriptExpressionSyntax * | asArraySubscriptExpression () const |
virtual TypeTraitExpressionSyntax * | asTypeTraitExpression () |
virtual const TypeTraitExpressionSyntax * | asTypeTraitExpression () const |
virtual CallExpressionSyntax * | asCallExpression () |
virtual const CallExpressionSyntax * | asCallExpression () const |
virtual CompoundLiteralExpressionSyntax * | asCompoundLiteralExpression () |
virtual const CompoundLiteralExpressionSyntax * | asCompoundLiteralExpression () const |
virtual CastExpressionSyntax * | asCastExpression () |
virtual const CastExpressionSyntax * | asCastExpression () const |
virtual BinaryExpressionSyntax * | asBinaryExpression () |
virtual const BinaryExpressionSyntax * | asBinaryExpression () const |
virtual ConditionalExpressionSyntax * | asConditionalExpression () |
virtual const ConditionalExpressionSyntax * | asConditionalExpression () const |
virtual AssignmentExpressionSyntax * | asAssignmentExpression () |
virtual const AssignmentExpressionSyntax * | asAssignmentExpression () const |
virtual SequencingExpressionSyntax * | asSequencingExpression () |
virtual const SequencingExpressionSyntax * | asSequencingExpression () const |
virtual StatementSyntax * | asStatement () |
virtual const StatementSyntax * | asStatement () const |
virtual CompoundStatementSyntax * | asCompoundStatement () |
virtual const CompoundStatementSyntax * | asCompoundStatement () const |
virtual DeclarationStatementSyntax * | asDeclarationStatement () |
virtual const DeclarationStatementSyntax * | asDeclarationStatement () const |
virtual ExpressionStatementSyntax * | asExpressionStatement () |
virtual const ExpressionStatementSyntax * | asExpressionStatement () const |
virtual LabeledStatementSyntax * | asLabeledStatement () |
virtual const LabeledStatementSyntax * | asLabeledStatement () const |
virtual IfStatementSyntax * | asIfStatement () |
virtual const IfStatementSyntax * | asIfStatement () const |
virtual SwitchStatementSyntax * | asSwitchStatement () |
virtual const SwitchStatementSyntax * | asSwitchStatement () const |
virtual WhileStatementSyntax * | asWhileStatement () |
virtual const WhileStatementSyntax * | asWhileStatement () const |
virtual DoStatementSyntax * | asDoStatement () |
virtual const DoStatementSyntax * | asDoStatement () const |
virtual ForStatementSyntax * | asForStatement () |
virtual const ForStatementSyntax * | asForStatement () const |
virtual GotoStatementSyntax * | asGotoStatement () |
virtual const GotoStatementSyntax * | asGotoStatement () const |
virtual ContinueStatementSyntax * | asContinueStatement () |
virtual const ContinueStatementSyntax * | asContinueStatement () const |
virtual BreakStatementSyntax * | asBreakStatement () |
virtual const BreakStatementSyntax * | asBreakStatement () const |
virtual ReturnStatementSyntax * | asReturnStatement () |
virtual const ReturnStatementSyntax * | asReturnStatement () const |
virtual ExtGNU_AsmStatementSyntax * | asExtGNU_AsmStatement () |
virtual const ExtGNU_AsmStatementSyntax * | asExtGNU_AsmStatement () const |
virtual ExtGNU_AsmQualifierSyntax * | asExtGNU_AsmQualifier () |
virtual const ExtGNU_AsmQualifierSyntax * | asExtGNU_AsmQualifier () const |
virtual ExtGNU_AsmOperandSyntax * | asExtGNU_AsmOperand () |
virtual const ExtGNU_AsmOperandSyntax * | asExtGNU_AsmOperand () const |
virtual AmbiguousTypedefNameOrIdentifierExpressionSyntax * | asAmbiguousTypedefNameOrIdentifierExpression () |
virtual const AmbiguousTypedefNameOrIdentifierExpressionSyntax * | asAmbiguousTypedefNameOrIdentifierExpression () const |
virtual AmbiguousCastOrBinaryExpressionSyntax * | asAmbiguousCastOrBinaryExpression () |
virtual const AmbiguousCastOrBinaryExpressionSyntax * | asAmbiguousCastOrBinaryExpression () const |
virtual AmbiguousExpressionOrDeclarationStatementSyntax * | asAmbiguousExpressionOrDeclarationStatement () |
virtual const AmbiguousExpressionOrDeclarationStatementSyntax * | asAmbiguousExpressionOrDeclarationStatement () const |
void | acceptVisitor (SyntaxVisitor *visitor) const |
SyntaxNode (SyntaxTree *tree, SyntaxKind kind=Error) | |
SyntaxToken | tokenAtIndex (LexedTokens::IndexType tkIdx) const |
SyntaxToken | findValidToken (const std::vector< SyntaxHolder > &syntaxHolders) const |
void | visitChildren (SyntaxVisitor *visitor) const |
virtual std::vector< SyntaxHolder > | childNodesAndTokens () const |
virtual SyntaxVisitor::Action | dispatchVisit (SyntaxVisitor *visitor) const =0 |
Private Member Functions inherited from psy::C::Managed | |
Managed (const Managed &)=delete | |
void | operator= (const Managed &)=delete |
void * | operator new (size_t size, MemoryPool *pool) |
void | operator delete (void *) |
void | operator delete (void *, MemoryPool *) |
Private Attributes | |
SpecifierSyntax * | typedefName_ = nullptr |
ExpressionSyntax * | identExpr_ = nullptr |
Private Attributes inherited from psy::C::SyntaxNode | |
SyntaxTree * | tree_ |
SyntaxKind | kind_ |
Additional Inherited Members | |
Static Private Member Functions inherited from psy::C::SyntaxNode | |
static void | acceptVisitor (const SyntaxNode *node, SyntaxVisitor *visitor) |
template<class PtrT , class DerivedListT > | |
static void | acceptVisitor (List< PtrT, DerivedListT > *it, SyntaxVisitor *visitor) |
The AmbiguousTypedefNameOrIdentifierExpressionSyntax class.
Represents the ambiguous syntaxes typedef-name and (identifier) expression, when appearing as the argument of one of the following specifiers:
_Alignas
,typeof
.