ROSE  0.11.145.0
Public Types | Public Member Functions | Protected Member Functions | List of all members
AstSimpleProcessing Class Referenceabstract

Description

Class for traversing the AST.

This class allows to traverse the AST in preorder or postorder. A visit function must be implemented by the user which is automaticly called by the provided AST traversal.

Definition at line 59 of file AstSimpleProcessing.h.

#include <AstProcessing.h>

Inheritance diagram for AstSimpleProcessing:
Inheritance graph
[legend]
Collaboration diagram for AstSimpleProcessing:
Collaboration graph
[legend]

Public Types

typedef t_traverseOrder Order
 
- Public Types inherited from SgTreeTraversal< DummyAttribute, DummyAttribute >
enum  E_SgSourceFile
 
enum  E_SgUnknownFile
 
enum  E_SgJvmComposite
 
enum  E_SgBinaryComposite
 
enum  E_SgProject
 
enum  E_SgExpBaseClass
 
enum  E_SgNonrealBaseClass
 
enum  E_SgBaseClass
 
enum  E_SgTemplateParameter
 
enum  E_SgTemplateArgument
 
enum  E_SgDirectory
 
enum  E_SgFileList
 
enum  E_SgDirectoryList
 
enum  E_SgTemplateArgumentList
 
enum  E_SgTemplateParameterList
 
enum  E_SgIncludeFile
 
enum  E_SgJavaImportStatementList
 
enum  E_SgJavaClassDeclarationList
 
enum  E_SgTypeUnknown
 
enum  E_SgTypeChar
 
enum  E_SgTypeSignedChar
 
enum  E_SgTypeUnsignedChar
 
enum  E_SgTypeShort
 
enum  E_SgTypeSignedShort
 
enum  E_SgTypeUnsignedShort
 
enum  E_SgTypeInt
 
enum  E_SgTypeSignedInt
 
enum  E_SgTypeUnsignedInt
 
enum  E_SgTypeLong
 
enum  E_SgTypeSignedLong
 
enum  E_SgTypeUnsignedLong
 
enum  E_SgTypeVoid
 
enum  E_SgTypeGlobalVoid
 
enum  E_SgTypeWchar
 
enum  E_SgTypeFloat
 
enum  E_SgTypeDouble
 
enum  E_SgTypeLongLong
 
enum  E_SgTypeSignedLongLong
 
enum  E_SgTypeUnsignedLongLong
 
enum  E_SgTypeSigned128bitInteger
 
enum  E_SgTypeUnsigned128bitInteger
 
enum  E_SgTypeFloat80
 
enum  E_SgTypeLongDouble
 
enum  E_SgTypeString
 
enum  E_SgTypeBool
 
enum  E_SgPointerMemberType
 
enum  E_SgPointerType
 
enum  E_SgReferenceType
 
enum  E_SgJavaParameterType
 
enum  E_SgJovialTableType
 
enum  E_SgClassType
 
enum  E_SgEnumType
 
enum  E_SgTypedefType
 
enum  E_SgNonrealType
 
enum  E_SgJavaParameterizedType
 
enum  E_SgJavaQualifiedType
 
enum  E_SgJavaWildcardType
 
enum  E_SgAdaTaskType
 
enum  E_SgAdaProtectedType
 
enum  E_SgAdaFormalType
 
enum  E_SgAdaDiscriminatedType
 
enum  E_SgNamedType
 
enum  E_SgModifierType
 
enum  E_SgPartialFunctionModifierType
 
enum  E_SgPartialFunctionType
 
enum  E_SgMemberFunctionType
 
enum  E_SgFunctionType
 
enum  E_SgArrayType
 
enum  E_SgTypeEllipse
 
enum  E_SgTemplateType
 
enum  E_SgQualifiedNameType
 
enum  E_SgTypeComplex
 
enum  E_SgTypeImaginary
 
enum  E_SgTypeDefault
 
enum  E_SgTypeCAFTeam
 
enum  E_SgTypeCrayPointer
 
enum  E_SgTypeLabel
 
enum  E_SgJavaUnionType
 
enum  E_SgRvalueReferenceType
 
enum  E_SgTypeNullptr
 
enum  E_SgDeclType
 
enum  E_SgTypeOfType
 
enum  E_SgTypeMatrix
 
enum  E_SgTypeTuple
 
enum  E_SgTypeChar16
 
enum  E_SgTypeChar32
 
enum  E_SgTypeFloat128
 
enum  E_SgTypeFixed
 
enum  E_SgAutoType
 
enum  E_SgAdaAccessType
 
enum  E_SgAdaSubtype
 
enum  E_SgAdaDiscreteType
 
enum  E_SgAdaModularType
 
enum  E_SgAdaDerivedType
 
enum  E_SgAdaSubroutineType
 
enum  E_SgJovialBitType
 
enum  E_SgType
 
enum  E_SgCommonBlockObject
 
enum  E_SgInitializedName
 
enum  E_SgJavaMemberValuePair
 
enum  E_SgOmpOrderedClause
 
enum  E_SgOmpCollapseClause
 
enum  E_SgOmpIfClause
 
enum  E_SgOmpNumThreadsClause
 
enum  E_SgOmpDeviceClause
 
enum  E_SgOmpSafelenClause
 
enum  E_SgOmpSimdlenClause
 
enum  E_SgOmpFinalClause
 
enum  E_SgOmpPriorityClause
 
enum  E_SgOmpExpressionClause
 
enum  E_SgOmpCopyprivateClause
 
enum  E_SgOmpPrivateClause
 
enum  E_SgOmpFirstprivateClause
 
enum  E_SgOmpSharedClause
 
enum  E_SgOmpCopyinClause
 
enum  E_SgOmpLastprivateClause
 
enum  E_SgOmpReductionClause
 
enum  E_SgOmpMapClause
 
enum  E_SgOmpUniformClause
 
enum  E_SgOmpAlignedClause
 
enum  E_SgOmpLinearClause
 
enum  E_SgOmpDependClause
 
enum  E_SgOmpVariablesClause
 
enum  E_SgOmpScheduleClause
 
enum  E_SgLambdaCapture
 
enum  E_SgLambdaCaptureList
 
enum  E_SgAdaRangeConstraint
 
enum  E_SgAdaIndexConstraint
 
enum  E_SgAdaDigitsConstraint
 
enum  E_SgAdaDeltaConstraint
 
enum  E_SgAdaDiscriminantConstraint
 
enum  E_SgGlobal
 
enum  E_SgBasicBlock
 
enum  E_SgIfStmt
 
enum  E_SgForStatement
 
enum  E_SgTemplateFunctionDefinition
 
enum  E_SgFunctionDefinition
 
enum  E_SgTemplateInstantiationDefn
 
enum  E_SgTemplateClassDefinition
 
enum  E_SgClassDefinition
 
enum  E_SgWhileStmt
 
enum  E_SgDoWhileStmt
 
enum  E_SgSwitchStatement
 
enum  E_SgCatchOptionStmt
 
enum  E_SgNamespaceDefinitionStatement
 
enum  E_SgAssociateStatement
 
enum  E_SgFortranNonblockedDo
 
enum  E_SgFortranDo
 
enum  E_SgForAllStatement
 
enum  E_SgUpcForAllStatement
 
enum  E_SgCAFWithTeamStatement
 
enum  E_SgJavaForEachStatement
 
enum  E_SgJavaLabelStatement
 
enum  E_SgMatlabForStatement
 
enum  E_SgFunctionParameterScope
 
enum  E_SgRangeBasedForStatement
 
enum  E_SgJovialForThenStatement
 
enum  E_SgAdaAcceptStmt
 
enum  E_SgAdaPackageSpec
 
enum  E_SgAdaPackageBody
 
enum  E_SgAdaTaskSpec
 
enum  E_SgAdaTaskBody
 
enum  E_SgAdaProtectedBody
 
enum  E_SgAdaProtectedSpec
 
enum  E_SgAdaGenericDefn
 
enum  E_SgFunctionParameterList
 
enum  E_SgTemplateVariableDeclaration
 
enum  E_SgVariableDeclaration
 
enum  E_SgVariableDefinition
 
enum  E_SgEnumDeclaration
 
enum  E_SgAsmStmt
 
enum  E_SgTemplateInstantiationDirectiveStatement
 
enum  E_SgUseStatement
 
enum  E_SgNamespaceDeclarationStatement
 
enum  E_SgInterfaceStatement
 
enum  E_SgCommonBlock
 
enum  E_SgTemplateTypedefDeclaration
 
enum  E_SgTemplateInstantiationTypedefDeclaration
 
enum  E_SgTypedefDeclaration
 
enum  E_SgStatementFunctionStatement
 
