Generated on Tue Feb 11 2025 17:33:26 for Gecode by doxygen 1.12.0

Nodes for linear expressions. More...

Public Member Functions

 Node (void)
 Default constructor.
 
void fill (Home home, const IntPropLevels &ipls, 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.
 
int fill (Home home, const IntPropLevels &ipls, Int::Linear::Term< Int::IntView > *ti, Int::Linear::Term< Int::BoolView > *tb) const
 Generate linear terms for expressions.
 
bool decrement (void)
 Decrement reference count and possibly free memory.
 
 ~Node (void)
 Destructor.
 

Static Public Member Functions

static void * operator new (size_t size)
 Memory management.
 
static void operator delete (void *p, size_t size)
 Memory management.
 

Public Attributes

unsigned int use
 Nodes are reference counted.
 
int n_int
 Integer variables in tree.
 
int n_bool
 Boolean variables in tree.
 
NodeType t
 Type of expression.
 
Nodel
 Subexpressions.
 
Noder
 
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.
 
int a
 Coefficient and offset.
 
int c
 
IntVar x_int
 Integer variable (potentially)
 
BoolVar x_bool
 Boolean variable (potentially)
 

Detailed Description

Nodes for linear expressions.

Definition at line 40 of file int-expr.cpp.

Constructor & Destructor Documentation

◆ Node()

Gecode::LinIntExpr::Node::Node ( void )
inline

Default constructor.

Definition at line 93 of file int-expr.cpp.

◆ ~Node()

Gecode::LinIntExpr::Node::~Node ( void )
inline

Destructor.

Definition at line 97 of file int-expr.cpp.

Member Function Documentation

◆ fill() [1/2]

void Gecode::LinIntExpr::Node::fill ( Home home,
const IntPropLevels & ipls,
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 521 of file int-expr.cpp.

◆ fill() [2/2]

int Gecode::LinIntExpr::Node::fill ( Home home,
const IntPropLevels & ipls,
Int::Linear::Term< Int::IntView > * ti,
Int::Linear::Term< Int::BoolView > * tb ) const

Generate linear terms for expressions.

Definition at line 146 of file int-expr.cpp.

◆ decrement()

bool Gecode::LinIntExpr::Node::decrement ( void )

Decrement reference count and possibly free memory.

Definition at line 124 of file int-expr.cpp.

◆ operator new()

void * Gecode::LinIntExpr::Node::operator new ( size_t size)
inlinestatic

Memory management.

Definition at line 115 of file int-expr.cpp.

◆ operator delete()

void Gecode::LinIntExpr::Node::operator delete ( void * p,
size_t size )
inlinestatic

Memory management.

Definition at line 120 of file int-expr.cpp.

Member Data Documentation

◆ use

unsigned int Gecode::LinIntExpr::Node::use

Nodes are reference counted.

Definition at line 43 of file int-expr.cpp.

◆ n_int

int Gecode::LinIntExpr::Node::n_int

Integer variables in tree.

Definition at line 45 of file int-expr.cpp.

◆ n_bool

int Gecode::LinIntExpr::Node::n_bool

Boolean variables in tree.

Definition at line 47 of file int-expr.cpp.

◆ t

NodeType Gecode::LinIntExpr::Node::t

Type of expression.

Definition at line 49 of file int-expr.cpp.

◆ l

Node* Gecode::LinIntExpr::Node::l

Subexpressions.

Definition at line 51 of file int-expr.cpp.

◆ r

Node * Gecode::LinIntExpr::Node::r

Definition at line 51 of file int-expr.cpp.

◆ ti

Int::Linear::Term<Int::IntView>* Gecode::LinIntExpr::Node::ti

Integer views and coefficients.

Definition at line 55 of file int-expr.cpp.

◆ tb

Int::Linear::Term<Int::BoolView>* Gecode::LinIntExpr::Node::tb

Bool views and coefficients.

Definition at line 57 of file int-expr.cpp.

◆ ne

NonLinIntExpr* Gecode::LinIntExpr::Node::ne

Non-linear expression.

Definition at line 59 of file int-expr.cpp.

◆ [union]

union { ... } Gecode::LinIntExpr::Node::sum

Sum of integer or Boolean variables, or non-linear expression.

◆ a

int Gecode::LinIntExpr::Node::a

Coefficient and offset.

Definition at line 62 of file int-expr.cpp.

◆ c

int Gecode::LinIntExpr::Node::c

Definition at line 62 of file int-expr.cpp.

◆ x_int

IntVar Gecode::LinIntExpr::Node::x_int

Integer variable (potentially)

Definition at line 64 of file int-expr.cpp.

◆ x_bool

BoolVar Gecode::LinIntExpr::Node::x_bool

Boolean variable (potentially)

Definition at line 66 of file int-expr.cpp.


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