ROSE  0.9.6a
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
exprAnn Class Referenceabstract

Expression base class. More...

#include <broadway_expr.h>

Inheritance diagram for exprAnn:
Collaboration diagram for exprAnn:

Public Member Functions

 exprAnn (Broadway::Operator op, int line)
 Create a new expression. More...
 
Broadway::Operator op () const
 Operator. More...
 
virtual void lookup (propertyAnn *default_property, procedureAnn *procedure, Annotations *annotations)=0
 Test method. More...
 
virtual void print (std::ostream &out)=0
 Report method. More...
 
- Public Member Functions inherited from Ann
 Ann (int line)
 
int line () const
 

Private Attributes

Broadway::Operator _op
 Expression operator. More...
 

Detailed Description

Expression base class.

Definition at line 16 of file broadway_expr.h.

Constructor & Destructor Documentation

exprAnn::exprAnn ( Broadway::Operator  op,
int  line 
)
inline

Create a new expression.

Definition at line 32 of file broadway_expr.h.

Member Function Documentation

Broadway::Operator exprAnn::op ( ) const
inline

Operator.

Definition at line 39 of file broadway_expr.h.

References _op.

virtual void exprAnn::lookup ( propertyAnn default_property,
procedureAnn procedure,
Annotations annotations 
)
pure virtual

Test method.

Use this to test a conditional expression. The calling context determines the "now" values of the various properties. Compute the next state

When a test returns true, analysis rules invoke this method for each action. The method determines what the new flowvalue will be once the action is invoked. Apply the next state

After computing the next state, actually apply it to the analysis information. Record any changes. Lookup method

Once a procedure annotation is complete and all the variables have been created, we call this routine to lookup the variables referenced in the expressions.

Implemented in pointerExprAnn, numericExprAnn, setPropertyExprAnn, enumPropertyExprAnn, and connectiveExprAnn.

virtual void exprAnn::print ( std::ostream &  out)
pure virtual

Report method.

Interpret the expression as an informational query (for the report annotations). Write the result out to the given stream. Print method

Display the expression using the annotation syntax.

Implemented in pointerExprAnn, numericExprAnn, setPropertyExprAnn, enumPropertyExprAnn, and connectiveExprAnn.

Member Data Documentation

Broadway::Operator exprAnn::_op
private

Expression operator.

One of the Broadway::Operator enum above.

Definition at line 24 of file broadway_expr.h.

Referenced by op().


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