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

mpcl::util::TVariableArgumentArray< TArgumentType > Class Template Reference

#include <variable_argument_array.hh>

List of all members.

Public Methods

 TVariableArgumentArray (void)
 Builds a new instance.

void initialize (va_list &rtSOURCE_VA_LIST)
TArgumentType & operator[] (size_t zINDEX) const throw (TConstraintException)
size_t size (void) const


Detailed Description

template<typename TArgumentType>
class mpcl::util::TVariableArgumentArray< TArgumentType >

Variable argument array.

Handles the problem of functions with variable number of arguments.

Warning:
Whenever a TArgumentType instance, that has been passed as argument, is NULL, then the previous argument is the last argument in the list.

Definition at line 52 of file variable_argument_array.hh.


Member Function Documentation

template<typename TArgumentType>
void mpcl::util::TVariableArgumentArray< TArgumentType >::initialize va_list &    rtSOURCE_VA_LIST [inline]
 

Sets ptVa_list with rktSOURCE_VA_LIST (must be initialized with std::va_start()).

Parameters:
rtSOURCE_VA_LIST  Source argument list.

Definition at line 93 of file variable_argument_array.hh.

template<typename TArgumentType>
TArgumentType& mpcl::util::TVariableArgumentArray< TArgumentType >::operator[] size_t    zINDEX const throw (TConstraintException) [inline]
 

Gets the argument at position zINDEX.

Parameters:
zINDEX  Argument index.
Returns:
The argument.

Definition at line 112 of file variable_argument_array.hh.

template<typename TArgumentType>
size_t mpcl::util::TVariableArgumentArray< TArgumentType >::size void    const [inline]
 

Gets the arguments count.

Returns:
The arguments count.

Definition at line 136 of file variable_argument_array.hh.

Referenced by mpcl::util::TVariableArgumentArray< TParameter >::operator[]().


The documentation for this class was generated from the following file:
Generated on Mon Oct 13 02:35:26 2003 for MPCL by doxygen1.2.18