79 const T*
begin(
void)
const;
83 const T*
end(
void)
const;
137 int size(
void)
const;
144 iterator
begin(
void);
147 const_iterator
begin(
void)
const;
151 const_iterator
end(
void)
const;
153 reverse_iterator
rbegin(
void);
155 const_reverse_iterator
rbegin(
void)
const;
157 reverse_iterator
rend(
void);
159 const_reverse_iterator
rend(
void)
const;
167 template<
class Char,
class Traits,
class T>
168 std::basic_ostream<Char,Traits>&
169 operator <<(std::basic_ostream<Char,Traits>& os,
198 assert((i>=0) && (i<n));
205 assert((i>=0) && (i<n));
257 assert(
object() == NULL);
264 assert(
object() != NULL);
265 return (*static_cast<SAO*>(
object()))[
i];
271 assert(
object() != NULL);
272 return (*static_cast<SAO*>(
object()))[
i];
280 if (
object()==sa.
object())
283 if ((*
this)[
i] != sa[
i])
300 assert(
object() != NULL);
301 return static_cast<SAO*
>(object())->
size();
307 assert(
object() != NULL);
308 return static_cast<SAO*
>(object())->begin();
314 assert(
object() != NULL);
315 return static_cast<SAO*
>(object())->begin();
321 assert(
object() != NULL);
322 return static_cast<SAO*
>(object())->end();
328 assert(
object() != NULL);
329 return static_cast<SAO*
>(object())->end();
335 assert(
object() != NULL);
342 assert(
object() != NULL);
349 assert(
object() != NULL);
356 assert(
object() != NULL);
360 template<
class Char,
class Traits,
class T>
361 std::basic_ostream<Char,Traits>&
362 operator <<(std::basic_ostream<Char,Traits>& os,
364 std::basic_ostringstream<Char,Traits> s;
365 s.copyfmt(os); s.width(0);
373 return os << s.str();
T & operator[](int i)
Access element at position i.
int size(void) const
Return size of array (number of elements)
const T * const_iterator
Type of the iterator used to iterate read-only through this array's elements.
T * end(void)
Return end of array (for iterators)
Implementation of object for shared arrays.
bool operator==(const SharedArray< T > &sa) const
Test equality with sa.
const T & const_reference
Type of a constant reference to the value type.
T value_type
Type of the view stored in this array.
SAO(int n)
Allocate for n elements.
T * alloc(long unsigned int n)
Allocate block of n objects of type T from heap.
void init(int n)
Initialize as array with n elements.
int n
Number of negative literals for node type.
T * iterator
Type of the iterator used to iterate through this array's elements.
Gecode::IntArgs i({1, 2, 3, 4})
SharedHandle::Object * object(void) const
Access to the shared object.
int size(void) const
Return number of elements.
unsigned int size(I &i)
Size of all ranges of range iterator i.
int size(void) const
Return number of elements.
reverse_iterator rbegin(void)
Return a reverse iterator at the end of the array.
T & reference
Type of a reference to the value type.
const T * const_pointer
Type of a read-only pointer to the value type.
T * begin(void)
Return beginning of array (for iterators)
virtual ~SAO(void)
Delete object.
void free(T *b, long unsigned int n)
Delete n objects starting at b.
Node * x
Pointer to corresponding Boolean expression node.
T * pointer
Type of a pointer to the value type.
Base-class for argument arrays.
Heap heap
The single global heap.
Post propagator for SetVar x
reverse_iterator rend(void)
Return a reverse iterator past the beginning of the array.
bool operator==(const FloatVal &x, const FloatVal &y)
std::reverse_iterator< T * > reverse_iterator
Type of the iterator used to iterate backwards through this array's elements.
Gecode toplevel namespace
Shared array with arbitrary number of elements.
SharedArray(void)
Construct as not yet intialized.
struct Gecode::@593::NNF::@62::@64 a
For atomic nodes.
std::reverse_iterator< const T * > const_reverse_iterator
Type of the iterator used to iterate backwards and read-only through this array's elements...