enum  E_SgCtorInitializerList
 
enum  E_SgPragmaDeclaration
 
enum  E_SgTemplateClassDeclaration
 
enum  E_SgTemplateInstantiationDecl
 
enum  E_SgDerivedTypeStatement
 
enum  E_SgModuleStatement
 
enum  E_SgJavaPackageDeclaration
 
enum  E_SgJovialTableStatement
 
enum  E_SgClassDeclaration
 
enum  E_SgImplicitStatement
 
enum  E_SgTemplateFunctionDeclaration
 
enum  E_SgTemplateMemberFunctionDeclaration
 
enum  E_SgTemplateInstantiationMemberFunctionDecl
 
enum  E_SgMemberFunctionDeclaration
 
enum  E_SgTemplateInstantiationFunctionDecl
 
enum  E_SgProgramHeaderStatement
 
enum  E_SgProcedureHeaderStatement
 
enum  E_SgEntryStatement
 
enum  E_SgAdaEntryDecl
 
enum  E_SgAdaFunctionRenamingDecl
 
enum  E_SgFunctionDeclaration
 
enum  E_SgIncludeDirectiveStatement
 
enum  E_SgOmpThreadprivateStatement
 
enum  E_SgStmtDeclarationStatement
 
enum  E_SgStaticAssertionDeclaration
 
enum  E_SgOmpDeclareSimdStatement
 
enum  E_SgJovialOverlayDeclaration
 
enum  E_SgAdaPackageBodyDecl
 
enum  E_SgAdaPackageSpecDecl
 
enum  E_SgAdaRenamingDecl
 
enum  E_SgAdaTaskSpecDecl
 
enum  E_SgAdaTaskBodyDecl
 
enum  E_SgAdaTaskTypeDecl
 
enum  E_SgAdaProtectedSpecDecl
 
enum  E_SgAdaProtectedBodyDecl
 
enum  E_SgAdaProtectedTypeDecl
 
enum  E_SgAdaRepresentationClause
 
enum  E_SgAdaComponentClause
 
enum  E_SgAdaAttributeClause
 
enum  E_SgAdaEnumRepresentationClause
 
enum  E_SgAdaGenericDecl
 
enum  E_SgAdaFormalTypeDecl
 
enum  E_SgAdaDiscriminatedTypeDecl
 
enum  E_SgAdaGenericInstanceDecl
 
enum  E_SgAdaParameterList
 
enum  E_SgAdaVariantDecl
 
enum  E_SgExprStatement
 
enum  E_SgLabelStatement
 
enum  E_SgCaseOptionStmt
 
enum  E_SgTryStmt
 
enum  E_SgDefaultOptionStmt
 
enum  E_SgReturnStmt
 
enum  E_SgSpawnStmt
 
enum  E_SgForInitStatement
 
enum  E_SgCatchStatementSeq
 
enum  E_SgProcessControlStatement
 
enum  E_SgPrintStatement
 
enum  E_SgReadStatement
 
enum  E_SgWriteStatement
 
enum  E_SgOpenStatement
 
enum  E_SgCloseStatement
 
enum  E_SgInquireStatement
 
enum  E_SgFlushStatement
 
enum  E_SgBackspaceStatement
 
enum  E_SgRewindStatement
 
enum  E_SgEndfileStatement
 
enum  E_SgWaitStatement
 
enum  E_SgIOStatement
 
enum  E_SgWhereStatement
 
enum  E_SgElseWhereStatement
 
enum  E_SgNullifyStatement
 
enum  E_SgArithmeticIfStatement
 
enum  E_SgAssignStatement
 
enum  E_SgComputedGotoStatement
 
enum  E_SgAssignedGotoStatement
 
enum  E_SgAllocateStatement
 
enum  E_SgDeallocateStatement
 
enum  E_SgUpcNotifyStatement
 
enum  E_SgUpcWaitStatement
 
enum  E_SgUpcBarrierStatement
 
enum  E_SgOmpFlushStatement
 
enum  E_SgOmpMasterStatement
 
enum  E_SgOmpOrderedStatement
 
enum  E_SgOmpCriticalStatement
 
enum  E_SgOmpSectionStatement
 
enum  E_SgOmpWorkshareStatement
 
enum  E_SgOmpParallelStatement
 
enum  E_SgOmpSingleStatement
 
enum  E_SgOmpAtomicStatement
 
enum  E_SgOmpTaskStatement
 
