Generated on Thu Apr 11 13:59:46 2019 for Gecode by doxygen 1.6.3

Gecode::VarArgArray< Var > Class Template Reference
[Programming variables]

Argument array for variables. More...

#include <array.hpp>

List of all members.

Public Member Functions

bool assigned (void) const
 Test if all variables are assigned.

Friends

ArrayTraits< VarArgArray< Var >
>::ArgsType 
operator+ (const VarArgArray< Var > &x, const VarArgArray< Var > &y)
ArrayTraits< VarArgArray< Var >
>::ArgsType 
operator+ (const VarArgArray< Var > &x, const Var &y)
ArrayTraits< VarArgArray< Var >
>::ArgsType 
operator+ (const Var &x, const VarArgArray< Var > &y)

Related Functions

(Note that these are not member functions.)



template<class Var >
bool same (VarArgArray< Var > x, VarArgArray< Var > y)
 Test whether array x together with array y contains at least one variable being the same.
template<class Var >
bool same (VarArgArray< Var > x, Var y)
 Test whether array x contains variable y.
template<class Var >
bool same (Var x, VarArgArray< Var > y)
 Test whether array y contains variable x.
template<class Var >
bool same (VarArgArray< Var > x)
 Test whether array x contains a variable multiply.

Constructors and initialization



 VarArgArray (void)
 Allocate empty array.
 VarArgArray (int n)
 Allocate array with n elements.
 VarArgArray (const VarArgArray< Var > &a)
 Initialize from variable argument array a (copy elements).
 VarArgArray (const VarArray< Var > &a)
 Initialize from variable array a (copy elements).
 VarArgArray (const std::vector< Var > &a)
 Initialize from vector a.
 VarArgArray (std::initializer_list< Var > a)
 Initialize from initializer list a.
template<class InputIterator >
 VarArgArray (InputIterator first, InputIterator last)
 Initialize from InputIterator first and last.

Array elements



ArrayTraits< VarArgArray< Var >
>::ArgsType 
slice (int start, int inc=1, int n=-1)
 Return slice $y$ of length n such that forall $0\leq i<n$, $y_i=x_{\text{start}+i\cdot\text{inc}}$.

Appending elements



ArrayTraits< VarArgArray< Var >
>::ArgsType & 
operator<< (const Var &x)
 Insert a new element x at the end of the array (increase size by 1).
ArrayTraits< VarArgArray< Var >
>::ArgsType & 
operator<< (const VarArgArray< Var > &x)
 Append x to the end of the array.

Detailed Description

template<class Var>
class Gecode::VarArgArray< Var >

Argument array for variables.

Argument arrays are used as convenient mechanism of passing arguments when calling functions as they combine both the size and the elements of an array. For a small number of elements, memory is allocated by creating an argument array object. Otherwise the memory is allocated from the heap.

Definition at line 774 of file array.hpp.


Constructor & Destructor Documentation

template<class Var >
Gecode::VarArgArray< Var >::VarArgArray ( void   )  [inline]

Allocate empty array.

Definition at line 1839 of file array.hpp.

template<class Var >
Gecode::VarArgArray< Var >::VarArgArray ( int  n  )  [inline, explicit]

Allocate array with n elements.

Definition at line 1843 of file array.hpp.

template<class Var>
Gecode::VarArgArray< Var >::VarArgArray ( const VarArgArray< Var > &  a  )  [inline]

Initialize from variable argument array a (copy elements).

Definition at line 1847 of file array.hpp.

template<class Var>
Gecode::VarArgArray< Var >::VarArgArray ( const VarArray< Var > &  a  )  [inline]

Initialize from variable array a (copy elements).

Definition at line 1868 of file array.hpp.

template<class Var>
Gecode::VarArgArray< Var >::VarArgArray ( const std::vector< Var > &  a  )  [inline]

Initialize from vector a.

Definition at line 1852 of file array.hpp.

template<class Var>
Gecode::VarArgArray< Var >::VarArgArray ( std::initializer_list< Var a  )  [inline]

Initialize from initializer list a.

Definition at line 1857 of file array.hpp.

template<class Var >
template<class InputIterator >
Gecode::VarArgArray< Var >::VarArgArray ( InputIterator  first,
InputIterator  last 
) [inline]

Initialize from InputIterator first and last.

Definition at line 1863 of file array.hpp.


Member Function Documentation

template<class Var >
ArrayTraits< VarArgArray< Var > >::ArgsType Gecode::VarArgArray< Var >::slice ( int  start,
int  inc = 1,
int  n = -1 
) [inline]

Return slice $y$ of length n such that forall $0\leq i<n$, $y_i=x_{\text{start}+i\cdot\text{inc}}$.

Reimplemented from Gecode::ArgArrayBase< Var >.

Definition at line 1876 of file array.hpp.

template<class Var>
ArrayTraits< VarArgArray< Var > >::ArgsType & Gecode::VarArgArray< Var >::operator<< ( const Var x  )  [inline]

Insert a new element x at the end of the array (increase size by 1).

Definition at line 1884 of file array.hpp.

template<class Var>
ArrayTraits< VarArgArray< Var > >::ArgsType & Gecode::VarArgArray< Var >::operator<< ( const VarArgArray< Var > &  x  )  [inline]

Append x to the end of the array.

Definition at line 1892 of file array.hpp.

template<class Var >
bool Gecode::VarArgArray< Var >::assigned ( void   )  const [inline]

Test if all variables are assigned.

Definition at line 1923 of file array.hpp.


Friends And Related Function Documentation

template<class Var>
ArrayTraits< VarArgArray< Var > >::ArgsType operator+ ( const VarArgArray< Var > &  x,
const VarArgArray< Var > &  y 
) [friend]

Concatenate x and y and return result

Definition at line 1900 of file array.hpp.

template<class Var>
ArrayTraits< VarArgArray< Var > >::ArgsType operator+ ( const VarArgArray< Var > &  x,
const Var y 
) [friend]

Concatenate x and y and return result

Definition at line 1907 of file array.hpp.

template<class Var>
ArrayTraits< VarArgArray< Var > >::ArgsType operator+ ( const Var x,
const VarArgArray< Var > &  y 
) [friend]

Concatenate x and y and return result

Definition at line 1914 of file array.hpp.

template<class Var >
bool same ( VarArgArray< Var x,
VarArgArray< Var y 
) [related]

Test whether array x together with array y contains at least one variable being the same.

Note that assigned variables are ignored.

Definition at line 1937 of file array.hpp.

template<class Var >
bool same ( VarArgArray< Var x,
Var  y 
) [related]

Test whether array x contains variable y.

Note that assigned variables are ignored.

Definition at line 1960 of file array.hpp.

template<class Var >
bool same ( Var  x,
VarArgArray< Var y 
) [related]

Test whether array y contains variable x.

Note that assigned variables are ignored.

Definition at line 1971 of file array.hpp.

template<class Var >
bool same ( VarArgArray< Var x  )  [related]

Test whether array x contains a variable multiply.

Note that assigned variables are ignored.

Definition at line 1977 of file array.hpp.


The documentation for this class was generated from the following file: