Range-v3
Range algorithms, views, and actions for the Standard Library
 
Loading...
Searching...
No Matches
Integer sequence

Equivalent to C++14's std::integer_sequence More...

Classes

struct  meta::integer_sequence< T,... >
 A container for a sequence of compile-time integer constants. More...
 

Typedefs

template<bool B>
using meta::bool_ = std::integral_constant<bool, B>
 An integral constant wrapper for bool.
 
template<char Ch>
using meta::char_ = std::integral_constant<char, Ch>
 An integral constant wrapper for char.
 
template<std::size_t... Is>
using meta::index_sequence = integer_sequence<std::size_t, Is...>
 A container for a sequence of compile-time integer constants of type std::size_t.
 
template<int I>
using meta::int_ = std::integral_constant<int, I>
 An integral constant wrapper for int.
 
template<typename T , T From, T To>
using meta::integer_range
 Makes the integer sequence [From, To).
 
template<std::size_t N>
using meta::make_index_sequence
 Generate index_sequence containing integer constants [0,1,2,...,N-1].
 
template<typename T , T N>
using meta::make_integer_sequence
 Generate integer_sequence containing integer constants [0,1,2,...,N-1].
 
template<std::size_t N>
using meta::size_t = std::integral_constant<std::size_t, N>
 An integral constant wrapper for std::size_t.
 

Functions

template<char... Chs>
constexpr fold< list< char_< Chs >... >, meta::size_t< 0 >, quote< detail::atoi_ > > meta::operator""_z ()
 A user-defined literal that generates objects of type meta::size_t.
 

Detailed Description

Equivalent to C++14's std::integer_sequence

Typedef Documentation

◆ integer_range

template<typename T , T From, T To>
using meta::integer_range

#include <meta/meta.hpp>

Initial value:
_t<detail::coerce_indices_<T, From,
make_index_sequence<detail::range_distance_(From, To)>>>
_t< detail::make_indices_< N, index_sequence< 0 >, detail::strategy_(1, N)> > make_index_sequence
Generate index_sequence containing integer constants [0,1,2,...,N-1].
Definition meta.hpp:472
typename T::type _t
Type alias for T::type.
Definition meta.hpp:141

Makes the integer sequence [From, To).

Complexity
O(log(To - From)).

◆ make_index_sequence

template<std::size_t N>
using meta::make_index_sequence

#include <meta/meta.hpp>

Initial value:
_t<detail::make_indices_<N, index_sequence<0>, detail::strategy_(1, N)>>

Generate index_sequence containing integer constants [0,1,2,...,N-1].

Complexity
O(log(N)).

◆ make_integer_sequence

template<typename T , T N>
using meta::make_integer_sequence

#include <meta/meta.hpp>

Initial value:
_t<detail::coerce_indices_<T, 0, make_index_sequence<static_cast<std::size_t>(N)>>>

Generate integer_sequence containing integer constants [0,1,2,...,N-1].

Complexity
O(log(N)).