#include <infty_int.hh>
Public Member Functions | |
InftyInt () | |
Construct empty. | |
InftyInt (const base_type &x) | |
Construct from base type. | |
InftyInt (const FiniteInt &x) | |
Construct from finite int. | |
InftyInt (const TaintedInftyInt &x) | |
Construct from potentially tainted. | |
InftyInt & | operator= (TaintedInftyInt &x) |
Assignment from potentially tainted infty int. | |
InftyInt & | operator+= (const FiniteInt &x) |
InftyInt & | operator-= (const FiniteInt &x) |
Static Public Attributes | |
static const InftyInt | neg_infty |
normalized negative infinity | |
static const InftyInt | pos_infty |
normalized positive infinity | |
Friends | |
InftyInt | operator+ (const InftyInt &x, const FiniteInt &y) |
InftyInt | operator- (const InftyInt &x, const FiniteInt &y) |
Potentially infinite value where finite values are integer. The representation of infinite values is normalized. Due to the normalization it is safe to add or subtract a second normal potentially infinite integer (thereby generating an non-normalized potentially infinite integer).
LocARNA::InftyInt::InftyInt | ( | const base_type & | x | ) | [inline, explicit] |
Construct from base type.
x | value of base type |
LocARNA::InftyInt::InftyInt | ( | const FiniteInt & | x | ) | [inline, explicit] |
Construct from finite int.
x | value |
LocARNA::InftyInt::InftyInt | ( | const TaintedInftyInt & | x | ) | [inline] |
Construct from potentially tainted.
x | value |
Add in place
x | operand |
Subtract in place
x | operand |
InftyInt& LocARNA::InftyInt::operator= | ( | TaintedInftyInt & | x | ) | [inline] |
Assignment from potentially tainted infty int.
x | value |
Add
x | operand 1 |
y | operand 2 |
Subtract
x | operand 1 |
y | operand 2 |
const InftyInt LocARNA::InftyInt::neg_infty [static] |
InftyInt( std::numeric_limits<TaintedInftyInt::base_type>::min() / 5 * 2)
normalized negative infinity
const InftyInt LocARNA::InftyInt::pos_infty [static] |
InftyInt( -(std::numeric_limits<TaintedInftyInt::base_type>::min() / 5 * 2))
normalized positive infinity