Template Class SgTreeTraversal#

Inheritance Relationships#

Derived Types#

Class Documentation#

template<class InheritedAttributeType, class SynthesizedAttributeType>
class SgTreeTraversal#

Subclassed by AstBottomUpProcessing< std::vector< SynthesizedAttributeType > * >, AstBottomUpProcessing< AstNodePtrSynAttr >, AstBottomUpProcessing< std::vector< SgInitializedName * > * >, AstBottomUpProcessing< ConstantUnFoldingSynthesizedAttribute >, AstBottomUpProcessing< DS >, AstBottomUpProcessing< TestAstPropertiesSA >, AstBottomUpProcessing< ChildUses >, AstBottomUpProcessing< VariableRenaming::VarRefSynthAttr >, AstTopDownBottomUpProcessing< _DummyAttribute, _DummyAttribute >, AstTopDownBottomUpProcessing< AddIncludeDirectivesInheritedAttribute, AddIncludeDirectivesSynthesizedAttribute >, AstTopDownBottomUpProcessing< std::vector< InheritedAttributeType > *, std::vector< SynthesizedAttributeType > * >, AstTopDownBottomUpProcessing< DOTInheritedAttribute, DOTSynthesizedAttribute >, AstTopDownBottomUpProcessing< AttachPreprocessingInfoTreeTraversalInheritedAttrribute, AttachPreprocessingInfoTreeTraversalSynthesizedAttribute >, AstTopDownBottomUpProcessing< BooleanQueryInheritedAttributeType, BooleanQuerySynthesizedAttributeType >, AstTopDownBottomUpProcessing< ConstantFoldingInheritedAttribute, ConstantFoldingSynthesizedAttribute >, AstTopDownBottomUpProcessing< BooleanSafeKeeper, BooleanSafeKeeper >, AstTopDownBottomUpProcessing< DetectMacroOrIncludeFileExpansionsInheritedAttribute, DetectMacroOrIncludeFileExpansionsSynthesizedAttribute >, AstTopDownBottomUpProcessing< DI, DS >, AstTopDownBottomUpProcessing< FixupInitializersUsingIncludeFilesInheritedAttribute, FixupInitializersUsingIncludeFilesSynthesizedAttribute >, AstTopDownBottomUpProcessing< FixupSourcePositionInformationInheritedAttribute, FixupSourcePositionInformationSynthesizedAttribute >, AstTopDownBottomUpProcessing< FrontierDetectionForTokenStreamMapping_InheritedAttribute, FrontierDetectionForTokenStreamMapping_SynthesizedAttribute >, AstTopDownBottomUpProcessing< FunctionCallInheritedAttribute, bool >, AstTopDownBottomUpProcessing< HiddenListInheritedAttribute, HiddenListSynthesizedAttribute >, AstTopDownBottomUpProcessing< InheritedAttribute, SynthesizedAttribute >, AstTopDownBottomUpProcessing< MarkTemplateInstantiationsForOutputSupportInheritedAttribute, MarkTemplateInstantiationsForOutputSupportSynthesizedAttribute >, AstTopDownBottomUpProcessing< NameQualificationInheritedAttribute, NameQualificationSynthesizedAttribute >, AstTopDownBottomUpProcessing< SimpleFrontierDetectionForTokenStreamMapping_InheritedAttribute, SimpleFrontierDetectionForTokenStreamMapping_SynthesizedAttribute >, AstTopDownProcessing< AddPrototypesForTemplateInstantiationsInheritedAttribute >, AstTopDownProcessing< std::vector< InheritedAttributeType > * >, AstTopDownProcessing< ClangToDotNextPreprocessorToInsert * >, AstTopDownProcessing< DI >, AstTopDownProcessing< FixupFunctionDefaultArgumentsInheritedAttribute >, AstTopDownProcessing< FixupPrettyFunctionVariablesInheritedAttribute >, AstTopDownProcessing< LinearizeInheritedAttribute >, AstTopDownProcessing< MarkSharedDeclarationsInheritedAttribute >, AstTopDownProcessing< MarkTemplateSpecializationsForOutputInheritedAttribute >, AstTopDownProcessing< MarkTransformationsForOutputInheritedAttribute >, AstTopDownProcessing< PDFInheritedAttribute >, AstTopDownProcessing< NextPreprocessorToInsert * >, AstTopDownProcessing< PropagateHiddenListDataInheritedAttribute >, AstTopDownProcessing< RemoveInitializedNamePtrInheritedAttribute >, AstTopDownProcessing< ResetParentPointersInheritedAttribute >, AstTopDownProcessing< SimpleColorFilesInheritedAttribute >, AstTopDownProcessing< TestForProperLanguageAndSymbolTableCaseSensitivity_InheritedAttribute >, AstTopDownBottomUpProcessing< InheritedAttributeType, SynthesizedAttributeType >

Public Types

typedef StackFrameVector<SynthesizedAttributeType> SynthesizedAttributesList#

Public Functions

SynthesizedAttributeType traverse(SgNode *basenode, InheritedAttributeType inheritedValue, t_traverseOrder travOrder = preandpostorder)#
SynthesizedAttributeType traverseWithinFile(SgNode *basenode, InheritedAttributeType inheritedValue, t_traverseOrder travOrder = preandpostorder)#
void traverseInputFiles(SgProject *projectNode, InheritedAttributeType inheritedValue, t_traverseOrder travOrder = preandpostorder)#
virtual ~SgTreeTraversal()#
SgTreeTraversal()#
SgTreeTraversal(const SgTreeTraversal&)#
const SgTreeTraversal &operator=(const SgTreeTraversal&)#

Protected Types

typedef AstSuccessorsSelectors::SuccessorsContainer SuccessorsContainer#
typedef SuccessorsContainer &SuccessorsContainerRef#

Protected Functions

virtual InheritedAttributeType evaluateInheritedAttribute(SgNode *astNode, InheritedAttributeType inheritedValue) = 0#
virtual SynthesizedAttributeType evaluateSynthesizedAttribute(SgNode *n, InheritedAttributeType in, SynthesizedAttributesList l) = 0#
virtual void setNodeSuccessors(SgNode *node, SuccessorsContainer &succContainer)#
virtual SynthesizedAttributeType defaultSynthesizedAttribute(InheritedAttributeType inh)#
virtual void atTraversalStart()#
virtual void atTraversalEnd()#
void set_useDefaultIndexBasedTraversal(bool)#

Friends

friend class SgCombinedTreeTraversal< InheritedAttributeType, SynthesizedAttributeType >