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

Pointer analysis rule. More...

#include <pointerrule.h>

Inheritance diagram for pointerRuleAnn:
Collaboration diagram for pointerRuleAnn:

Public Member Functions

 pointerRuleAnn (exprAnn *condition, structuretree_list *effects_tree, int line)
 Create a new pointerrule. More...
 
 ~pointerRuleAnn ()
 Destructor. More...
 
bool has_condition () const
 Return true if has condition. More...
 
exprAnncondition () const
 Return the condition. More...
 
structuretree_listeffects_tree () const
 Get the effects tree. More...
 
structure_listeffects ()
 Get the effects list. More...
 
bool is_condition_true () const
 Test the condition. More...
 
void lookup (procedureAnn *procedure, Annotations *annotations)
 Look up. More...
 
- Public Member Functions inherited from Ann
 Ann (int line)
 
int line () const
 

Private Member Functions

 pointerRuleAnn (const pointerRuleAnn &X)
 Private Copy Constructor. More...
 

Private Attributes

exprAnn_condition
 Pointerrule condition. More...
 
bool _is_condition_true
 Condition state. More...
 
structuretree_list_effects_tree
 Pointer effects tree. More...
 
TREE structure_list _effects
 Pointer effects. More...
 

Detailed Description

Pointer analysis rule.

Definition at line 14 of file pointerrule.h.

Constructor & Destructor Documentation

pointerRuleAnn::pointerRuleAnn ( exprAnn condition,
structuretree_list effects_tree,
int  line 
)

Create a new pointerrule.

pointerRuleAnn::~pointerRuleAnn ( )

Destructor.

pointerRuleAnn::pointerRuleAnn ( const pointerRuleAnn X)
private

Private Copy Constructor.

Member Function Documentation

bool pointerRuleAnn::has_condition ( ) const
inline

Return true if has condition.

Definition at line 58 of file pointerrule.h.

References _condition.

exprAnn* pointerRuleAnn::condition ( ) const
inline

Return the condition.

Definition at line 62 of file pointerrule.h.

References _condition.

structuretree_list* pointerRuleAnn::effects_tree ( ) const
inline

Get the effects tree.

Definition at line 66 of file pointerrule.h.

References _effects_tree.

structure_list& pointerRuleAnn::effects ( )
inline

Get the effects list.

This list is populated by the procedureAnn object.

Definition at line 72 of file pointerrule.h.

References _effects.

bool pointerRuleAnn::is_condition_true ( ) const
inline

Test the condition.

Test each condition. Special case: a pointerRule without a condition is automatically true. Return the result of the test

Definition at line 85 of file pointerrule.h.

References _is_condition_true.

void pointerRuleAnn::lookup ( procedureAnn procedure,
Annotations annotations 
)

Look up.

Member Data Documentation

exprAnn* pointerRuleAnn::_condition
private

Pointerrule condition.

The pointerrule condition will be null, for an unconditional pointerrule.

Definition at line 22 of file pointerrule.h.

Referenced by condition(), and has_condition().

bool pointerRuleAnn::_is_condition_true
private

Condition state.

True if the condition is true

Definition at line 28 of file pointerrule.h.

Referenced by is_condition_true().

structuretree_list* pointerRuleAnn::_effects_tree
private

Pointer effects tree.

This is the precompiled version that is produced by the parser. It is then "compiled" by the procedure annotation into the form below, in _effects.

Definition at line 36 of file pointerrule.h.

Referenced by effects_tree().

TREE structure_list pointerRuleAnn::_effects
private

Pointer effects.

This is a pointer annotation list.

Definition at line 42 of file pointerrule.h.

Referenced by effects().


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