ROSE
0.9.6a
|
#include <affineInequality.h>
Public Types | |
enum | signs { unknownSgn, eqZero, posZero, negZero } |
Public Member Functions | |
affineInequality () | |
affineInequality (const affineInequality &that) | |
affineInequality (int a, int b, int c, bool xZero, bool yZero, signs xSign, signs ySign) | |
affineInequality (const affineInequality &xz, const affineInequality &zy) | |
void | operator= (const affineInequality &that) |
bool | operator== (const affineInequality &that) const |
bool | operator!= (const affineInequality &that) const |
bool | operator< (const affineInequality &that) const |
bool | semLessThan (const affineInequality &that, bool xEqZero, bool yEqZero) const |
bool | semLessThan (const affineInequality &that, const affineInequality *xZero, const affineInequality *zeroX, const affineInequality *yZero, const affineInequality *zeroY, std::string indent="") const |
bool | semLessThanEq (const affineInequality &that, bool xIsZeroVar, const affineInequality *xZero, const affineInequality *zeroX, bool yIsZeroVar, const affineInequality *yZero, const affineInequality *zeroY, std::string indent="") const |
bool | semLessThanNeg (const affineInequality &that, bool xEqZero, bool yEqZero) const |
bool | set (const affineInequality &that) |
bool | set (int a, int b, int c) |
bool | set (int a, int b, int c, bool xZero, bool yZero, signs xSign, signs ySign) |
bool | setA (int a) |
bool | setB (int b) |
bool | setC (int c) |
bool | setToBottom () |
bool | setToTop () |
int | getA () const |
int | getB () const |
int | getC () const |
short | getLevel () const |
bool | isXZero () const |
bool | isYZero () const |
signs | getXSign () const |
signs | getYSign () const |
void | operator*= (const affineInequality &that) |
bool | intersectUpd (const affineInequality &that) |
void | operator+= (const affineInequality &that) |
bool | unionUpd (const affineInequality &that) |
std::string | str (std::string indent="") |
std::string | str (std::string indent="") const |
std::string | str (varID x, varID y, std::string indent="") const |
std::string | strNeg (varID x, varID y, std::string indent) const |
Public Member Functions inherited from printable | |
virtual | ~printable () |
Static Public Member Functions | |
static bool | mayConsistent (const affineInequality &constrXY, const affineInequality &constrYX) |
static std::string | signToString (signs sign) |
Static Public Attributes | |
static const short | top =3 |
static const short | constrKnown =2 |
static const short | bottom =0 |
Protected Member Functions | |
bool | normalize () |
Protected Attributes | |
int | a |
int | b |
int | c |
bool | xZero |
bool | yZero |
signs | xSign |
signs | ySign |
short | level |
Friends | |
class | varAffineInequality |
Definition at line 22 of file affineInequality.h.
Enumerator | |
---|---|
unknownSgn | |
eqZero | |
posZero | |
negZero |
Definition at line 28 of file affineInequality.h.
affineInequality::affineInequality | ( | ) |
affineInequality::affineInequality | ( | const affineInequality & | that) |
affineInequality::affineInequality | ( | int | a, |
int | b, | ||
int | c, | ||
bool | xZero, | ||
bool | yZero, | ||
signs | xSign, | ||
signs | ySign | ||
) |
affineInequality::affineInequality | ( | const affineInequality & | xz, |
const affineInequality & | zy | ||
) |
void affineInequality::operator= | ( | const affineInequality & | that) |
bool affineInequality::operator== | ( | const affineInequality & | that) | const |
bool affineInequality::operator!= | ( | const affineInequality & | that) | const |
bool affineInequality::operator< | ( | const affineInequality & | that) | const |
bool affineInequality::semLessThan | ( | const affineInequality & | that, |
bool | xEqZero, | ||
bool | yEqZero | ||
) | const |
bool affineInequality::semLessThan | ( | const affineInequality & | that, |
const affineInequality * | xZero, | ||
const affineInequality * | zeroX, | ||
const affineInequality * | yZero, | ||
const affineInequality * | zeroY, | ||
std::string | indent = "" |
||
) | const |
bool affineInequality::semLessThanEq | ( | const affineInequality & | that, |
bool | xIsZeroVar, | ||
const affineInequality * | xZero, | ||
const affineInequality * | zeroX, | ||
bool | yIsZeroVar, | ||
const affineInequality * | yZero, | ||
const affineInequality * | zeroY, | ||
std::string | indent = "" |
||
) | const |
bool affineInequality::semLessThanNeg | ( | const affineInequality & | that, |
bool | xEqZero, | ||
bool | yEqZero | ||
) | const |
bool affineInequality::set | ( | const affineInequality & | that) |
bool affineInequality::set | ( | int | a, |
int | b, | ||
int | c | ||
) |
bool affineInequality::set | ( | int | a, |
int | b, | ||
int | c, | ||
bool | xZero, | ||
bool | yZero, | ||
signs | xSign, | ||
signs | ySign | ||
) |
bool affineInequality::setA | ( | int | a) |
bool affineInequality::setB | ( | int | b) |
bool affineInequality::setC | ( | int | c) |
bool affineInequality::setToBottom | ( | ) |
bool affineInequality::setToTop | ( | ) |
int affineInequality::getA | ( | ) | const |
int affineInequality::getB | ( | ) | const |
int affineInequality::getC | ( | ) | const |
short affineInequality::getLevel | ( | ) | const |
bool affineInequality::isXZero | ( | ) | const |
bool affineInequality::isYZero | ( | ) | const |
signs affineInequality::getXSign | ( | ) | const |
signs affineInequality::getYSign | ( | ) | const |
|
protected |
void affineInequality::operator*= | ( | const affineInequality & | that) |
bool affineInequality::intersectUpd | ( | const affineInequality & | that) |
void affineInequality::operator+= | ( | const affineInequality & | that) |
bool affineInequality::unionUpd | ( | const affineInequality & | that) |
|
static |
|
static |
|
virtual |
Implements printable.
std::string affineInequality::str | ( | std::string | indent = "" ) | const |
|
friend |
Definition at line 24 of file affineInequality.h.
|
protected |
Definition at line 40 of file affineInequality.h.
|
protected |
Definition at line 41 of file affineInequality.h.
|
protected |
Definition at line 42 of file affineInequality.h.
|
protected |
Definition at line 45 of file affineInequality.h.
|
protected |
Definition at line 46 of file affineInequality.h.
|
protected |
Definition at line 49 of file affineInequality.h.
|
protected |
Definition at line 50 of file affineInequality.h.
|
static |
Definition at line 60 of file affineInequality.h.
|
static |
Definition at line 62 of file affineInequality.h.
|
static |
Definition at line 67 of file affineInequality.h.
|
protected |
Definition at line 71 of file affineInequality.h.