ROSE
0.9.6a
|
Expression base class. More...
#include <broadway_expr.h>
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... | |
Expression base class.
Definition at line 16 of file broadway_expr.h.
|
inline |
Create a new expression.
Definition at line 32 of file broadway_expr.h.
|
inline |
|
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.
|
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.
|
private |
Expression operator.
One of the Broadway::Operator enum above.
Definition at line 24 of file broadway_expr.h.
Referenced by op().