41 template<
class T,
class A>
91 static void*
operator new(
size_t s)
throw() { (void) s;
return NULL; }
93 static void operator delete(
void* p) { (void) p; };
101 template<
class T,
class A>
103 DynamicStack<T,A>::resize(
void) {
104 int nl = (limit * 3) / 2;
105 stack =
a.template realloc<T>(stack,limit,nl);
109 template<
class T,
class A>
112 : a(a0), limit(n), tos(0), stack(a.template alloc<T>(n)) {}
114 template<
class T,
class A>
120 template<
class T,
class A>
126 template<
class T,
class A>
132 template<
class T,
class A>
138 template<
class T,
class A>
146 template<
class T,
class A>
152 template<
class T,
class A>
158 template<
class T,
class A>
164 template<
class T,
class A>
void push(const T &x)
Push element x on top of stack.
DynamicStack(A &a, int n=64)
Initialize stack with n elements.
int entries(void) const
Return number of entries currently on stack.
bool empty(void) const
Test whether stack is empty.
~DynamicStack(void)
Release memory.
T pop(void)
Pop topmost element from stack and return it.
T & last(void) const
Return element that has just been popped.
T & top(void) const
Return element on top of stack.
T & operator[](int i)
Return entry at position i.
Support algorithms and datastructures
Gecode toplevel namespace
Post propagator for SetVar x
Gecode::FloatVal a(-8, 5)