#include <ast.h>
Inheritance diagram for targetNode::
Public Methods | |
targetNode (NodeType typ, stmtNode *stmt, const Coord coord) | |
Create a new target node. More... | |
virtual | ~targetNode () |
Destroy a targetNode. More... | |
Accessors | |
Methods to get and set fields in the class. | |
blockNode * | stmt () const |
blockNode * | get_stmt () |
void | stmt (blockNode *stmt) |
FlowVal * | at_entry () const |
void | at_entry (FlowVal *ae) |
Private Attributes | |
TREE blockNode * | _stmt |
the target statement. More... | |
FlowVal * | _at_entry |
dataflow analysis entry value. More... |
This class provides a base class for all statements that serve as targets for jumps. This includes the regular goto labels, as well as the switch cases and default. Note that in C, all labels refer to a statement. Syntactically, the labelled statement in the child of the label. For example, "case 5: x = 10; " results in a labelNode that has an exprstmtNode as it's child.
The NodeType is determined by the subclass (either Label, Case, or Default).
|
Create a new target node. The new node has the given type and target statement.
|
|
Destroy a targetNode.
|
|
|
|
|
|
|
|
|
|
|
|
dataflow analysis entry value. This field is used by the dataflow analysis framework to accumulate the flow-value coming in from the various jump statements. |
|
the target statement.
|