38 #ifndef __GECODE_INT_TASK_HH__
39 #define __GECODE_INT_TASK_HH__
43 namespace Gecode {
namespace Int {
46 template<
class ManTask>
100 namespace Gecode {
namespace Int {
103 template<
class TaskView>
117 int pmin(
void)
const;
119 int pmax(
void)
const;
141 namespace Gecode {
namespace Int {
149 template<
class TaskView>
163 namespace Gecode {
namespace Int {
189 int size(
void)
const;
217 static void*
operator new(size_t);
218 static void operator delete(
void*,size_t);
225 template<
class Char,
class Traits,
class Task>
226 std::basic_ostream<Char,Traits>&
227 operator <<(std::basic_ostream<Char,Traits>& os,
232 template<
class TaskView>
249 int size(
void)
const;
262 static void*
operator new(size_t);
263 static void operator delete(
void*,size_t);
270 template<
class Char,
class Traits,
class TaskView>
271 std::basic_ostream<Char,Traits>&
272 operator <<(std::basic_ostream<Char,Traits>& os,
279 namespace Gecode {
namespace Int {
290 template<
class TaskView, SortTaskOrder sto,
bool inc>
294 template<
class TaskView, SortTaskOrder sto,
bool inc>
298 template<
class TaskView, SortTaskOrder sto,
bool inc>
305 namespace Gecode {
namespace Int {
308 template<
class TaskView, SortTaskOrder sto,
bool inc>
325 int left(
void)
const;
333 int task(
void)
const;
338 template<
class OptTaskView, SortTaskOrder sto,
bool inc>
352 namespace Gecode {
namespace Int {
355 int plus(
int x,
int y);
358 long long int plus(
long long int x,
long long int y);
361 double plus(
double x,
double y);
364 template<
class TaskView,
class Node>
386 static bool left(
int i);
397 const Node&
root(
void)
const;
415 namespace Gecode {
namespace Int {
423 template<
class Task, PropCond pc>
440 template<
class OptTask,PropCond pc>
444 template<
class OptTask,PropCond pc,
class Cap>