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
LogicalCond.h
Go to the documentation of this file.
1
#ifndef LOGICAL_COND_H
2
#define LOGICAL_COND_H
3
4
#include <string>
5
6
class
LogicalCond
7
{
8
public
:
9
// the basic logical operations that must be supported by any implementation of
10
// a logical condition: NOT, AND and OR
11
// Return true if this causes the LogicalCond object to change and false otherwise.
12
//virtual bool notUpd()=0;
13
virtual
bool
andUpd
(
LogicalCond
& that)=0;
14
virtual
bool
orUpd
(
LogicalCond
& that)=0;
15
16
/*// returns true if this logical condition is false and false otherwise
17
virtual bool isFalse()=0;*/
18
19
// returns true if this logical condition must be true and false otherwise
20
virtual
bool
mayTrue
()=0;
21
22
// returns true if this logical condition may be false and false otherwise
23
bool
mustFalse
()
24
{
25
return
!
mayTrue
();
26
}
27
28
/* virtual bool setToTrue()=0;
29
virtual bool setToFalse()=0;*/
30
31
// returns a copy of this LogicalCond object
32
virtual
LogicalCond
*
copy
()=0;
33
34
virtual
std::string
str
(std::string indent=
""
)=0;
35
36
virtual
~LogicalCond
() {}
37
};
38
39
#endif
rose-edg4x
src
midend
programAnalysis
genericDataflow
state
LogicalCond.h
Generated on Mon May 5 2014 17:29:24 for ROSE by
1.8.4