ROSE 0.11.145.147
Classes | Public Types | Public Member Functions | Public Attributes | Protected Member Functions | Static Protected Member Functions | List of all members
IntArithLogical Class Reference

Description

Definition at line 22 of file intArithLogical.h.

Inheritance diagram for IntArithLogical:
Inheritance graph
[legend]
Collaboration diagram for IntArithLogical:
Collaboration graph
[legend]

Classes

class  exprLeaf
 
class  exprLeafOrNode
 
class  logicNode
 

Public Types

enum  infContent {
  uninitialized ,
  bottom ,
  known
}
 
enum  cmpOps {
  eq =SpearOp::Equal ,
  le =SpearOp::SgnLTE
}
 
enum  logOps {
  andOp =SpearOp::AndOp ,
  orOp =SpearOp::OrOp ,
  notOp =SpearOp::NotOp
}
 

Public Member Functions

 IntArithLogical (bool value)
 
 IntArithLogical (cmpOps cmp, int a, varID x, int b, varID y, int c)
 
 IntArithLogical (const IntArithLogical &that)
 
void initialize ()
 
void initialize (bool value)
 
Latticecopy () const
 
void copy (Lattice *that)
 
bool meetUpdate (Lattice *that)
 
bool operator== (Lattice *that)
 
std::string str (std::string indent="")
 
bool notUpd ()
 
bool andUpd (LogicalCond &that)
 
bool orUpd (LogicalCond &that)
 
bool setToTrue ()
 
bool setToFalse ()
 
bool removeVar (varID var)
 
LogicalCondcopy ()
 
bool isImplied (cmpOps cmp, int a, varID x, int b, varID y, int c)
 
bool mayTrue ()
 
bool mayConsistent (cmpOps cmp, int a, varID x, int b, varID y, int c)
 
bool assign (int a, varID x, int b, varID y, int c)
 
- Public Member Functions inherited from FiniteLattice
bool finiteLattice ()
 Check if this lattice is finite or not.
 
- Public Member Functions inherited from Lattice
virtual void remapVars (const std::map< varID, varID > &, const Function &)
 
virtual void incorporateVars (Lattice *)
 
virtual Latticeproject (SgExpression *)
 
virtual bool unProject (SgExpression *, Lattice *exprState)
 
bool operator!= (Lattice *that)
 
bool operator== (Lattice &that)
 
bool operator!= (Lattice &that)
 
- Public Member Functions inherited from LogicalCond
bool mustFalse ()
 

Public Attributes

infContent level
 
logicNodeexpr
 

Protected Member Functions

SpearVar outputSpearExpr (exprLeaf *otherExpr, std::ofstream &os, bool createProposition)
 

Static Protected Member Functions

static bool runSpear (std::string inputFile)
 

Member Enumeration Documentation

◆ infContent

enum IntArithLogical::infContent

Definition at line 26 of file intArithLogical.h.

◆ cmpOps

enum IntArithLogical::cmpOps

Definition at line 42 of file intArithLogical.h.

◆ logOps

enum IntArithLogical::logOps

Definition at line 45 of file intArithLogical.h.

Member Function Documentation

◆ initialize()

void IntArithLogical::initialize ( )
virtual

Implements Lattice.

◆ copy() [1/3]

Lattice * IntArithLogical::copy ( ) const
virtual

Implements Lattice.

◆ copy() [2/3]

void IntArithLogical::copy ( Lattice that)
virtual

Implements Lattice.

◆ meetUpdate()

bool IntArithLogical::meetUpdate ( Lattice that)
virtual

Implements Lattice.

◆ operator==()

bool IntArithLogical::operator== ( Lattice that)
virtual

Implements Lattice.

◆ str()

std::string IntArithLogical::str ( std::string  indent = "")
virtual

Implements printable.

◆ andUpd()

bool IntArithLogical::andUpd ( LogicalCond that)
virtual

Implements LogicalCond.

◆ orUpd()

bool IntArithLogical::orUpd ( LogicalCond that)
virtual

Implements LogicalCond.

◆ copy() [3/3]

LogicalCond * IntArithLogical::copy ( )
virtual

Implements LogicalCond.

◆ mayTrue()

bool IntArithLogical::mayTrue ( )
virtual

Implements LogicalCond.

Member Data Documentation

◆ level

infContent IntArithLogical::level

Definition at line 38 of file intArithLogical.h.

◆ expr

logicNode* IntArithLogical::expr

Definition at line 343 of file intArithLogical.h.


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