template<class InheritedAttributeType, class SynthesizedAttributeType>
class AstCombinedTopDownBottomUpProcessing< InheritedAttributeType, SynthesizedAttributeType >
Definition at line 66 of file AstCombinedProcessing.h.
|
|
typedef AstTopDownBottomUpProcessing< InheritedAttributeType, SynthesizedAttributeType > | TraversalType |
| |
|
typedef TraversalType * | TraversalPtr |
| |
|
typedef std::vector< TraversalPtr > | TraversalPtrList |
| |
|
typedef std::vector< InheritedAttributeType > | InheritedAttributeTypeList |
| |
|
typedef std::vector< SynthesizedAttributeType > | SynthesizedAttributeTypeList |
| |
|
typedef AstTopDownBottomUpProcessing< std::vector< InheritedAttributeType > *, std::vector< SynthesizedAttributeType > * > | Superclass |
| |
|
typedef Superclass::SynthesizedAttributesList | SynthesizedAttributesList |
| |
|
typedef SgTreeTraversal< std::vector< InheritedAttributeType > *, std::vector< SynthesizedAttributeType > * >::SynthesizedAttributesList | SynthesizedAttributesList |
| |
|
typedef SynthesizedAttributesList | SubTreeSynthesizedAttributes |
| |
|
typedef StackFrameVector< std::vector< SynthesizedAttributeType > * > | SynthesizedAttributesList |
| |
|
|
| AstCombinedTopDownBottomUpProcessing () |
| | default constructor
|
| |
|
| AstCombinedTopDownBottomUpProcessing (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.)
|
| |
|
std::vector< SynthesizedAttributeType > * | traverse (SgNode *node, std::vector< InheritedAttributeType > * inheritedValue) |
| | evaluates attributes on the entire AST
|
| |
|
std::vector< SynthesizedAttributeType > * | traverseWithinFile (SgNode *node, std::vector< InheritedAttributeType > * inheritedValue) |
| | evaluates attributes only at nodes which represent the same file as where the evaluation was started
|
| |
|
std::vector< SynthesizedAttributeType > * | traverse (SgNode *basenode, std::vector< InheritedAttributeType > * inheritedValue, t_traverseOrder travOrder=preandpostorder) |
| |
|
std::vector< SynthesizedAttributeType > * | traverseWithinFile (SgNode *basenode, std::vector< InheritedAttributeType > * inheritedValue, t_traverseOrder travOrder=preandpostorder) |
| |
|
void | traverseInputFiles (SgProject *projectNode, std::vector< InheritedAttributeType > * inheritedValue, t_traverseOrder travOrder=preandpostorder) |
| |
|
| SgTreeTraversal (const SgTreeTraversal &) |
| |
|
const SgTreeTraversal & | operator= (const SgTreeTraversal &) |
| |
|
|
virtual InheritedAttributeTypeList * | evaluateInheritedAttribute (SgNode *astNode, InheritedAttributeTypeList *inheritedValues) |
| | pure virtual function which must be implemented to compute the inherited attribute at a node
|
| |
|
virtual SynthesizedAttributeTypeList * | evaluateSynthesizedAttribute (SgNode *astNode, InheritedAttributeTypeList *inheritedValues, SynthesizedAttributesList synthesizedAttributes) |
| |
|
virtual SynthesizedAttributeTypeList * | defaultSynthesizedAttribute (InheritedAttributeTypeList *) |
| |
|
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 () |
| |
| virtual std::vector< SynthesizedAttributeType > * | evaluateSynthesizedAttribute (SgNode *, std::vector< InheritedAttributeType > *, SynthesizedAttributesList)=0 |
| | pure virtual function which must be implemented to compute the synthesized attribute at a node. More...
|
| |
|
virtual void | setNodeSuccessors (SgNode *node, SuccessorsContainer &succContainer) |
| |
|
void | set_useDefaultIndexBasedTraversal (bool) |
| |