Main Page   Namespace List   Class Hierarchy   Compound List   File List   Namespace Members   Compound Members   File Members  

ixion::array Struct Template Reference

#include <ixlib_array.hh>

Inheritance diagram for ixion::array::

ixion::auto_array ixion::tracking_array ixion::auto_destroy_array List of all members.

Public Types

typedef T value_type
typedef Allocator allocator_type
typedef Allocator::reference reference
typedef Allocator::const_reference const_reference
typedef Allocator::size_type size_type
typedef Allocator::difference_type difference_type
typedef Allocator::pointer pointer
typedef Allocator::const_pointer const_pointer

Public Methods

 array (Allocator const &alloc=Allocator())
 array (size_type cap, Allocator const &alloc=Allocator())
 array (array const &source)
virtual ~array ()
array& operator= (array const &source)
reference operator[] (size_type pos) const
reference operator * () const
pointer operator+ (size_type pos) const
pointer get () const
size_type capacity () const
allocator_type get_allocator () const
virtual void allocate (size_type cap)
virtual void deallocate ()
virtual void construct (pointer first, pointer last, const_reference value=T())
virtual void construct (pointer first, pointer last, const_pointer source)
virtual void construct (pointer item, const_reference source=T())
virtual void destroy (pointer first, pointer last)
virtual void destroy (pointer item)
virtual void invalidate ()

Protected Methods

void internal_deallocate ()

Protected Attributes

pointer Data
size_type Capacity
Allocator Alloc

Detailed Description

template<class T, class Allocator = std::allocator<T>> struct ixion::array

An object that provides methods for reallocatable array management.

Nothing in terms of allocation or deallocation is done automatically.

Definition at line 28 of file ixlib_array.hh.


Member Typedef Documentation

template<class T, class Allocator = std::allocator<T>>
typedef Allocator ixion::array<T, Allocator>::allocator_type
 

Definition at line 30 of file ixlib_array.hh.

template<class T, class Allocator = std::allocator<T>>
typedef Allocator::const_pointer ixion::array<T, Allocator>::const_pointer
 

Definition at line 36 of file ixlib_array.hh.

template<class T, class Allocator = std::allocator<T>>
typedef Allocator::const_reference ixion::array<T, Allocator>::const_reference
 

Definition at line 32 of file ixlib_array.hh.

template<class T, class Allocator = std::allocator<T>>
typedef Allocator::difference_type ixion::array<T, Allocator>::difference_type
 

Definition at line 34 of file ixlib_array.hh.

template<class T, class Allocator = std::allocator<T>>
typedef Allocator::pointer ixion::array<T, Allocator>::pointer
 

Definition at line 35 of file ixlib_array.hh.

template<class T, class Allocator = std::allocator<T>>
typedef Allocator::reference ixion::array<T, Allocator>::reference
 

Definition at line 31 of file ixlib_array.hh.

template<class T, class Allocator = std::allocator<T>>
typedef Allocator::size_type ixion::array<T, Allocator>::size_type
 

Definition at line 33 of file ixlib_array.hh.

template<class T, class Allocator = std::allocator<T>>
typedef T ixion::array<T, Allocator>::value_type
 

Definition at line 29 of file ixlib_array.hh.


Constructor & Destructor Documentation

template<class T, class Allocator = std::allocator<T>>
ixion::array<T, Allocator>::array<T, Allocator> ( Allocator const & alloc = Allocator() ) [inline]
 

Definition at line 44 of file ixlib_array.hh.

template<class T, class Allocator = std::allocator<T>>
ixion::array<T, Allocator>::array<T, Allocator> ( size_type cap,
Allocator const & alloc = Allocator() ) [inline]
 

Definition at line 47 of file ixlib_array.hh.

template<class T, class Allocator = std::allocator<T>>
ixion::array<T, Allocator>::array<T, Allocator> ( array<T, Allocator> const & source ) [inline]
 

Definition at line 50 of file ixlib_array.hh.

template<class T, class Allocator = std::allocator<T>>
ixion::array<T, Allocator>::~array<T, Allocator> ( ) [inline, virtual]
 

Definition at line 53 of file ixlib_array.hh.


Member Function Documentation

template<class T, class Allocator = std::allocator<T>>
void ixion::array<T, Allocator>::allocate ( size_type cap ) [inline, virtual]
 

Reimplemented in ixion::tracking_array, ixion::auto_array, and ixion::auto_destroy_array.

Definition at line 77 of file ixlib_array.hh.

