Documentation ¶
Index ¶
- func EachDeclarationSpecifier(n *cc.DeclarationSpecifiers, f func(n *cc.DeclarationSpecifiers))
- func EachEnumerator(n *cc.EnumeratorList, f func(n *cc.Enumerator))
- func EachInitDeclarator(n *cc.InitDeclaratorList, f func(n *cc.InitDeclarator))
- type Handler
- type Spec
- type SpecType
- type SpecTypeEnum
- type SpecTypeEnumOption
- type Value
- type ValueType
- type Visitor
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func EachDeclarationSpecifier ¶
func EachDeclarationSpecifier(n *cc.DeclarationSpecifiers, f func(n *cc.DeclarationSpecifiers))
func EachEnumerator ¶
func EachEnumerator(n *cc.EnumeratorList, f func(n *cc.Enumerator))
func EachInitDeclarator ¶
func EachInitDeclarator(n *cc.InitDeclaratorList, f func(n *cc.InitDeclarator))
Types ¶
type Handler ¶
type Handler interface { Start() End() // OnAbstractDeclaratorStart is called during the traversal of the AST, whenever a node of type *cc.AbstractDeclarator is entered. OnAbstractDeclaratorStart(n *cc.AbstractDeclarator) // OnAbstractDeclaratorEnd is called during the traversal of the AST, whenever a node of type *cc.AbstractDeclarator is exited. OnAbstractDeclaratorEnd(n *cc.AbstractDeclarator) // OnAdditiveExpressionStart is called during the traversal of the AST, whenever a node of type *cc.AdditiveExpression is entered. OnAdditiveExpressionStart(n *cc.AdditiveExpression) // OnAdditiveExpressionEnd is called during the traversal of the AST, whenever a node of type *cc.AdditiveExpression is exited. OnAdditiveExpressionEnd(n *cc.AdditiveExpression) // OnAlignmentSpecifierStart is called during the traversal of the AST, whenever a node of type *cc.AlignmentSpecifier is entered. OnAlignmentSpecifierStart(n *cc.AlignmentSpecifier) // OnAlignmentSpecifierEnd is called during the traversal of the AST, whenever a node of type *cc.AlignmentSpecifier is exited. OnAlignmentSpecifierEnd(n *cc.AlignmentSpecifier) // OnAndExpressionStart is called during the traversal of the AST, whenever a node of type *cc.AndExpression is entered. OnAndExpressionStart(n *cc.AndExpression) // OnAndExpressionEnd is called during the traversal of the AST, whenever a node of type *cc.AndExpression is exited. OnAndExpressionEnd(n *cc.AndExpression) // OnArgumentExpressionListStart is called during the traversal of the AST, whenever a node of type *cc.ArgumentExpressionList is entered. OnArgumentExpressionListStart(n *cc.ArgumentExpressionList) // OnArgumentExpressionListEnd is called during the traversal of the AST, whenever a node of type *cc.ArgumentExpressionList is exited. OnArgumentExpressionListEnd(n *cc.ArgumentExpressionList) // OnAsmStart is called during the traversal of the AST, whenever a node of type *cc.Asm is entered. OnAsmStart(n *cc.Asm) // OnAsmEnd is called during the traversal of the AST, whenever a node of type *cc.Asm is exited. OnAsmEnd(n *cc.Asm) // OnAsmArgListStart is called during the traversal of the AST, whenever a node of type *cc.AsmArgList is entered. OnAsmArgListStart(n *cc.AsmArgList) // OnAsmArgListEnd is called during the traversal of the AST, whenever a node of type *cc.AsmArgList is exited. OnAsmArgListEnd(n *cc.AsmArgList) // OnAsmExpressionListStart is called during the traversal of the AST, whenever a node of type *cc.AsmExpressionList is entered. OnAsmExpressionListStart(n *cc.AsmExpressionList) // OnAsmExpressionListEnd is called during the traversal of the AST, whenever a node of type *cc.AsmExpressionList is exited. OnAsmExpressionListEnd(n *cc.AsmExpressionList) // OnAsmFunctionDefinitionStart is called during the traversal of the AST, whenever a node of type *cc.AsmFunctionDefinition is entered. OnAsmFunctionDefinitionStart(n *cc.AsmFunctionDefinition) // OnAsmFunctionDefinitionEnd is called during the traversal of the AST, whenever a node of type *cc.AsmFunctionDefinition is exited. OnAsmFunctionDefinitionEnd(n *cc.AsmFunctionDefinition) // OnAsmIndexStart is called during the traversal of the AST, whenever a node of type *cc.AsmIndex is entered. OnAsmIndexStart(n *cc.AsmIndex) // OnAsmIndexEnd is called during the traversal of the AST, whenever a node of type *cc.AsmIndex is exited. OnAsmIndexEnd(n *cc.AsmIndex) // OnAsmQualifierStart is called during the traversal of the AST, whenever a node of type *cc.AsmQualifier is entered. OnAsmQualifierStart(n *cc.AsmQualifier) // OnAsmQualifierEnd is called during the traversal of the AST, whenever a node of type *cc.AsmQualifier is exited. OnAsmQualifierEnd(n *cc.AsmQualifier) // OnAsmQualifierListStart is called during the traversal of the AST, whenever a node of type *cc.AsmQualifierList is entered. OnAsmQualifierListStart(n *cc.AsmQualifierList) // OnAsmQualifierListEnd is called during the traversal of the AST, whenever a node of type *cc.AsmQualifierList is exited. OnAsmQualifierListEnd(n *cc.AsmQualifierList) // OnAsmStatementStart is called during the traversal of the AST, whenever a node of type *cc.AsmStatement is entered. OnAsmStatementStart(n *cc.AsmStatement) // OnAsmStatementEnd is called during the traversal of the AST, whenever a node of type *cc.AsmStatement is exited. OnAsmStatementEnd(n *cc.AsmStatement) // OnAssignmentExpressionStart is called during the traversal of the AST, whenever a node of type *cc.AssignmentExpression is entered. OnAssignmentExpressionStart(n *cc.AssignmentExpression) // OnAssignmentExpressionEnd is called during the traversal of the AST, whenever a node of type *cc.AssignmentExpression is exited. OnAssignmentExpressionEnd(n *cc.AssignmentExpression) // OnAtomicTypeSpecifierStart is called during the traversal of the AST, whenever a node of type *cc.AtomicTypeSpecifier is entered. OnAtomicTypeSpecifierStart(n *cc.AtomicTypeSpecifier) // OnAtomicTypeSpecifierEnd is called during the traversal of the AST, whenever a node of type *cc.AtomicTypeSpecifier is exited. OnAtomicTypeSpecifierEnd(n *cc.AtomicTypeSpecifier) // OnAttributeSpecifierStart is called during the traversal of the AST, whenever a node of type *cc.AttributeSpecifier is entered. OnAttributeSpecifierStart(n *cc.AttributeSpecifier) // OnAttributeSpecifierEnd is called during the traversal of the AST, whenever a node of type *cc.AttributeSpecifier is exited. OnAttributeSpecifierEnd(n *cc.AttributeSpecifier) // OnAttributeSpecifierListStart is called during the traversal of the AST, whenever a node of type *cc.AttributeSpecifierList is entered. OnAttributeSpecifierListStart(n *cc.AttributeSpecifierList) // OnAttributeSpecifierListEnd is called during the traversal of the AST, whenever a node of type *cc.AttributeSpecifierList is exited. OnAttributeSpecifierListEnd(n *cc.AttributeSpecifierList) // OnAttributeValueStart is called during the traversal of the AST, whenever a node of type *cc.AttributeValue is entered. OnAttributeValueStart(n *cc.AttributeValue) // OnAttributeValueEnd is called during the traversal of the AST, whenever a node of type *cc.AttributeValue is exited. OnAttributeValueEnd(n *cc.AttributeValue) // OnAttributeValueListStart is called during the traversal of the AST, whenever a node of type *cc.AttributeValueList is entered. OnAttributeValueListStart(n *cc.AttributeValueList) // OnAttributeValueListEnd is called during the traversal of the AST, whenever a node of type *cc.AttributeValueList is exited. OnAttributeValueListEnd(n *cc.AttributeValueList) // OnBlockItemStart is called during the traversal of the AST, whenever a node of type *cc.BlockItem is entered. OnBlockItemStart(n *cc.BlockItem) // OnBlockItemEnd is called during the traversal of the AST, whenever a node of type *cc.BlockItem is exited. OnBlockItemEnd(n *cc.BlockItem) // OnBlockItemListStart is called during the traversal of the AST, whenever a node of type *cc.BlockItemList is entered. OnBlockItemListStart(n *cc.BlockItemList) // OnBlockItemListEnd is called during the traversal of the AST, whenever a node of type *cc.BlockItemList is exited. OnBlockItemListEnd(n *cc.BlockItemList) // OnCastExpressionStart is called during the traversal of the AST, whenever a node of type *cc.CastExpression is entered. OnCastExpressionStart(n *cc.CastExpression) // OnCastExpressionEnd is called during the traversal of the AST, whenever a node of type *cc.CastExpression is exited. OnCastExpressionEnd(n *cc.CastExpression) // OnCompoundStatementStart is called during the traversal of the AST, whenever a node of type *cc.CompoundStatement is entered. OnCompoundStatementStart(n *cc.CompoundStatement) // OnCompoundStatementEnd is called during the traversal of the AST, whenever a node of type *cc.CompoundStatement is exited. OnCompoundStatementEnd(n *cc.CompoundStatement) // OnConditionalExpressionStart is called during the traversal of the AST, whenever a node of type *cc.ConditionalExpression is entered. OnConditionalExpressionStart(n *cc.ConditionalExpression) // OnConditionalExpressionEnd is called during the traversal of the AST, whenever a node of type *cc.ConditionalExpression is exited. OnConditionalExpressionEnd(n *cc.ConditionalExpression) // OnConstantExpressionStart is called during the traversal of the AST, whenever a node of type *cc.ConstantExpression is entered. OnConstantExpressionStart(n *cc.ConstantExpression) // OnConstantExpressionEnd is called during the traversal of the AST, whenever a node of type *cc.ConstantExpression is exited. OnConstantExpressionEnd(n *cc.ConstantExpression) // OnDeclarationStart is called during the traversal of the AST, whenever a node of type *cc.Declaration is entered. OnDeclarationStart(n *cc.Declaration) // OnDeclarationEnd is called during the traversal of the AST, whenever a node of type *cc.Declaration is exited. OnDeclarationEnd(n *cc.Declaration) // OnDeclarationListStart is called during the traversal of the AST, whenever a node of type *cc.DeclarationList is entered. OnDeclarationListStart(n *cc.DeclarationList) // OnDeclarationListEnd is called during the traversal of the AST, whenever a node of type *cc.DeclarationList is exited. OnDeclarationListEnd(n *cc.DeclarationList) // OnDeclarationSpecifiersStart is called during the traversal of the AST, whenever a node of type *cc.DeclarationSpecifiers is entered. OnDeclarationSpecifiersStart(n *cc.DeclarationSpecifiers) // OnDeclarationSpecifiersEnd is called during the traversal of the AST, whenever a node of type *cc.DeclarationSpecifiers is exited. OnDeclarationSpecifiersEnd(n *cc.DeclarationSpecifiers) // OnDeclaratorStart is called during the traversal of the AST, whenever a node of type *cc.Declarator is entered. OnDeclaratorStart(n *cc.Declarator) // OnDeclaratorEnd is called during the traversal of the AST, whenever a node of type *cc.Declarator is exited. OnDeclaratorEnd(n *cc.Declarator) // OnDesignationStart is called during the traversal of the AST, whenever a node of type *cc.Designation is entered. OnDesignationStart(n *cc.Designation) // OnDesignationEnd is called during the traversal of the AST, whenever a node of type *cc.Designation is exited. OnDesignationEnd(n *cc.Designation) // OnDesignatorStart is called during the traversal of the AST, whenever a node of type *cc.Designator is entered. OnDesignatorStart(n *cc.Designator) // OnDesignatorEnd is called during the traversal of the AST, whenever a node of type *cc.Designator is exited. OnDesignatorEnd(n *cc.Designator) // OnDesignatorListStart is called during the traversal of the AST, whenever a node of type *cc.DesignatorList is entered. OnDesignatorListStart(n *cc.DesignatorList) // OnDesignatorListEnd is called during the traversal of the AST, whenever a node of type *cc.DesignatorList is exited. OnDesignatorListEnd(n *cc.DesignatorList) // OnDirectAbstractDeclaratorStart is called during the traversal of the AST, whenever a node of type *cc.DirectAbstractDeclarator is entered. OnDirectAbstractDeclaratorStart(n *cc.DirectAbstractDeclarator) // OnDirectAbstractDeclaratorEnd is called during the traversal of the AST, whenever a node of type *cc.DirectAbstractDeclarator is exited. OnDirectAbstractDeclaratorEnd(n *cc.DirectAbstractDeclarator) // OnDirectDeclaratorStart is called during the traversal of the AST, whenever a node of type *cc.DirectDeclarator is entered. OnDirectDeclaratorStart(n *cc.DirectDeclarator) // OnDirectDeclaratorEnd is called during the traversal of the AST, whenever a node of type *cc.DirectDeclarator is exited. OnDirectDeclaratorEnd(n *cc.DirectDeclarator) // OnEnumSpecifierStart is called during the traversal of the AST, whenever a node of type *cc.EnumSpecifier is entered. OnEnumSpecifierStart(n *cc.EnumSpecifier) // OnEnumSpecifierEnd is called during the traversal of the AST, whenever a node of type *cc.EnumSpecifier is exited. OnEnumSpecifierEnd(n *cc.EnumSpecifier) // OnEnumeratorStart is called during the traversal of the AST, whenever a node of type *cc.Enumerator is entered. OnEnumeratorStart(n *cc.Enumerator) // OnEnumeratorEnd is called during the traversal of the AST, whenever a node of type *cc.Enumerator is exited. OnEnumeratorEnd(n *cc.Enumerator) // OnEnumeratorListStart is called during the traversal of the AST, whenever a node of type *cc.EnumeratorList is entered. OnEnumeratorListStart(n *cc.EnumeratorList) // OnEnumeratorListEnd is called during the traversal of the AST, whenever a node of type *cc.EnumeratorList is exited. OnEnumeratorListEnd(n *cc.EnumeratorList) // OnEqualityExpressionStart is called during the traversal of the AST, whenever a node of type *cc.EqualityExpression is entered. OnEqualityExpressionStart(n *cc.EqualityExpression) // OnEqualityExpressionEnd is called during the traversal of the AST, whenever a node of type *cc.EqualityExpression is exited. OnEqualityExpressionEnd(n *cc.EqualityExpression) // OnExclusiveOrExpressionStart is called during the traversal of the AST, whenever a node of type *cc.ExclusiveOrExpression is entered. OnExclusiveOrExpressionStart(n *cc.ExclusiveOrExpression) // OnExclusiveOrExpressionEnd is called during the traversal of the AST, whenever a node of type *cc.ExclusiveOrExpression is exited. OnExclusiveOrExpressionEnd(n *cc.ExclusiveOrExpression) // OnExpressionStart is called during the traversal of the AST, whenever a node of type *cc.Expression is entered. OnExpressionStart(n *cc.Expression) // OnExpressionEnd is called during the traversal of the AST, whenever a node of type *cc.Expression is exited. OnExpressionEnd(n *cc.Expression) // OnExpressionListStart is called during the traversal of the AST, whenever a node of type *cc.ExpressionList is entered. OnExpressionListStart(n *cc.ExpressionList) // OnExpressionListEnd is called during the traversal of the AST, whenever a node of type *cc.ExpressionList is exited. OnExpressionListEnd(n *cc.ExpressionList) // OnExpressionStatementStart is called during the traversal of the AST, whenever a node of type *cc.ExpressionStatement is entered. OnExpressionStatementStart(n *cc.ExpressionStatement) // OnExpressionStatementEnd is called during the traversal of the AST, whenever a node of type *cc.ExpressionStatement is exited. OnExpressionStatementEnd(n *cc.ExpressionStatement) // OnExternalDeclarationStart is called during the traversal of the AST, whenever a node of type *cc.ExternalDeclaration is entered. OnExternalDeclarationStart(n *cc.ExternalDeclaration) // OnExternalDeclarationEnd is called during the traversal of the AST, whenever a node of type *cc.ExternalDeclaration is exited. OnExternalDeclarationEnd(n *cc.ExternalDeclaration) // OnFunctionDefinitionStart is called during the traversal of the AST, whenever a node of type *cc.FunctionDefinition is entered. OnFunctionDefinitionStart(n *cc.FunctionDefinition) // OnFunctionDefinitionEnd is called during the traversal of the AST, whenever a node of type *cc.FunctionDefinition is exited. OnFunctionDefinitionEnd(n *cc.FunctionDefinition) // OnFunctionSpecifierStart is called during the traversal of the AST, whenever a node of type *cc.FunctionSpecifier is entered. OnFunctionSpecifierStart(n *cc.FunctionSpecifier) // OnFunctionSpecifierEnd is called during the traversal of the AST, whenever a node of type *cc.FunctionSpecifier is exited. OnFunctionSpecifierEnd(n *cc.FunctionSpecifier) // OnIdentifierListStart is called during the traversal of the AST, whenever a node of type *cc.IdentifierList is entered. OnIdentifierListStart(n *cc.IdentifierList) // OnIdentifierListEnd is called during the traversal of the AST, whenever a node of type *cc.IdentifierList is exited. OnIdentifierListEnd(n *cc.IdentifierList) // OnInclusiveOrExpressionStart is called during the traversal of the AST, whenever a node of type *cc.InclusiveOrExpression is entered. OnInclusiveOrExpressionStart(n *cc.InclusiveOrExpression) // OnInclusiveOrExpressionEnd is called during the traversal of the AST, whenever a node of type *cc.InclusiveOrExpression is exited. OnInclusiveOrExpressionEnd(n *cc.InclusiveOrExpression) // OnInitDeclaratorStart is called during the traversal of the AST, whenever a node of type *cc.InitDeclarator is entered. OnInitDeclaratorStart(n *cc.InitDeclarator) // OnInitDeclaratorEnd is called during the traversal of the AST, whenever a node of type *cc.InitDeclarator is exited. OnInitDeclaratorEnd(n *cc.InitDeclarator) // OnInitDeclaratorListStart is called during the traversal of the AST, whenever a node of type *cc.InitDeclaratorList is entered. OnInitDeclaratorListStart(n *cc.InitDeclaratorList) // OnInitDeclaratorListEnd is called during the traversal of the AST, whenever a node of type *cc.InitDeclaratorList is exited. OnInitDeclaratorListEnd(n *cc.InitDeclaratorList) // OnInitializerStart is called during the traversal of the AST, whenever a node of type *cc.Initializer is entered. OnInitializerStart(n *cc.Initializer) // OnInitializerEnd is called during the traversal of the AST, whenever a node of type *cc.Initializer is exited. OnInitializerEnd(n *cc.Initializer) // OnInitializerListStart is called during the traversal of the AST, whenever a node of type *cc.InitializerList is entered. OnInitializerListStart(n *cc.InitializerList) // OnInitializerListEnd is called during the traversal of the AST, whenever a node of type *cc.InitializerList is exited. OnInitializerListEnd(n *cc.InitializerList) // OnIterationStatementStart is called during the traversal of the AST, whenever a node of type *cc.IterationStatement is entered. OnIterationStatementStart(n *cc.IterationStatement) // OnIterationStatementEnd is called during the traversal of the AST, whenever a node of type *cc.IterationStatement is exited. OnIterationStatementEnd(n *cc.IterationStatement) // OnJumpStatementStart is called during the traversal of the AST, whenever a node of type *cc.JumpStatement is entered. OnJumpStatementStart(n *cc.JumpStatement) // OnJumpStatementEnd is called during the traversal of the AST, whenever a node of type *cc.JumpStatement is exited. OnJumpStatementEnd(n *cc.JumpStatement) // OnLabelDeclarationStart is called during the traversal of the AST, whenever a node of type *cc.LabelDeclaration is entered. OnLabelDeclarationStart(n *cc.LabelDeclaration) // OnLabelDeclarationEnd is called during the traversal of the AST, whenever a node of type *cc.LabelDeclaration is exited. OnLabelDeclarationEnd(n *cc.LabelDeclaration) // OnLabeledStatementStart is called during the traversal of the AST, whenever a node of type *cc.LabeledStatement is entered. OnLabeledStatementStart(n *cc.LabeledStatement) // OnLabeledStatementEnd is called during the traversal of the AST, whenever a node of type *cc.LabeledStatement is exited. OnLabeledStatementEnd(n *cc.LabeledStatement) // OnLogicalAndExpressionStart is called during the traversal of the AST, whenever a node of type *cc.LogicalAndExpression is entered. OnLogicalAndExpressionStart(n *cc.LogicalAndExpression) // OnLogicalAndExpressionEnd is called during the traversal of the AST, whenever a node of type *cc.LogicalAndExpression is exited. OnLogicalAndExpressionEnd(n *cc.LogicalAndExpression) // OnLogicalOrExpressionStart is called during the traversal of the AST, whenever a node of type *cc.LogicalOrExpression is entered. OnLogicalOrExpressionStart(n *cc.LogicalOrExpression) // OnLogicalOrExpressionEnd is called during the traversal of the AST, whenever a node of type *cc.LogicalOrExpression is exited. OnLogicalOrExpressionEnd(n *cc.LogicalOrExpression) // OnMultiplicativeExpressionStart is called during the traversal of the AST, whenever a node of type *cc.MultiplicativeExpression is entered. OnMultiplicativeExpressionStart(n *cc.MultiplicativeExpression) // OnMultiplicativeExpressionEnd is called during the traversal of the AST, whenever a node of type *cc.MultiplicativeExpression is exited. OnMultiplicativeExpressionEnd(n *cc.MultiplicativeExpression) // OnParameterDeclarationStart is called during the traversal of the AST, whenever a node of type *cc.ParameterDeclaration is entered. OnParameterDeclarationStart(n *cc.ParameterDeclaration) // OnParameterDeclarationEnd is called during the traversal of the AST, whenever a node of type *cc.ParameterDeclaration is exited. OnParameterDeclarationEnd(n *cc.ParameterDeclaration) // OnParameterListStart is called during the traversal of the AST, whenever a node of type *cc.ParameterList is entered. OnParameterListStart(n *cc.ParameterList) // OnParameterListEnd is called during the traversal of the AST, whenever a node of type *cc.ParameterList is exited. OnParameterListEnd(n *cc.ParameterList) // OnParameterTypeListStart is called during the traversal of the AST, whenever a node of type *cc.ParameterTypeList is entered. OnParameterTypeListStart(n *cc.ParameterTypeList) // OnParameterTypeListEnd is called during the traversal of the AST, whenever a node of type *cc.ParameterTypeList is exited. OnParameterTypeListEnd(n *cc.ParameterTypeList) // OnPointerStart is called during the traversal of the AST, whenever a node of type *cc.Pointer is entered. OnPointerStart(n *cc.Pointer) // OnPointerEnd is called during the traversal of the AST, whenever a node of type *cc.Pointer is exited. OnPointerEnd(n *cc.Pointer) // OnPostfixExpressionStart is called during the traversal of the AST, whenever a node of type *cc.PostfixExpression is entered. OnPostfixExpressionStart(n *cc.PostfixExpression) // OnPostfixExpressionEnd is called during the traversal of the AST, whenever a node of type *cc.PostfixExpression is exited. OnPostfixExpressionEnd(n *cc.PostfixExpression) // OnPragmaSTDCStart is called during the traversal of the AST, whenever a node of type *cc.PragmaSTDC is entered. OnPragmaSTDCStart(n *cc.PragmaSTDC) // OnPragmaSTDCEnd is called during the traversal of the AST, whenever a node of type *cc.PragmaSTDC is exited. OnPragmaSTDCEnd(n *cc.PragmaSTDC) // OnPrimaryExpressionStart is called during the traversal of the AST, whenever a node of type *cc.PrimaryExpression is entered. OnPrimaryExpressionStart(n *cc.PrimaryExpression) // OnPrimaryExpressionEnd is called during the traversal of the AST, whenever a node of type *cc.PrimaryExpression is exited. OnPrimaryExpressionEnd(n *cc.PrimaryExpression) // OnRelationalExpressionStart is called during the traversal of the AST, whenever a node of type *cc.RelationalExpression is entered. OnRelationalExpressionStart(n *cc.RelationalExpression) // OnRelationalExpressionEnd is called during the traversal of the AST, whenever a node of type *cc.RelationalExpression is exited. OnRelationalExpressionEnd(n *cc.RelationalExpression) // OnSelectionStatementStart is called during the traversal of the AST, whenever a node of type *cc.SelectionStatement is entered. OnSelectionStatementStart(n *cc.SelectionStatement) // OnSelectionStatementEnd is called during the traversal of the AST, whenever a node of type *cc.SelectionStatement is exited. OnSelectionStatementEnd(n *cc.SelectionStatement) // OnShiftExpressionStart is called during the traversal of the AST, whenever a node of type *cc.ShiftExpression is entered. OnShiftExpressionStart(n *cc.ShiftExpression) // OnShiftExpressionEnd is called during the traversal of the AST, whenever a node of type *cc.ShiftExpression is exited. OnShiftExpressionEnd(n *cc.ShiftExpression) // OnSpecifierQualifierListStart is called during the traversal of the AST, whenever a node of type *cc.SpecifierQualifierList is entered. OnSpecifierQualifierListStart(n *cc.SpecifierQualifierList) // OnSpecifierQualifierListEnd is called during the traversal of the AST, whenever a node of type *cc.SpecifierQualifierList is exited. OnSpecifierQualifierListEnd(n *cc.SpecifierQualifierList) // OnStatementStart is called during the traversal of the AST, whenever a node of type *cc.Statement is entered. OnStatementStart(n *cc.Statement) // OnStatementEnd is called during the traversal of the AST, whenever a node of type *cc.Statement is exited. OnStatementEnd(n *cc.Statement) // OnStorageClassSpecifierStart is called during the traversal of the AST, whenever a node of type *cc.StorageClassSpecifier is entered. OnStorageClassSpecifierStart(n *cc.StorageClassSpecifier) // OnStorageClassSpecifierEnd is called during the traversal of the AST, whenever a node of type *cc.StorageClassSpecifier is exited. OnStorageClassSpecifierEnd(n *cc.StorageClassSpecifier) // OnStructDeclarationStart is called during the traversal of the AST, whenever a node of type *cc.StructDeclaration is entered. OnStructDeclarationStart(n *cc.StructDeclaration) // OnStructDeclarationEnd is called during the traversal of the AST, whenever a node of type *cc.StructDeclaration is exited. OnStructDeclarationEnd(n *cc.StructDeclaration) // OnStructDeclarationListStart is called during the traversal of the AST, whenever a node of type *cc.StructDeclarationList is entered. OnStructDeclarationListStart(n *cc.StructDeclarationList) // OnStructDeclarationListEnd is called during the traversal of the AST, whenever a node of type *cc.StructDeclarationList is exited. OnStructDeclarationListEnd(n *cc.StructDeclarationList) // OnStructDeclaratorStart is called during the traversal of the AST, whenever a node of type *cc.StructDeclarator is entered. OnStructDeclaratorStart(n *cc.StructDeclarator) // OnStructDeclaratorEnd is called during the traversal of the AST, whenever a node of type *cc.StructDeclarator is exited. OnStructDeclaratorEnd(n *cc.StructDeclarator) // OnStructDeclaratorListStart is called during the traversal of the AST, whenever a node of type *cc.StructDeclaratorList is entered. OnStructDeclaratorListStart(n *cc.StructDeclaratorList) // OnStructDeclaratorListEnd is called during the traversal of the AST, whenever a node of type *cc.StructDeclaratorList is exited. OnStructDeclaratorListEnd(n *cc.StructDeclaratorList) // OnStructOrUnionStart is called during the traversal of the AST, whenever a node of type *cc.StructOrUnion is entered. OnStructOrUnionStart(n *cc.StructOrUnion) // OnStructOrUnionEnd is called during the traversal of the AST, whenever a node of type *cc.StructOrUnion is exited. OnStructOrUnionEnd(n *cc.StructOrUnion) // OnStructOrUnionSpecifierStart is called during the traversal of the AST, whenever a node of type *cc.StructOrUnionSpecifier is entered. OnStructOrUnionSpecifierStart(n *cc.StructOrUnionSpecifier) // OnStructOrUnionSpecifierEnd is called during the traversal of the AST, whenever a node of type *cc.StructOrUnionSpecifier is exited. OnStructOrUnionSpecifierEnd(n *cc.StructOrUnionSpecifier) // OnTranslationUnitStart is called during the traversal of the AST, whenever a node of type *cc.TranslationUnit is entered. OnTranslationUnitStart(n *cc.TranslationUnit) // OnTranslationUnitEnd is called during the traversal of the AST, whenever a node of type *cc.TranslationUnit is exited. OnTranslationUnitEnd(n *cc.TranslationUnit) // OnTypeNameStart is called during the traversal of the AST, whenever a node of type *cc.TypeName is entered. OnTypeNameStart(n *cc.TypeName) // OnTypeNameEnd is called during the traversal of the AST, whenever a node of type *cc.TypeName is exited. OnTypeNameEnd(n *cc.TypeName) // OnTypeQualifierStart is called during the traversal of the AST, whenever a node of type *cc.TypeQualifier is entered. OnTypeQualifierStart(n *cc.TypeQualifier) // OnTypeQualifierEnd is called during the traversal of the AST, whenever a node of type *cc.TypeQualifier is exited. OnTypeQualifierEnd(n *cc.TypeQualifier) // OnTypeQualifiersStart is called during the traversal of the AST, whenever a node of type *cc.TypeQualifiers is entered. OnTypeQualifiersStart(n *cc.TypeQualifiers) // OnTypeQualifiersEnd is called during the traversal of the AST, whenever a node of type *cc.TypeQualifiers is exited. OnTypeQualifiersEnd(n *cc.TypeQualifiers) // OnTypeSpecifierStart is called during the traversal of the AST, whenever a node of type *cc.TypeSpecifier is entered. OnTypeSpecifierStart(n *cc.TypeSpecifier) // OnTypeSpecifierEnd is called during the traversal of the AST, whenever a node of type *cc.TypeSpecifier is exited. OnTypeSpecifierEnd(n *cc.TypeSpecifier) // OnUnaryExpressionStart is called during the traversal of the AST, whenever a node of type *cc.UnaryExpression is entered. OnUnaryExpressionStart(n *cc.UnaryExpression) // OnUnaryExpressionEnd is called during the traversal of the AST, whenever a node of type *cc.UnaryExpression is exited. OnUnaryExpressionEnd(n *cc.UnaryExpression) }
Handler is a callback handler used in Visitor. During traversal of the cc.AST, the methods on Handler are called on start and end of node traversal.
func BaseHandler ¶
func BaseHandler() Handler
type Spec ¶
type SpecType ¶
type SpecType struct {
// contains filtered or unexported fields
}
func (SpecType) Enum ¶
func (s SpecType) Enum() (SpecTypeEnum, bool)
type SpecTypeEnum ¶
type SpecTypeEnum struct {
Options []SpecTypeEnumOption
}
type SpecTypeEnumOption ¶
type Value ¶
type Value struct { Type ValueType Value interface{} }
func FindValueConstantExpression ¶
func FindValueConstantExpression(e *cc.ConstantExpression) Value
Click to show internal directories.
Click to hide internal directories.