This is implementation of type vector taking advantage of variadic template. This implementation is NOT c++11 adaptation of mpl. It is small set of functon needed for components class purpose. It is also less general than mpl. The implementation is create to avoid some problems with mpl. The c++11 techniques makes it much simpler and clearer. When boost::mpl11 apears this code should be removed.
More...
|
struct | paal::data_structures::TypesVector< Args > |
| TypesVector. More...
|
|
struct | paal::data_structures::size< Vec > |
| Computes size of TypesVector. More...
|
|
struct | paal::data_structures::size< TypesVector< Args...> > |
| Computes size of TypesVector. More...
|
|
struct | paal::data_structures::fold< Vector, StartValue, Functor > |
| Standard fold function implementation. More...
|
|
struct | paal::data_structures::fold< TypesVector< Arg, Args...>, StartValue, Functor > |
| Standard fold function implementation. More...
|
|
struct | paal::data_structures::fold< TypesVector<>, StartValue, Functor > |
| Standard fold function implementation, empty list case. More...
|
|
struct | paal::data_structures::push_back< Vector, Val > |
| push back given val to TypesVector More...
|
|
struct | paal::data_structures::push_back< TypesVector< Args...>, Val > |
| push back given val to TypesVector More...
|
|
struct | paal::data_structures::at< Vector, Id > |
| gives element on id in TypesVector More...
|
|
struct | paal::data_structures::at< TypesVector< Arg, Args...>, std::integral_constant< C, i > > |
| gives element on id in TypesVector More...
|
|
struct | paal::data_structures::at< TypesVector< Arg, Args...>, std::integral_constant< C, 0 > > |
| gives element on id in TypesVector, at 0 case More...
|
|
struct | paal::data_structures::join< Components1, Components2 > |
| detail More...
|
|
struct | paal::data_structures::join< TypesVector< Args1...>, TypesVector< Args2...> > |
| joins to TypesVectors, implementation More...
|
|
struct | paal::data_structures::remove_n_first< n, V > |
| removes first n elements from given TypesVector More...
|
|
struct | paal::data_structures::remove_n_first< n, TypesVector< Arg, Args...> > |
| removes first n elements from given TypesVector More...
|
|
struct | paal::data_structures::remove_n_first< 0, TypesVector< Arg, Args...> > |
| two cases below cannot be one becasuse of ambiguity in instancaition More...
|
|
struct | paal::data_structures::remove_n_first< 0, TypesVector<> > |
| removes first n elements from given TypesVector, n=0 case More...
|
|
struct | paal::data_structures::pos< Type, TypesVector > |
| returns pos of the element in the TypesVector More...
|
|
struct | paal::data_structures::pos< Type, TypesVector< TypesPrefix, TypesSufix...> > |
| returns pos of Type in given TypeList More...
|
|
struct | paal::data_structures::pos< Type, TypesVector< Type, TypesSufix...> > |
|
struct | paal::data_structures::replace_at_pos< pos, NewType, TypesVector > |
| replace element at pos to NewType More...
|
|
struct | paal::data_structures::replace_at_pos< pos, NewType, TypesVector< TypesPrefix, TypesSufix...> > |
| replace type at pos to new type More...
|
|
struct | paal::data_structures::replace_at_pos< 0, NewType, TypesVector< TypesPrefix, TypesSufix...> > |
| replace type at pos to new type, specialization for pos = 0 More...
|
|
This is implementation of type vector taking advantage of variadic template. This implementation is NOT c++11 adaptation of mpl. It is small set of functon needed for components class purpose. It is also less general than mpl. The implementation is create to avoid some problems with mpl. The c++11 techniques makes it much simpler and clearer. When boost::mpl11 apears this code should be removed.
- Author
- Piotr Wygocki
- Version
- 1.0
- Date
- 2013-07-18
Definition in file types_vector.hpp.