Referenced by array().

template<class T, class Allocator = std::allocator<T>>
size_type ixion::array<T, Allocator>::capacity ( ) const [inline]
 

Definition at line 72 of file ixlib_array.hh.

template<class T, class Allocator = std::allocator<T>>
void ixion::array<T, Allocator>::construct ( pointer item,
const_reference source = T() ) [inline, virtual]
 

Reimplemented in ixion::tracking_array.

Definition at line 92 of file ixlib_array.hh.

template<class T, class Allocator = std::allocator<T>>
void ixion::array<T, Allocator>::construct ( pointer first,
pointer last,
const_pointer source ) [inline, virtual]
 

Reimplemented in ixion::tracking_array.

Definition at line 90 of file ixlib_array.hh.

template<class T, class Allocator = std::allocator<T>>
void ixion::array<T, Allocator>::construct ( pointer first,
pointer last,
const_reference value = T() ) [inline, virtual]
 

Reimplemented in ixion::tracking_array.

Definition at line 87 of file ixlib_array.hh.

template<class T, class Allocator = std::allocator<T>>
void ixion::array<T, Allocator>::deallocate ( ) [inline, virtual]
 

Reimplemented in ixion::tracking_array, and ixion::auto_destroy_array.

Definition at line 83 of file ixlib_array.hh.

template<class T, class Allocator = std::allocator<T>>
void ixion::array<T, Allocator>::destroy ( pointer item ) [inline, virtual]
 

Reimplemented in ixion::tracking_array.

Definition at line 96 of file ixlib_array.hh.

template<class T, class Allocator = std::allocator<T>>
void ixion::array<T, Allocator>::destroy ( pointer first,
pointer last ) [inline, virtual]
 

Reimplemented in ixion::tracking_array.

Definition at line 94 of file ixlib_array.hh.

template<class T, class Allocator = std::allocator<T>>
pointer ixion::array<T, Allocator>::get ( ) const [inline]
 

Definition at line 70 of file ixlib_array.hh.

template<class T, class Allocator = std::allocator<T>>
allocator_type ixion::array<T, Allocator>::get_allocator ( ) const [inline]
 

Definition at line 74 of file ixlib_array.hh.

template<class T, class Allocator = std::allocator<T>>
void ixion::array<T, Allocator>::internal_deallocate ( ) [inline, protected]
 

Definition at line 103 of file ixlib_array.hh.

Referenced by ixion::auto_destroy_array::allocate(), ixion::auto_array::allocate(), deallocate(), ixion::auto_destroy_array::operator=(), ixion::auto_array::operator=(), ixion::auto_array::~auto_array(), and ixion::auto_destroy_array::~auto_destroy_array().

template<class T, class Allocator = std::allocator<T>>
void ixion::array<T, Allocator>::invalidate ( ) [inline, virtual]
 

Reimplemented in ixion::tracking_array.

Definition at line 98 of file ixlib_array.hh.

Referenced by deallocate().

template<class T, class Allocator = std::allocator<T>>
reference ixion::array<T, Allocator>::operator * ( ) const [inline]
 

Definition at line 65 of file ixlib_array.hh.

template<class T, class Allocator = std::allocator<T>>
pointer ixion::array<T, Allocator>::operator+ ( size_type pos ) const [inline]
 

Definition at line 67 of file ixlib_array.hh.

template<class T, class Allocator = std::allocator<T>>
array<T, Allocator> & ixion::array<T, Allocator>::operator= ( array<T, Allocator> const & source ) [inline]
 

Definition at line 56 of file ixlib_array.hh.

template<class T, class Allocator = std::allocator<T>>
reference ixion::array<T, Allocator>::operator[] ( size_type pos ) const [inline]
 

Definition at line 63 of file ixlib_array.hh.


Member Data Documentation

template<class T, class Allocator = std::allocator<T>>
Allocator ixion::array<T, Allocator>::Alloc [protected]
 

Definition at line 41 of file ixlib_array.hh.

template<class T, class Allocator = std::allocator<T>>
size_type ixion::array<T, Allocator>::Capacity [protected]
 

Definition at line 40 of file ixlib_array.hh.

template<class T, class Allocator = std::allocator<T>>
pointer ixion::array<T, Allocator>::Data [protected]
 

Definition at line 39 of file ixlib_array.hh.


The documentation for this struct was generated from the following file:
Generated at Fri Jul 6 21:05:13 2001 for ixlib by doxygen1.2.6 written by Dimitri van Heesch, © 1997-2001