repr 0.1
Reconstructable string representations and more
|
#include <list.h>
Public Types | |
template<template< typename > class F> | |
using | map = List< F< Ts >... > |
template<template< typename > class F> | |
using | map_t = List< typename F< Ts >::type... > |
template<std::size_t Idx> | |
using | get = typename pack::Split< Idx, List< Ts... > >::type |
template<std::size_t Idx> | |
using | split = List< typename do_split< Idx >::head, typename do_split< Idx >::tail > |
template<std::size_t Idx> | |
using | head = typename do_split< Idx >::head |
template<std::size_t Idx> | |
using | tail = typename do_split< Idx >::tail |
template<typename T > | |
using | append = List< Ts..., T > |
template<typename T > | |
using | prepend = List< T, Ts... > |
template<template< typename... > class T> | |
using | to = T< Ts... > |
Static Public Member Functions | |
template<typename F , typename... Args> | |
static constexpr decltype(auto) | invoke (F &&callable, Args &&... args) |
template<typename F , typename... Args> | |
static constexpr void | for_each (F &&callable, Args &&... args) |
template<typename F , typename... Args> | |
static constexpr void | enumerate (F &&callable, Args &&... args) |
Static Public Attributes | |
static constexpr std::size_t | size = sizeof...(Ts) |
using librepr::TypeListBase< List, Ts >::get = typename pack::Split<Idx, List<Ts...> >::type |
using librepr::TypeListBase< List, Ts >::head = typename do_split<Idx>::head |
using librepr::TypeListBase< List, Ts >::split = List<typename do_split<Idx>::head, typename do_split<Idx>::tail> |
using librepr::TypeListBase< List, Ts >::tail = typename do_split<Idx>::tail |
using librepr::TypeListBase< List, Ts >::to = T<Ts...> |
|
inlinestaticconstexpr |
|
inlinestaticconstexpr |
|
inlinestaticconstexpr |
|
staticconstexpr |