enum  E_SgOmpForStatement
 
enum  E_SgOmpDoStatement
 
enum  E_SgOmpSectionsStatement
 
enum  E_SgOmpTargetStatement
 
enum  E_SgOmpTargetDataStatement
 
enum  E_SgOmpSimdStatement
 
enum  E_SgOmpForSimdStatement
 
enum  E_SgOmpClauseBodyStatement
 
enum  E_SgOmpBodyStatement
 
enum  E_SgWithStatement
 
enum  E_SgPythonPrintStmt
 
enum  E_SgAssertStmt
 
enum  E_SgExecStatement
 
enum  E_SgPythonGlobalStmt
 
enum  E_SgJavaSynchronizedStatement
 
enum  E_SgAsyncStmt
 
enum  E_SgFinishStmt
 
enum  E_SgAtStmt
 
enum  E_SgAtomicStmt
 
enum  E_SgWhenStmt
 
enum  E_SgSyncAllStatement
 
enum  E_SgSyncImagesStatement
 
enum  E_SgSyncMemoryStatement
 
enum  E_SgSyncTeamStatement
 
enum  E_SgLockStatement
 
enum  E_SgUnlockStatement
 
enum  E_SgImageControlStatement
 
enum  E_SgAdaExitStmt
 
enum  E_SgAdaDelayStmt
 
enum  E_SgAdaLoopStmt
 
enum  E_SgAdaSelectStmt
 
enum  E_SgAdaSelectAlternativeStmt
 
enum  E_SgAdaUnscopedBlock
 
enum  E_SgAdaVariantWhenStmt
 
enum  E_SgExpressionRoot
 
enum  E_SgMinusOp
 
enum  E_SgUnaryAddOp
 
enum  E_SgNotOp
 
enum  E_SgPointerDerefExp
 
enum  E_SgAddressOfOp
 
enum  E_SgMinusMinusOp
 
enum  E_SgPlusPlusOp
 
enum  E_SgBitComplementOp
 
enum  E_SgCastExp
 
enum  E_SgThrowOp
 
enum  E_SgRealPartOp
 
enum  E_SgImagPartOp
 
enum  E_SgConjugateOp
 
enum  E_SgUserDefinedUnaryOp
 
enum  E_SgMatrixTransposeOp
 
enum  E_SgAbsOp
 
enum  E_SgUnaryOp
 
enum  E_SgArrowExp
 
enum  E_SgDotExp
 
enum  E_SgDotStarOp
 
enum  E_SgArrowStarOp
 
enum  E_SgEqualityOp
 
enum  E_SgLessThanOp
 
enum  E_SgGreaterThanOp
 
enum  E_SgNotEqualOp
 
enum  E_SgLessOrEqualOp
 
enum  E_SgGreaterOrEqualOp
 
enum  E_SgAddOp
 
enum  E_SgSubtractOp
 
enum  E_SgMultiplyOp
 
enum  E_SgDivideOp
 
enum  E_SgIntegerDivideOp
 
enum  E_SgModOp
 
enum  E_SgAndOp
 
enum  E_SgOrOp
 
enum  E_SgBitXorOp
 
enum  E_SgBitAndOp
 
enum  E_SgBitOrOp
 
enum  E_SgBitEqvOp
 
enum  E_SgCommaOpExp
 
enum  E_SgLshiftOp
 
enum  E_SgRshiftOp
 
enum  E_SgPntrArrRefExp
 
enum  E_SgScopeOp
 
enum  E_SgAssignOp
 
enum  E_SgExponentiationOp
 
enum  E_SgJavaUnsignedRshiftOp
 
enum  E_SgConcatenationOp
 
enum  E_SgPointerAssignOp
 
enum  E_SgUserDefinedBinaryOp
 
enum  E_SgPlusAssignOp
 
enum  E_SgMinusAssignOp
 
enum  E_SgAndAssignOp
 
enum  E_SgIorAssignOp
 
enum  E_SgMultAssignOp
 
enum  E_SgDivAssignOp
 
enum  E_SgModAssignOp
 
enum  E_SgXorAssignOp
 
enum  E_SgLshiftAssignOp
 
enum  E_SgRshiftAssignOp
 
enum  E_SgJavaUnsignedRshiftAssignOp
 
enum  E_SgIntegerDivideAssignOp
 
enum  E_SgExponentiationAssignOp
 
enum  E_SgCompoundAssignOp
 
