10 #include "roseInternal.h" 
   31   typedef size_t size_type;
 
  152     bool is_past_the_end() 
const;
 
  154     std::string current_node_id() 
const;
 
  156     std::string parent_node_id() 
const;
 
  158     void print_top_element() 
const;
 
  165     bool _skipChildrenOnForward;
 
  166     bool _withNullValues;
 
  170     static const int ROOT_NODE_INDEX=-2;
 
  172     typedef struct {
SgNode* node; 
int index;} stack_element;
 
  173     std::stack<stack_element> _stack;
 
  174     SgNode* access_node_by_parent_and_index(
SgNode* p, 
int index) 
const;
 
  177     int num_children(
SgNode* p) 
const;
 
  193   std::list<SgFunctionDeclaration*> findFunctionDeclarationsByName(std::string name);
 
  202 static bool isSubTypeOf(VariantT DerivedClassVariant, VariantT BaseClassVariant);
 
  204 static bool isSubType(VariantT DerivedClassVariant, VariantT BaseClassVariant);
 
  205  void setWithNullValues(
bool flag);
 
  206  void setWithTemplates(
bool flag);
 
  212   bool _withNullValues;
 
  
static bool isSubTypeOf(VariantT DerivedClassVariant, VariantT BaseClassVariant)
determines based on VariantT whether a ROSE-AST node is a subtype of another node type.
 
bool operator!=(const iterator &x) const
Test iterator inequality.
 
SgNode * operator*() const
Dereference an iterator.
 
iterator & operator++()
Advance the iterator.
 
iterator begin()
Iterator positioned at root of subtree.
 
void skipChildrenOnForward()
Cause children to be skipped on the next advancement.
 
Interface for iterating over an AST.
 
RoseAst(SgNode *astNode)
Defines the starting node for traversal.
 
iterator & withoutNullValues()
Mode to enable or disable skipping null child pointers.
 
bool operator==(const iterator &x) const
Test iterator equality.
 
static bool isTemplateInstantiationNode(SgNode *node)
determines whether a node is used to represent the root node of a template instantiation
 
This class represents the base class for all IR nodes within Sage III.
 
int stack_size() const
Depth of traversal.
 
SgNode * parent() const
Parent AST node relative to the iteration.
 
static bool isTemplateNode(SgNode *node)
determines whether a node is used to represent the root node of a template.
 
This class represents the concept of a scope in C++ (e.g. global scope, fuction scope,...
 
iterator & withNullValues()
Mode to enable or disable skipping null child pointers.
 
iterator end()
Iterator positioned at the end of the traversal.
 
bool is_at_first_child() const
Test whether iterator is at the first child of its parent.
 
bool is_at_root() const
Test whether iterator is pointing to root node of AST to be traversed.
 
iterator()
Default constructor.
 
bool is_at_last_child() const
Test whether iterator as at the last child of its parent.
 
static bool isSubType(VariantT DerivedClassVariant, VariantT BaseClassVariant)
deprecated, use isSubTypeOf instead