38 namespace Gecode {
namespace Int {
namespace ViewValGraph {
69 return home.ralloc(s);
81 : _val(v), _matching(NULL) {}
85 : _val(v), _matching(NULL), _next_val(n) {}
127 : _view(View(NULL)) {}
131 : _size(x.
size()), _view(x) {}
145 return _view.varimp() == NULL;
155 return _size != _view.size();
160 _size = _view.size();
Bidirectional links for edges and anchors in nodes of view-value graph.
Edge< View > * edge_fst(void) const
Return first edge (organized by bi-links)
Edge< View > * val_edges(void) const
Return first edge of all value edges.
void update(void)
Update size of view after change.
Edges in view-value graph.
ValNode< View > * next_val(void) const
Return next value node.
ValNode< View > ** next_val_ref(void)
Return pointer to next value node fields.
int val(void) const
Return value of node.
View view(void) const
Return view.
ViewNode(void)
Initialize node for a non-view.
int n
Number of negative literals for node type.
unsigned int size(I &i)
Size of all ranges of range iterator i.
Edge< View > * edge_lst(void) const
Return last edge (organized by bi-links)
bool fake(void) const
Test whether node has a fake view.
ValNode(int v)
Initialize with value v.
void min(Home home, FloatVar x0, FloatVar x1, FloatVar x2)
Post propagator for .
Edge< View > * matching(void) const
Return matching edge (NULL if unmatched)
Node * x
Pointer to corresponding Boolean expression node.
Edge< View > ** val_edges_ref(void)
Return pointer to first edge fields of all value edges.
Value nodes in view-value graph.
bool changed(void) const
Return whether view has changed its size.
Gecode toplevel namespace
Base-class for nodes (both view and value nodes)
BiLink * next(void) const
Return next element.
bool matched(void) const
Whether the node is matched.