Flow
Documentation for the Flow C++ Library
Loading...
Searching...
No Matches
flow::NonTypeList< values > Struct Template Reference

#include <flow_non_type_list.h>

Public Types

using type = std::common_type_t<decltype(values)...>
template<auto value>
using append = Append<NonTypeList, value>::type
template<auto value>
using prepend = Prepend<NonTypeList, value>::type
using popFront = PopFront<NonTypeList>::type
using popBack = PopBack<NonTypeList>::type
template<std::size_t index, type value>
using set = Set<NonTypeList, index, value>::type
template<std::size_t first, std::size_t last>
using splice = Splice<NonTypeList, first, last>::type

Static Public Member Functions

static constexpr std::array< type, sizeof...(values)> data ()
 Return all the values in an array.
static constexpr auto get (std::size_t index)

Static Public Attributes

static constexpr std::size_t size = sizeof...(values)

Detailed Description

template<auto... values>
struct flow::NonTypeList< values >

Definition at line 39 of file flow_non_type_list.h.

Member Typedef Documentation

◆ append

template<auto... values>
template<auto value>
using flow::NonTypeList< values >::append = Append<NonTypeList, value>::type

Definition at line 47 of file flow_non_type_list.h.

◆ popBack

template<auto... values>
using flow::NonTypeList< values >::popBack = PopBack<NonTypeList>::type

Definition at line 54 of file flow_non_type_list.h.

◆ popFront

template<auto... values>
using flow::NonTypeList< values >::popFront = PopFront<NonTypeList>::type

Definition at line 52 of file flow_non_type_list.h.

◆ prepend

template<auto... values>
template<auto value>
using flow::NonTypeList< values >::prepend = Prepend<NonTypeList, value>::type

Definition at line 50 of file flow_non_type_list.h.

◆ set

template<auto... values>
template<std::size_t index, type value>
using flow::NonTypeList< values >::set = Set<NonTypeList, index, value>::type

Definition at line 57 of file flow_non_type_list.h.

◆ splice

template<auto... values>
template<std::size_t first, std::size_t last>
using flow::NonTypeList< values >::splice = Splice<NonTypeList, first, last>::type

Definition at line 60 of file flow_non_type_list.h.

◆ type

template<auto... values>
using flow::NonTypeList< values >::type = std::common_type_t<decltype(values)...>

Definition at line 40 of file flow_non_type_list.h.

Member Function Documentation

◆ data()

template<auto... values>
constexpr std::array< type, sizeof...(values)> flow::NonTypeList< values >::data ( )
inlinestaticconstexpr

Return all the values in an array.

Returns
An array of template value.

Definition at line 64 of file flow_non_type_list.h.

64 {
65 return { values... };
66 }

Referenced by flow::NonTypeList< vs..., v >::get().

◆ get()

template<auto... values>
constexpr auto flow::NonTypeList< values >::get ( std::size_t index)
inlinestaticconstexpr

Definition at line 68 of file flow_non_type_list.h.

68 {
69 return data()[index];
70 }
static constexpr std::array< type, sizeof...(values)> data()
Return all the values in an array.

Member Data Documentation

◆ size

template<auto... values>
std::size_t flow::NonTypeList< values >::size = sizeof...(values)
staticconstexpr

Definition at line 44 of file flow_non_type_list.h.


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