34 namespace Gecode {
namespace Support {
41 template<
class T,
class A>
61 bool empty(
void)
const;
72 void push(
const T&
x);
76 static void*
operator new(
size_t s)
throw() { (void) s;
return NULL; }
78 static void operator delete(
void*
p) { (void)
p; };
85 template<
class T,
class A>
88 :
a(a0),
n(n0), tos(0), stack(
a.template alloc<T>(
n)) {}
90 template<
class T,
class A>
96 template<
class T,
class A>
102 template<
class T,
class A>
108 template<
class T,
class A>
114 template<
class T,
class A>
117 assert((tos > 0) && (tos <= static_cast<unsigned int>(
n)));
121 template<
class T,
class A>
124 assert((tos > 0) && (tos <= static_cast<unsigned int>(
n)));
128 template<
class T,
class A>
131 assert((tos >= 0) && (tos < static_cast<unsigned int>(
n)));
135 template<
class T,
class A>
138 assert(tos < static_cast<unsigned int>(
n));