enum  E_SgMembershipOp
 
enum  E_SgSpaceshipOp
 
enum  E_SgNonMembershipOp
 
enum  E_SgIsOp
 
enum  E_SgIsNotOp
 
enum  E_SgDotDotExp
 
enum  E_SgElementwiseMultiplyOp
 
enum  E_SgElementwisePowerOp
 
enum  E_SgElementwiseLeftDivideOp
 
enum  E_SgElementwiseDivideOp
 
enum  E_SgElementwiseAddOp
 
enum  E_SgElementwiseSubtractOp
 
enum  E_SgElementwiseOp
 
enum  E_SgPowerOp
 
enum  E_SgLeftDivideOp
 
enum  E_SgRemOp
 
enum  E_SgReplicationOp
 
enum  E_SgAtOp
 
enum  E_SgBinaryOp
 
enum  E_SgListExp
 
enum  E_SgTupleExp
 
enum  E_SgMatrixExp
 
enum  E_SgExprListExp
 
enum  E_SgComplexVal
 
enum  E_SgCudaKernelCallExp
 
enum  E_SgFunctionCallExp
 
enum  E_SgCallExpression
 
enum  E_SgSizeOfOp
 
enum  E_SgUpcLocalsizeofExpression
 
enum  E_SgUpcBlocksizeofExpression
 
enum  E_SgUpcElemsizeofExpression
 
enum  E_SgJavaInstanceOfOp
 
enum  E_SgTypeIdOp
 
enum  E_SgConditionalExp
 
enum  E_SgNewExp
 
enum  E_SgDeleteExp
 
enum  E_SgAggregateInitializer
 
enum  E_SgCompoundInitializer
 
enum  E_SgConstructorInitializer
 
enum  E_SgAssignInitializer
 
enum  E_SgDesignatedInitializer
 
enum  E_SgBracedInitializer
 
enum  E_SgAdaAncestorInitializer
 
enum  E_SgVarArgStartOp
 
enum  E_SgVarArgOp
 
enum  E_SgVarArgEndOp
 
enum  E_SgVarArgCopyOp
 
enum  E_SgVarArgStartOneOperandOp
 
enum  E_SgSubscriptExpression
 
enum  E_SgImpliedDo
 
enum  E_SgIOItemExpression
 
enum  E_SgStatementExpression
 
enum  E_SgAsmOp
 
enum  E_SgActualArgumentExpression
 
enum  E_SgUnknownArrayOrFunctionReference
 
enum  E_SgCAFCoExpression
 
enum  E_SgCudaKernelExecConfig
 
enum  E_SgLambdaRefExp
 
enum  E_SgDictionaryExp
 
enum  E_SgKeyDatumPair
 
enum  E_SgComprehension
 
enum  E_SgListComprehension
 
enum  E_SgSetComprehension
 
enum  E_SgDictionaryComprehension
 
enum  E_SgNaryBooleanOp
 
enum  E_SgNaryComparisonOp
 
enum  E_SgNaryOp
 
enum  E_SgStringConversion
 
enum  E_SgYieldExpression
 
enum  E_SgAlignOfOp
 
enum  E_SgRangeExp
 
enum  E_SgJavaSingleMemberAnnotation
 
enum  E_SgJavaNormalAnnotation
 
enum  E_SgFunctionParameterRefExp
 
enum  E_SgLambdaExp
 
enum  E_SgHereExp
 
enum  E_SgAtExp
 
enum  E_SgFinishExp
 
enum  E_SgNoexceptOp
 
enum  E_SgFoldExpression
 
enum  E_SgAwaitExpression
 
enum  E_SgChooseExpression
 
enum  E_SgAdaAttributeExp
 
enum  E_SgJovialTablePresetExp
 
enum  E_SgJovialPresetPositionExp
 
enum  E_SgNonrealSymbol
 
enum  E_SgTemplateMemberFunctionSymbol
 
enum  E_SgMemberFunctionSymbol
 
enum  E_SgTemplateFunctionSymbol
 
enum  E_SgRenameSymbol
 
enum  E_SgAdaInheritedFunctionSymbol
 
enum  E_SgFunctionSymbol
 
enum  E_SgTemplateClassSymbol
 
enum  E_SgClassSymbol
 
enum  E_SgTemplateSymbol
 
enum  E_SgEnumSymbol
 
enum  E_SgTemplateTypedefSymbol
 
enum  E_SgTypedefSymbol
 
