statement_until Class Reference

#include <until.h>

Inheritance diagram for statement_until:

statement statement_until_compile statement_until_pretty List of all members.

Public Member Functions

virtual ~statement_until ()
 statement_until (const statement::pointer &body, const expression::pointer &condition, translator *cntxt)
void traversal ()
bool execution_flows_out () const

Protected Member Functions

virtual void pre_order_traversal ()
virtual void until_order_traversal ()
virtual void post_order_traversal ()

Private Member Functions

 statement_until ()
 statement_until (const statement_until &)
statement_untiloperator= (const statement_until &)

Private Attributes

translatorxlat
statement::pointer body
expression::pointer condition

Detailed Description

The statement_until class is used to represent an abstract WHILE loop statement.

Definition at line 33 of file until.h.


Constructor & Destructor Documentation

virtual statement_until::~statement_until (  )  [virtual]

The destructor.

statement_until::statement_until ( const statement::pointer body,
const expression::pointer condition,
translator cntxt 
)

The constructor.

statement_until::statement_until (  )  [private]

The default constructor. Do not use.

statement_until::statement_until ( const statement_until  )  [private]

The copy constructor. Do not use.


Member Function Documentation

void statement_until::traversal (  )  [virtual]

The traversal method may be used to traverse each of the statements in the list.

Implements statement.

bool statement_until::execution_flows_out (  )  const [virtual]

The execution_flows_out method may be used to determine whether the flow of execution, having entered this statement, can ever flow out again.

Returns:
true if exection flows out, false if it does not.
Note:
Where the answer is indeterminate, true is returned.

Implements statement.

virtual void statement_until::pre_order_traversal (  )  [protected, virtual]

The pre_order_traversal method is called by the traversal method immediately before the body statement is traversed.

Reimplemented in statement_until_pretty.

virtual void statement_until::until_order_traversal (  )  [protected, virtual]

The until_order_traversal method is called by the traversal method after the body statement is traversed and before the condition expression is traversed.

Reimplemented in statement_until_pretty.

virtual void statement_until::post_order_traversal (  )  [protected, virtual]

The post_order_traversal method is called by the traversal method after the condition expression is traversed.

Reimplemented in statement_until_pretty.

statement_until& statement_until::operator= ( const statement_until  )  [private]

The assignment operator. Do not use.


Member Data Documentation

translator& statement_until::xlat [private]

The xlat instance variable is used to remember where to get labels from.

Definition at line 79 of file until.h.

statement::pointer statement_until::body [private]

The body instance variable is used to remember the body of the loop to be executed.

Definition at line 85 of file until.h.

expression::pointer statement_until::condition [private]

The condition instance variable is used to remember the boolean condition controling the loop repetition.

Definition at line 91 of file until.h.


The documentation for this class was generated from the following file:
Generated on Sun Feb 25 01:27:13 2007 for UCSDp-SystemCrossCompiler by  doxygen 1.5.1