ROSE  0.9.9.109
Public Member Functions | List of all members
AbstractHandle::abstract_handle Class Reference

Description

to specify a construct using a specifier Can be used alone or with parent handles when relative specifiers are used

Definition at line 182 of file abstract_handle.h.

#include <abstract_handle.h>

Public Member Functions

 abstract_handle ()
 Constructors.
 
 abstract_handle (abstract_node *node)
 Create a handle from a node, using the source position as the specifier by default Or use name if source position is not available, then use numbering as the final resort. More...
 
 abstract_handle (abstract_node *node, specifier_type_t stype, specifier_value_t svalue, abstract_handle *p_handle=NULL)
 Create a handle from an optional parent handle, with explicit type and numbering information available. More...
 
 abstract_handle (abstract_node *node, specifier_type_t stype, abstract_handle *p_handle=NULL)
 Create a handle using specified type, automatically fill out the corresponding value Most useful to create a numbering or name specifier within another handle It also tries its best to recursively generate parent handles using the given specifier type if parent_handle is not provided in the parameter list. More...
 
 abstract_handle (abstract_handle *phandle, const std::string &handle_string)
 construct a handle from a handle string within the scope of an existing handle e.g: <SourceFile<name,/home/liao6/names.cpp> will create a corresponding file handle
 
virtual std::string get_construct_type_name ()
 the language construct type name
 
virtual std::string toString ()
 Output the handle to a string, including all parent handles.
 
virtual void fromString (abstract_handle *ancester_handle, const std::string &handle_str_multiple)
 Initialize a handle from a handle string, generate full parent handles when necessary.
 
virtual std::string toStringSelf ()
 Only output the handle itself to a string, excluding parent handles.
 
virtual void fromStringSelf (abstract_handle *p_handle, const std::string &handle_str_item)
 Instantiate a handle using a handle element's string (a single handle only),the handle refers to a node under a parent.
 
virtual abstract_nodegetNode () const
 
specifierget_specifier ()
 allow multiple specifiers or not?
 
abstract_handleget_parent_handle ()
 
void set_parent_handle (abstract_handle *parent)
 
bool operator== (const abstract_handle &x) const
 operator ==
 

Constructor & Destructor Documentation

AbstractHandle::abstract_handle::abstract_handle ( abstract_node node)

Create a handle from a node, using the source position as the specifier by default Or use name if source position is not available, then use numbering as the final resort.

AbstractHandle::abstract_handle::abstract_handle ( abstract_node node,
specifier_type_t  stype,
specifier_value_t  svalue,
abstract_handle p_handle = NULL 
)

Create a handle from an optional parent handle, with explicit type and numbering information available.

It also tries its best to recursively generate parent handles using the given specifier type if parent_handle is not provided in the parameter list.

AbstractHandle::abstract_handle::abstract_handle ( abstract_node node,
specifier_type_t  stype,
abstract_handle p_handle = NULL 
)

Create a handle using specified type, automatically fill out the corresponding value Most useful to create a numbering or name specifier within another handle It also tries its best to recursively generate parent handles using the given specifier type if parent_handle is not provided in the parameter list.


The documentation for this class was generated from the following file: