ROSE 0.11.145.192
AstNodePtrs.h
1// Author: Markus Schordan
2// $Id: AstNodePtrs.h,v 1.3 2008/01/08 02:56:38 dquinlan Exp $
3
4#ifndef ASTNODEPTRS_H
5#define ASTNODEPTRS_H
6
7#include <string>
8#include <iomanip>
9#include "AstProcessing.h"
10
11// DQ (8/10/2004):
12// This class appears to return a list of all traversed AST nodes. It is equivalent to the
13// AstQuery operator with the input variant V_SgNode. Not sure how important this mechanism
14// is (appears to be used in ASTConsistencyTests.[Ch]).
15
17 {
18 SgNode* node;
19 AstNodePtrSynAttr() { node = NULL; }
20 };
21
22class AstNodePtrs : public SgBottomUpProcessing<AstNodePtrSynAttr>
23 {
24 public:
27 protected:
28 typedef std::vector<SgNode*> AstNodePointersList;
29 virtual AstNodePtrSynAttr evaluateSynthesizedAttribute(SgNode* node, SynthesizedAttributesList );
30 virtual void visitWithAstNodePointersList(SgNode*, AstNodePointersList) {}
31 private:
32 };
33
34#endif
virtual AstNodePtrSynAttr evaluateSynthesizedAttribute(SgNode *node, SynthesizedAttributesList)
pure virtual function which must be implemented to compute the synthesized attribute at a node.
This class represents the base class for all IR nodes within Sage III.