sequence_container_veneer Class Template Reference
[Collections Library]

#include <stlsoft/collections/sequence_container_veneer.hpp>

Inheritance diagram for sequence_container_veneer:

stl_collection_tag collection_tag

List of all members.


Detailed Description

template<typename T, typename F>
class stlsoft::sequence_container_veneer< T, F >

Applies a per-item function to a sequence container's items at its destruction.

Parameters:
T The sequence container type
F The function class

Public Types

typedef T container_type
 The container type.
typedef F element_destruction_function_type
 The function class applied to the container's items.
typedef
sequence_container_veneer< T,
F > 
class_type
 The current parameterisation of the type.
typedef
parent_class_type::allocator_type 
allocator_type
 The container's allocator_type type.
typedef
parent_class_type::size_type 
size_type
 The container's size_type type.

Public Member Functions

 sequence_container_veneer ()
 Default constructor.
 sequence_container_veneer (class_type const &rhs)
 Copy constructor.
 sequence_container_veneer (allocator_type const &a)
 Constructs with the given allocator.
template<typename I>
 sequence_container_veneer (I i1, I i2)
 Constructs from a range.
template<typename I>
 sequence_container_veneer (I i1, I i2, allocator_type const &a)
 Constructs from a range with the given allocator.
template<typename V>
 sequence_container_veneer (size_type n, V v)
 Constructs with the given number of elements (initialised with the given value).
template<typename V>
 sequence_container_veneer (size_type n, V v, allocator_type const &a)
 Constructs with the given number of elements (initialised with the given value) with the given allocator.
 ~sequence_container_veneer () throw ()
 Destructor, within which all remaining entries are subject to the destruction function.
class_typeoperator= (class_type const &rhs)
 Copy assignment operator.

Protected Member Functions

void * operator new (size_t)
 Hidden in accordance with the constraints of the veneer concept.
void operator delete (void *)
 Hidden in accordance with the constraints of the veneer concept.

Member Typedef Documentation

typedef T container_type

The container type.

The function class applied to the container's items.

The current parameterisation of the type.

typedef parent_class_type::allocator_type allocator_type

The container's allocator_type type.

typedef parent_class_type::size_type size_type

The container's size_type type.


Constructor & Destructor Documentation

sequence_container_veneer (  )  [inline]

Default constructor.

sequence_container_veneer ( class_type const &  rhs  )  [inline]

Copy constructor.

sequence_container_veneer ( allocator_type const &  a  )  [inline, explicit]

Constructs with the given allocator.

sequence_container_veneer ( i1,
i2 
) [inline]

Constructs from a range.

sequence_container_veneer ( i1,
i2,
allocator_type const &  a 
) [inline]

Constructs from a range with the given allocator.

sequence_container_veneer ( size_type  n,
v 
) [inline]

Constructs with the given number of elements (initialised with the given value).

sequence_container_veneer ( size_type  n,
v,
allocator_type const &  a 
) [inline]

Constructs with the given number of elements (initialised with the given value) with the given allocator.

~sequence_container_veneer (  )  throw () [inline]

Destructor, within which all remaining entries are subject to the destruction function.

References ss_typename_type_k.


Member Function Documentation

class_type& operator= ( class_type const &  rhs  )  [inline]

Copy assignment operator.

This method is provided in case the parameterising class provides the operator. If it does not, then the compiler will ignore it unless a call is made to it, in which case an error would have been reported anyway

void* operator new ( size_t   )  [inline, protected]

Hidden in accordance with the constraints of the veneer concept.

void operator delete ( void *   )  [inline, protected]

Hidden in accordance with the constraints of the veneer concept.


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

Generated on Thu Jun 10 08:58:39 2010 for STLSoft by  doxygen 1.5.6