Lists of ranges (intervals) More...
#include <range-list.hpp>
Protected Attributes | |
int | _min |
Minimum of range. | |
int | _max |
Maximum of range. | |
Constructors | |
RangeList (void) | |
Default constructor (noop) | |
RangeList (int min, int max, RangeList *n) | |
Initialize with minimum min and maximum max and successor n. | |
Access | |
int | min (void) const |
Return minimum. | |
int | max (void) const |
Return maximum. | |
unsigned int | width (void) const |
Return width (distance between maximum and minimum) | |
RangeList * | next (void) const |
Return next element. | |
Update | |
void | min (int n) |
Set minimum to n. | |
void | max (int n) |
Set maximum to n. | |
void | next (RangeList *n) |
Set next rane to n. | |
Memory management | |
void | dispose (Space &home, RangeList *l) |
Free memory for all elements between this and l (inclusive) | |
static void * | operator new (size_t s, Space &home) |
Allocate memory from space. | |
static void * | operator new (size_t s, void *p) |
Placement-new operator (noop) | |
static void | operator delete (void *) |
No-op (for exceptions) | |
static void | operator delete (void *, Space &home) |
No-op (use dispose instead) | |
static void | operator delete (void *, void *) |
No-op (use dispose instead) |
Lists of ranges (intervals)
This class implements a simple datastructure for storing sets of integers as lists of ranges (intervals). Memory is managed as space-allocated free lists.
Gecode::RangeList::RangeList | ( | void | ) | [inline] |
Default constructor (noop)
Definition at line 117 of file range-list.hpp.
Gecode::RangeList::RangeList | ( | int | min, |
int | max, | ||
RangeList * | n | ||
) | [inline] |
Initialize with minimum min and maximum max and successor n.
Definition at line 120 of file range-list.hpp.
int Gecode::RangeList::min | ( | void | ) | const [inline] |
Return minimum.
Definition at line 142 of file range-list.hpp.
int Gecode::RangeList::max | ( | void | ) | const [inline] |
Return maximum.
Definition at line 146 of file range-list.hpp.
unsigned int Gecode::RangeList::width | ( | void | ) | const [inline] |
Return width (distance between maximum and minimum)
Definition at line 150 of file range-list.hpp.
RangeList * Gecode::RangeList::next | ( | void | ) | const [inline] |
Return next element.
Reimplemented from Gecode::FreeList.
Definition at line 124 of file range-list.hpp.
void Gecode::RangeList::min | ( | int | n | ) | [inline] |
Set minimum to n.
Definition at line 129 of file range-list.hpp.
void Gecode::RangeList::max | ( | int | n | ) | [inline] |
Set maximum to n.
Definition at line 133 of file range-list.hpp.
void Gecode::RangeList::next | ( | RangeList * | n | ) | [inline] |
Set next rane to n.
Definition at line 137 of file range-list.hpp.
Free memory for all elements between this and l (inclusive)
Definition at line 179 of file range-list.hpp.
void * Gecode::RangeList::operator new | ( | size_t | s, |
Space & | home | ||
) | [inline, static] |
Allocate memory from space.
Definition at line 169 of file range-list.hpp.
void * Gecode::RangeList::operator new | ( | size_t | s, |
void * | p | ||
) | [inline, static] |
Placement-new operator (noop)
Definition at line 174 of file range-list.hpp.
void Gecode::RangeList::operator delete | ( | void * | ) | [inline, static] |
No-op (for exceptions)
Definition at line 156 of file range-list.hpp.
void Gecode::RangeList::operator delete | ( | void * | , |
Space & | home | ||
) | [inline, static] |
No-op (use dispose instead)
Definition at line 159 of file range-list.hpp.
void Gecode::RangeList::operator delete | ( | void * | , |
void * | |||
) | [inline, static] |
No-op (use dispose instead)
Definition at line 164 of file range-list.hpp.
int Gecode::RangeList::_min [protected] |
Minimum of range.
Definition at line 56 of file range-list.hpp.
int Gecode::RangeList::_max [protected] |
Maximum of range.
Definition at line 58 of file range-list.hpp.