Template Class AstCombinedBottomUpProcessing#
Defined in File AstCombinedProcessing.h
Inheritance Relationships#
Base Type#
public AstBottomUpProcessing< std::vector< SynthesizedAttributeType > * >(Template Class AstBottomUpProcessing)
Derived Types#
public AstSharedMemoryParallelBottomUpProcessing< SynthesizedAttributeType >(Template Class AstSharedMemoryParallelBottomUpProcessing)public AstSharedMemoryParallelizableBottomUpProcessing< SynthesizedAttributeType >(Template Class AstSharedMemoryParallelizableBottomUpProcessing)
Class Documentation#
-
template<class SynthesizedAttributeType>
class AstCombinedBottomUpProcessing : public AstBottomUpProcessing<std::vector<SynthesizedAttributeType>*># Subclassed by AstSharedMemoryParallelBottomUpProcessing< SynthesizedAttributeType >, AstSharedMemoryParallelizableBottomUpProcessing< SynthesizedAttributeType >
Public Types
-
typedef AstBottomUpProcessing<SynthesizedAttributeType> TraversalType#
-
typedef TraversalType *TraversalPtr#
-
typedef std::vector<TraversalPtr> TraversalPtrList#
-
typedef std::vector<SynthesizedAttributeType> SynthesizedAttributeTypeList#
-
typedef AstBottomUpProcessing<SynthesizedAttributeTypeList*> Superclass#
-
typedef Superclass::SynthesizedAttributesList SynthesizedAttributesList#
Public Functions
-
AstCombinedBottomUpProcessing()#
default constructor
-
AstCombinedBottomUpProcessing(const TraversalPtrList&)#
constructor that makes an internal copy of an existing list of traversals
-
void addTraversal(TraversalPtr)#
simple function for adding a traversal to the internal list
-
TraversalPtrList &get_traversalPtrListRef()#
function for obtaining a reference to the internal list of traversals, you can use this for any container operations you like (deleting elements etc.)
Protected Functions
-
virtual SynthesizedAttributeTypeList *evaluateSynthesizedAttribute(SgNode *astNode, SynthesizedAttributesList synthesizedAttributes)#
-
virtual SynthesizedAttributeTypeList *defaultSynthesizedAttribute()#
Allows to provide a default value for a synthesized attribute of primitive type (e.g. int, bool, etc.). If a class is used as type for a synthesized attribute the default constructor of this class is sufficient and this function does not have be implemented.
-
virtual void atTraversalStart()#
Function called at the start of the traversal, before any node is visited; override if necessary, the default implementation is a no-op.
-
virtual void atTraversalEnd()#
Protected Attributes
-
TraversalPtrList traversals#
-
typedef AstBottomUpProcessing<SynthesizedAttributeType> TraversalType#