ROSE
0.9.6a
Main Page
Related Pages
Modules
Namespaces
Classes
Files
Examples
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
rule.h
Go to the documentation of this file.
1
2
#ifndef BDWY_RULE_H
3
#define BDWY_RULE_H
4
5
typedef
std::list< ruleAnn * >
rule_list
;
6
typedef
rule_list::iterator
rule_list_p
;
7
typedef
rule_list::const_iterator
rule_list_cp
;
8
9
14
class
ruleAnn
:
public
Ann
15
{
16
private
:
17
22
exprAnn
*
_condition
;
23
28
bool
_is_condition_true
;
29
35
exprann_list
_effects
;
36
37
public
:
38
43
ruleAnn
(
exprAnn
*
condition
,
exprann_list
* effects,
int
line
);
44
47
inline
bool
has_condition
()
const
{
return
_condition
!= 0; }
48
51
inline
exprAnn
*
condition
()
const
{
return
_condition
; }
52
58
#ifdef __PROCLOCATION
59
void
test
(procLocation * where,
60
propertyAnalyzer * property_analyzer);
61
#endif
62
65
bool
is_condition_true
()
const
{
return
_is_condition_true
; }
66
72
#ifdef __PROCLOCATION
73
void
compute_next(procLocation * where);
74
#endif
75
82
#ifdef __PROCLOCATION
83
void
apply_next(procLocation * where,
84
propertyAnalyzer * property_analyzer,
85
memoryblock_set & changes);
86
#endif
87
90
void
lookup
(
propertyAnn
* default_property,
91
procedureAnn
* procedure,
92
Annotations
* annotations);
93
94
};
95
96
#endif
/* BDWY_RULE_H */
rose-edg4x
src
midend
programAnalysis
annotationLanguageParser
rule.h
Generated on Mon May 5 2014 17:29:26 for ROSE by
1.8.4