Pop Integer Sequence¶
#include <m3ta/popintegersequence>
Removes a given number of elements from the end of an integer sequence.
Traits¶
- m3ta::PopIntegerSequence
template<std::size_t T_count, typename T_Sequence> struct PopIntegerSequence;
Template Parameters: - T_count – Number of elements to remove from the end.
- T_Sequence – The integer sequence.
Member Types
- type
The type m3ta::IntegerSequence resulting of the elements removal.
Aliases¶
- m3ta::PopIntegerSequenceT
template<std::size_t T_count, typename T_Sequence> using PopIntegerSequenceT = typename PopIntegerSequence<T_count, T_Sequence>::type; template<std::size_t T_count, typename T, T ... T_values> using PopIntegerPack = PopIntegerSequence< T_count, IntegerSequence<T, T_values...> >; template<std::size_t T_count, typename T, T ... T_values> using PopIntegerPackT = typename PopIntegerPack<T_count, T, T_values ...>::type; template<std::size_t T_count, std::size_t ... T_values> using PopIndexPack = PopIntegerSequence< T_count, IndexSequence<T_values...> >; template<std::size_t T_count, std::size_t ... T_values> using PopIndexPackT = typename PopIndexPack<T_count, T_values ...>::type;
Usage Examples¶
using Type1 = m3ta::PopIndexPackT<
1,
0, 1, 2, 4
>; // m3ta::IntegerSequence<std::size_t, 0, 1, 2>
using Type2 = m3ta::PopIntegerSequenceT<
2,
m3ta::IntegerSequence<int, 0, 1, 2, 4>
>; // m3ta::IntegerSequence<int, 0, 1>