enum  E_SgLabelSymbol
 
enum  E_SgNamespaceSymbol
 
enum  E_SgModuleSymbol
 
enum  E_SgAliasSymbol
 
enum  E_SgJavaLabelSymbol
 
enum  E_SgAdaPackageSymbol
 
enum  E_SgAdaTaskSymbol
 
enum  E_SgAdaProtectedSymbol
 
enum  E_SgAdaRenamingSymbol
 
enum  E_SgAdaGenericSymbol
 
enum  E_SgAdaGenericInstanceSymbol
 
enum  E_SgAdaFormalPackageSymbol
 
enum  E_SgAsmCilMetadataHeap
 
enum  E_SgAsmCilAssemblyOSTable
 
enum  E_SgAsmCilAssemblyProcessorTable
 
enum  E_SgAsmCilAssemblyRefOSTable
 
enum  E_SgAsmCilAssemblyRefProcessorTable
 
enum  E_SgAsmCilAssemblyRefTable
 
enum  E_SgAsmCilAssemblyTable
 
enum  E_SgAsmCilClassLayoutTable
 
enum  E_SgAsmCilConstantTable
 
enum  E_SgAsmCilCustomAttributeTable
 
enum  E_SgAsmCilDeclSecurityTable
 
enum  E_SgAsmCilEventMapTable
 
enum  E_SgAsmCilEventTable
 
enum  E_SgAsmCilExportedTypeTable
 
enum  E_SgAsmCilFieldLayoutTable
 
enum  E_SgAsmCilFieldMarshalTable
 
enum  E_SgAsmCilFieldRVATable
 
enum  E_SgAsmCilFieldTable
 
enum  E_SgAsmCilFileTable
 
enum  E_SgAsmCilGenericParamConstraintTable
 
enum  E_SgAsmCilGenericParamTable
 
enum  E_SgAsmCilImplMapTable
 
enum  E_SgAsmCilInterfaceImplTable
 
enum  E_SgAsmCilManifestResourceTable
 
enum  E_SgAsmCilMemberRefTable
 
enum  E_SgAsmCilMethodDefTable
 
enum  E_SgAsmCilMethodImplTable
 
enum  E_SgAsmCilMethodSemanticsTable
 
enum  E_SgAsmCilMethodSpecTable
 
enum  E_SgAsmCilModuleRefTable
 
enum  E_SgAsmCilModuleTable
 
enum  E_SgAsmCilNestedClassTable
 
enum  E_SgAsmCilParamTable
 
enum  E_SgAsmCilPropertyMapTable
 
enum  E_SgAsmCilPropertyTable
 
enum  E_SgAsmCilStandAloneSigTable
 
enum  E_SgAsmCilTypeDefTable
 
enum  E_SgAsmCilTypeRefTable
 
enum  E_SgAsmCilTypeSpecTable
 
enum  E_SgAsmCilMetadataRoot
 
enum  E_SgAsmCoffSymbolList
 
enum  E_SgAsmDwarfCompilationUnitList
 
enum  E_SgAsmDwarfArrayType
 
enum  E_SgAsmDwarfClassType
 
enum  E_SgAsmDwarfCommonBlock
 
enum  E_SgAsmDwarfCompilationUnit
 
enum  E_SgAsmDwarfEnumerationType
 
enum  E_SgAsmDwarfInlinedSubroutine
 
enum  E_SgAsmDwarfLexicalBlock
 
enum  E_SgAsmDwarfNamespace
 
enum  E_SgAsmDwarfStructureType
 
enum  E_SgAsmDwarfSubprogram
 
enum  E_SgAsmDwarfSubroutineType
 
enum  E_SgAsmDwarfUnionType
 
enum  E_SgAsmDwarfConstructList
 
enum  E_SgAsmDwarfLineList
 
enum  E_SgAsmDwarfMacroList
 
enum  E_SgAsmElfDynamicEntry
 
enum  E_SgAsmElfEHFrameEntryCI
 
enum  E_SgAsmElfNoteEntry
 
enum  E_SgAsmElfRelocEntryList
 
enum  E_SgAsmElfSegmentTableEntryList
 
enum  E_SgAsmElfSymbolList
 
enum  E_SgAsmElfSymverDefinedAux
 
enum  E_SgAsmElfSymverDefinedAuxList
 
enum  E_SgAsmElfSymverDefinedEntry
 
enum  E_SgAsmElfSymverDefinedEntryList
 
