Nodes for linear expressions. More...
Public Member Functions | |
Node (void) | |
Default constructor. More... | |
void | fill (Home home, IntConLevel icl, Int::Linear::Term< Int::IntView > *&ti, Int::Linear::Term< Int::BoolView > *&tb, long long int m, long long int &d) const |
Generate linear terms from expression. More... | |
int | fill (Home home, IntConLevel icl, Int::Linear::Term< Int::IntView > *ti, Int::Linear::Term< Int::BoolView > *tb) const |
Generate linear terms for expressions. More... | |
bool | decrement (void) |
Decrement reference count and possibly free memory. More... | |
~Node (void) | |
Destructor. More... | |
Static Public Member Functions | |
static void * | operator new (size_t size) |
Memory management. More... | |
static void | operator delete (void *p, size_t size) |
Memory management. More... | |
Public Attributes | |
unsigned int | use |
Nodes are reference counted. More... | |
int | n_int |
Integer variables in tree. More... | |
int | n_bool |
Boolean variables in tree. More... | |
NodeType | t |
Type of expression. More... | |
Node * | l |
Subexpressions. More... | |
Node * | r |
union { | |
Int::Linear::Term< Int::IntView > * ti | |
Integer views and coefficients. More... | |
Int::Linear::Term< Int::BoolView > * tb | |
Bool views and coefficients. More... | |
NonLinIntExpr * ne | |
Non-linear expression. More... | |
} | sum |
Sum of integer or Boolean variables, or non-linear expression. More... | |
int | a |
Coefficient and offset. More... | |
int | c |
IntVar | x_int |
Integer variable (potentially) More... | |
BoolVar | x_bool |
Boolean variable (potentially) More... | |
Nodes for linear expressions.
Definition at line 44 of file int-expr.cpp.
|
inline |
Default constructor.
Definition at line 97 of file int-expr.cpp.
|
inline |
Destructor.
Definition at line 101 of file int-expr.cpp.
void Gecode::LinIntExpr::Node::fill | ( | Home | home, |
IntConLevel | icl, | ||
Int::Linear::Term< Int::IntView > *& | ti, | ||
Int::Linear::Term< Int::BoolView > *& | tb, | ||
long long int | m, | ||
long long int & | d | ||
) | const |
Generate linear terms from expression.
Definition at line 511 of file int-expr.cpp.
int Gecode::LinIntExpr::Node::fill | ( | Home | home, |
IntConLevel | icl, | ||
Int::Linear::Term< Int::IntView > * | ti, | ||
Int::Linear::Term< Int::BoolView > * | tb | ||
) | const |
Generate linear terms for expressions.
Definition at line 150 of file int-expr.cpp.
bool Gecode::LinIntExpr::Node::decrement | ( | void | ) |
Decrement reference count and possibly free memory.
Definition at line 128 of file int-expr.cpp.
|
inlinestatic |
Memory management.
Definition at line 119 of file int-expr.cpp.
|
inlinestatic |
Memory management.
Definition at line 124 of file int-expr.cpp.
unsigned int Gecode::LinIntExpr::Node::use |
Nodes are reference counted.
Definition at line 47 of file int-expr.cpp.
int Gecode::LinIntExpr::Node::n_int |
Integer variables in tree.
Definition at line 49 of file int-expr.cpp.
int Gecode::LinIntExpr::Node::n_bool |
Boolean variables in tree.
Definition at line 51 of file int-expr.cpp.
NodeType Gecode::LinIntExpr::Node::t |
Type of expression.
Definition at line 53 of file int-expr.cpp.
Node* Gecode::LinIntExpr::Node::l |
Subexpressions.
Definition at line 55 of file int-expr.cpp.
Node * Gecode::LinIntExpr::Node::r |
Definition at line 55 of file int-expr.cpp.
Int::Linear::Term<Int::IntView>* Gecode::LinIntExpr::Node::ti |
Integer views and coefficients.
Definition at line 59 of file int-expr.cpp.
Int::Linear::Term<Int::BoolView>* Gecode::LinIntExpr::Node::tb |
Bool views and coefficients.
Definition at line 61 of file int-expr.cpp.
NonLinIntExpr* Gecode::LinIntExpr::Node::ne |
Non-linear expression.
Definition at line 63 of file int-expr.cpp.
union { ... } Gecode::LinIntExpr::Node::sum |
Sum of integer or Boolean variables, or non-linear expression.
int Gecode::LinIntExpr::Node::a |
Coefficient and offset.
Definition at line 66 of file int-expr.cpp.
int Gecode::LinIntExpr::Node::c |
Definition at line 66 of file int-expr.cpp.
IntVar Gecode::LinIntExpr::Node::x_int |
Integer variable (potentially)
Definition at line 68 of file int-expr.cpp.
BoolVar Gecode::LinIntExpr::Node::x_bool |
Boolean variable (potentially)
Definition at line 70 of file int-expr.cpp.