mln::util::array< T > Class Template Reference
[Utilities]

A dynamic array class. More...

#include <array.hh>

Inheritance diagram for mln::util::array< T >:

Inheritance graph

List of all members.

Public Types

typedef T element
 Element associated type.
typedef array_bkd_iter< T > bkd_eiter
 Backward iterator associated type.
typedef fwd_eiter eiter
 Iterator associated type.
typedef array_fwd_iter< T > fwd_eiter
 Iterator types

Forward iterator associated type.

typedef T result
 Returned value types.

Public Member Functions

template<typename U >
array< T > & append (const array< U > &other)
 Add the elements of other at the end of this array.
array< T > & append (const T &elt)
 Add the element elt at the end of this array.
void clear ()
 Empty the array.
void fill (const T &value)
 Fill the whole array with value value.
bool is_empty () const
 Test if the array is empty.
std::size_t memory_size () const
 Return the size of this array in memory.
unsigned nelements () const
 Return the number of elements of the array.
mutable_result operator() (unsigned i)
 Return the i-th element of the array.
const T & operator() (unsigned i) const
 Return the i-th element of the array.
mutable_result operator[] (unsigned i)
 Return the i-th element of the array.
const T & operator[] (unsigned i) const
 Return the i-th element of the array.
void reserve (unsigned n)
 Reserve memory for n elements.
void resize (unsigned n, const T &value)
 Resize this array to n elements with value as value.
void resize (unsigned n)
 Resize this array to n elements.
unsigned size () const
 Return the number of elements of the array.
const std::vector< T > & std_vector () const
 Return the corresponding std::vector of elements.
 array (unsigned n, const T &value)
 Construct a new array, resize it to
elements and fill it with default_value.
 array (unsigned n)
 Construct a new array and resize it to
elements.
 array ()
 Constructors

Constructor without arguments.


Detailed Description

template<typename T>
class mln::util::array< T >

A dynamic array class.

Elements are stored by copy. Implementation is lazy.

The parameter T is the element type, which shall not be const-qualified.


Member Typedef Documentation

template<typename T>
typedef array_bkd_iter<T> mln::util::array< T >::bkd_eiter

Backward iterator associated type.

template<typename T>
typedef fwd_eiter mln::util::array< T >::eiter

Iterator associated type.

template<typename T>
typedef T mln::util::array< T >::element

Element associated type.

template<typename T>
typedef array_fwd_iter<T> mln::util::array< T >::fwd_eiter

Iterator types

Forward iterator associated type.

template<typename T>
typedef T mln::util::array< T >::result

Returned value types.

Related to the Function_v2v concept.


Constructor & Destructor Documentation

template<typename T >
mln::util::array< T >::array (  )  [inline]

Constructors

Constructor without arguments.

template<typename T >
mln::util::array< T >::array ( unsigned  n  )  [inline]

Construct a new array and resize it to
elements.

template<typename T>
mln::util::array< T >::array ( unsigned  n,
const T &  value 
) [inline]

Construct a new array, resize it to
elements and fill it with default_value.


Member Function Documentation

template<typename T >
template<typename U >
array< T > & mln::util::array< T >::append ( const array< U > &  other  )  [inline]

Add the elements of other at the end of this array.

References mln::util::array< T >::is_empty(), and mln::util::array< T >::std_vector().

template<typename T>
array< T > & mln::util::array< T >::append ( const T &  elt  )  [inline]

Add the element elt at the end of this array.

Referenced by mln::io::plot::load(), and mln::data::impl::generic::sort_offsets_increasing().

template<typename T >
void mln::util::array< T >::clear (  )  [inline]

Empty the array.

All elements contained in the array are destroyed.

Postcondition:
is_empty() == true

References mln::util::array< T >::is_empty().

Referenced by mln::io::plot::load().

template<typename T>
void mln::util::array< T >::fill ( const T &  value  )  [inline]

Fill the whole array with value value.

template<typename T >
bool mln::util::array< T >::is_empty (  )  const [inline]

template<typename T >
std::size_t mln::util::array< T >::memory_size (  )  const [inline]

Return the size of this array in memory.

References mln::util::array< T >::nelements().

template<typename T >
unsigned mln::util::array< T >::nelements (  )  const [inline]

template<typename T >
array< T >::mutable_result mln::util::array< T >::operator() ( unsigned  i  )  [inline]

Return the i-th element of the array.

Precondition:
i < nelements()

template<typename T >
const T & mln::util::array< T >::operator() ( unsigned  i  )  const [inline]

Return the i-th element of the array.

Precondition:
i < nelements()

template<typename T >
array< T >::mutable_result mln::util::array< T >::operator[] ( unsigned  i  )  [inline]

Return the i-th element of the array.

Precondition:
i < nelements()

References mln::util::array< T >::nelements().

template<typename T >
const T & mln::util::array< T >::operator[] ( unsigned  i  )  const [inline]

Return the i-th element of the array.

Precondition:
i < nelements()

References mln::util::array< T >::nelements().

template<typename T >
void mln::util::array< T >::reserve ( unsigned  n  )  [inline]

Reserve memory for n elements.

Referenced by mln::data::impl::generic::sort_offsets_increasing().

template<typename T>
void mln::util::array< T >::resize ( unsigned  n,
const T &  value 
) [inline]

Resize this array to n elements with value as value.

template<typename T >
void mln::util::array< T >::resize ( unsigned  n  )  [inline]

Resize this array to n elements.

template<typename T >
unsigned mln::util::array< T >::size (  )  const [inline]

Return the number of elements of the array.

Added for compatibility with fun::i2v::array.

See also:
nelements

References mln::util::array< T >::nelements().

Referenced by mln::value::lut_vec< S, T >::lut_vec().

template<typename T >
const std::vector< T > & mln::util::array< T >::std_vector (  )  const [inline]

Return the corresponding std::vector of elements.

Referenced by mln::util::array< T >::append(), mln::value::lut_vec< S, T >::lut_vec(), and mln::util::operator==().


Generated on Tue Jul 14 16:33:16 2009 for Milena (Olena) by  doxygen 1.5.9