enum  E_SgAsmElfSymverEntryList
 
enum  E_SgAsmElfSymverNeededAux
 
enum  E_SgAsmElfSymverNeededAuxList
 
enum  E_SgAsmElfSymverNeededEntry
 
enum  E_SgAsmElfSymverNeededEntryList
 
enum  E_SgAsmGenericDLL
 
enum  E_SgAsmGenericFile
 
enum  E_SgAsmGenericHeaderList
 
enum  E_SgAsmCliHeader
 
enum  E_SgAsmCoffSymbolTable
 
enum  E_SgAsmElfDynamicSection
 
enum  E_SgAsmElfEHFrameSection
 
enum  E_SgAsmElfNoteSection
 
enum  E_SgAsmElfRelocSection
 
enum  E_SgAsmElfStringSection
 
enum  E_SgAsmElfSymbolSection
 
enum  E_SgAsmElfSymverDefinedSection
 
enum  E_SgAsmElfSymverNeededSection
 
enum  E_SgAsmElfSymverSection
 
enum  E_SgAsmElfSection
 
enum  E_SgAsmDOSFileHeader
 
enum  E_SgAsmElfFileHeader
 
enum  E_SgAsmJvmFileHeader
 
enum  E_SgAsmLEFileHeader
 
enum  E_SgAsmNEFileHeader
 
enum  E_SgAsmPEFileHeader
 
enum  E_SgAsmGenericHeader
 
enum  E_SgAsmJvmAttributeTable
 
enum  E_SgAsmJvmFieldTable
 
enum  E_SgAsmJvmMethodTable
 
enum  E_SgAsmLEEntryTable
 
enum  E_SgAsmLEPageTable
 
enum  E_SgAsmLERelocTable
 
enum  E_SgAsmLESection
 
enum  E_SgAsmNEEntryTable
 
enum  E_SgAsmNEModuleTable
 
enum  E_SgAsmNERelocTable
 
enum  E_SgAsmNESection
 
enum  E_SgAsmPEExportSection
 
enum  E_SgAsmPEImportSection
 
enum  E_SgAsmPEStringSection
 
enum  E_SgAsmPESection
 
enum  E_SgAsmGenericSectionList
 
enum  E_SgAsmCoffSymbol
 
enum  E_SgAsmElfSymbol
 
enum  E_SgAsmGenericSymbol
 
enum  E_SgAsmLEEntryPoint
 
enum  E_SgAsmPEExportDirectory
 
enum  E_SgAsmPEExportEntry
 
enum  E_SgAsmPEExportEntryList
 
enum  E_SgAsmPEImportDirectory
 
enum  E_SgAsmPEImportDirectoryList
 
enum  E_SgAsmPEImportItem
 
enum  E_SgAsmPEImportItemList
 
enum  E_SgAsmPERVASizePairList
 
enum  E_SgAsmBinaryAdd
 
enum  E_SgAsmBinaryAsr
 
enum  E_SgAsmBinaryConcat
 
enum  E_SgAsmBinaryDivide
 
enum  E_SgAsmBinaryLsl
 
enum  E_SgAsmBinaryLsr
 
enum  E_SgAsmBinaryMod
 
enum  E_SgAsmBinaryMsl
 
enum  E_SgAsmBinaryMultiply
 
enum  E_SgAsmBinaryPostupdate
 
enum  E_SgAsmBinaryPreupdate
 
enum  E_SgAsmBinaryRor
 
enum  E_SgAsmBinarySubtract
 
enum  E_SgAsmBinaryExpression
 
enum  E_SgAsmCommonSubExpression
 
enum  E_SgAsmExprListExp
 
enum  E_SgAsmMemoryReferenceExpression
 
enum  E_SgAsmRegisterNames
 
enum  E_SgAsmRiscOperation
 
enum  E_SgAsmUnaryMinus
 
enum  E_SgAsmUnaryPlus
 
enum  E_SgAsmUnaryRrx
 
enum  E_SgAsmUnarySignedExtend
 
enum  E_SgAsmUnaryTruncate
 
enum  E_SgAsmUnaryUnsignedExtend
 
enum  E_SgAsmUnaryExpression
 
enum  E_SgAsmFloatValueExpression
 
enum  E_SgAsmIntegerValueExpression
 
enum  E_SgAsmConstantExpression
 
enum  E_SgAsmValueExpression
 
enum  E_SgAsmGenericFileList
 
enum  E_SgAsmInterpretation
 
enum  E_SgAsmInterpretationList
 
enum  E_SgAsmJvmField
 
enum  E_SgAsmJvmMethod
 
enum  E_SgAsmOperandList
 
enum  E_SgAsmBlock
 
enum  E_SgAsmCilInstruction
 
enum  E_SgAsmJvmInstruction
 
enum  E_SgAsmM68kInstruction
 
enum  E_SgAsmMipsInstruction
 
enum  E_SgAsmNullInstruction
 
enum  E_SgAsmPowerpcInstruction
 
enum  E_SgAsmX86Instruction
 
enum  E_SgAsmInstruction
 
enum  E_SgAsmFunction
 
typedef StackFrameVector< DummyAttribute > SynthesizedAttributesList
 

Public Member Functions

void traverse (SgNode *node, Order treeTraversalOrder)
 traverse the entire AST. Order defines preorder (preorder) or postorder (postorder) traversal. Default is 'preorder'. More...
 
void traverseWithinFile (SgNode *node, Order treeTraversalOrder)
 traverse only nodes which represent the same file as where the traversal was started
 
void traverseInputFiles (SgProject *projectNode, Order treeTraversalOrder)
 traverse only nodes which represent files which were specified on the command line (=input files). More...
 
- Public Member Functions inherited from SgTreeTraversal< DummyAttribute, DummyAttribute >
DummyAttribute traverse (SgNode *basenode, DummyAttribute inheritedValue, t_traverseOrder travOrder=preandpostorder)
 
DummyAttribute traverseWithinFile (SgNode *basenode, DummyAttribute inheritedValue, t_traverseOrder travOrder=preandpostorder)
 
void traverseInputFiles (SgProject *projectNode, DummyAttribute inheritedValue, t_traverseOrder travOrder=preandpostorder)
 
 SgTreeTraversal (const SgTreeTraversal &)
 
const SgTreeTraversaloperator= (const SgTreeTraversal &)
 

Protected Member Functions

virtual void visit (SgNode *astNode)=0
 this method is called at every traversed node.
 
virtual void atTraversalStart ()
 GB (06/04/2007): A new virtual function called at the start of the traversal, before any node is actually visited; can be used to perform a "last-minute" computation of attributes that may have changed since the constructor was executed, but are constant during the traversal itself. More...
 
virtual void atTraversalEnd ()
 
- Protected Member Functions inherited from SgTreeTraversal< DummyAttribute, DummyAttribute >
virtual void setNodeSuccessors (SgNode *node, SuccessorsContainer &succContainer)
 
void set_useDefaultIndexBasedTraversal (bool)
 

Additional Inherited Members

- Protected Types inherited from SgTreeTraversal< DummyAttribute, DummyAttribute >
typedef AstSuccessorsSelectors::SuccessorsContainer SuccessorsContainer
 
typedef SuccessorsContainer & SuccessorsContainerRef
 

Member Function Documentation

AstSimpleProcessing::traverse ( SgNode node,
Order  treeTraversalOrder 
)

traverse the entire AST. Order defines preorder (preorder) or postorder (postorder) traversal. Default is 'preorder'.

Function to start the traversal on the subtree defined by node.

This is the call to start the traversal on the subtree defined by node.

Parameters
noderepresents the root of the subtree in the AST
treeTraversalOrderrepresents the traversal order (preorder or postorder).
AstSimpleProcessing::traverseInputFiles ( SgProject projectNode,
Order  treeTraversalOrder 
)

traverse only nodes which represent files which were specified on the command line (=input files).

Function to start the traversal on the subtree defined by root (skip and nodes from other files).

This is the call to start the traversal on the subtree defined by root. This function will cause AST nodes that have a source position in any other files to be skipped (skips all header files for example).

Parameters
projectNoderepresents the root of the subtree in the AST
treeTraversalOrderrepresents the traversal order (preorder or postorder).
virtual void AstSimpleProcessing::atTraversalStart ( )
protectedvirtual

GB (06/04/2007): A new virtual function called at the start of the traversal, before any node is actually visited; can be used to perform a "last-minute" computation of attributes that may have changed since the constructor was executed, but are constant during the traversal itself.

A no-op by default.

Reimplemented from SgTreeTraversal< DummyAttribute, DummyAttribute >.

Reimplemented in AstCombinedSimpleProcessing.


The documentation for this class was generated from the following files: