LeechCraft 0.6.70-17609-g3dde4097dd
Modular cross-platform feature rich live environment.
Loading...
Searching...
No Matches
typelist.h File Reference
#include <tuple>
Include dependency graph for typelist.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  LC::Util::Typelist<... >
struct  LC::Util::Head< List< H, T... > >
struct  LC::Util::detail::DropImpl< N, List >
struct  LC::Util::detail::DropImpl< 0, List >
struct  LC::Util::detail::Filter< Pred, List< Head, Tail... >, std::enable_if_t< Pred< Head >::value > >
struct  LC::Util::detail::Filter< Pred, List< Head, Tail... >, std::enable_if_t<!Pred< Head >::value > >
struct  LC::Util::detail::Filter< Pred, List<> >
struct  LC::Util::AsTypelist< OtherList< Args... > >
struct  LC::Util::detail::Find< Name, Def, T, Rest... >
struct  LC::Util::detail::Find< Name, Def, Name< T >, Rest... >
struct  LC::Util::detail::Find< Name, Def >

Namespaces

namespace  LC
namespace  LC::Util
namespace  LC::Util::detail

Typedefs

template<typename List>
using LC::Util::Head_t = typename Head<List>::Head_t
template<template< typename > class Pred, typename List>
using LC::Util::Filter_t = typename detail::Filter<Pred, List>::Result_t
template<typename T>
using LC::Util::AsTypelist_t = typename AsTypelist<T>::Result_t
template<template< typename > class Name, typename Def, typename... Args>
using LC::Util::Find = typename detail::Find<Name, Def, Args...>::type

Functions

template<template< typename... > class List, typename H, typename... T>
constexpr List< T... > LC::Util::Tail (List< H, T... >)
template<int N, template< typename... > class List, typename... Args>
constexpr detail::DropImpl< N, List< Args... > >::Result_t LC::Util::Drop (List< Args... >)
template<template< typename... > class List, typename... Args1, typename... Args2>
constexpr List< Args1..., Args2... > LC::Util::Concat (List< Args1... >, List< Args2... >)
template<template< typename... > class List>
constexpr List LC::Util::Reverse (List<>)
template<template< typename... > class List, typename Head, typename... Tail>
constexpr auto LC::Util::Reverse (List< Head, Tail... >) -> decltype(Concat(Reverse(List< Tail... > {}), List< Head > {}))
template<template< typename... > class List, typename Tuple, size_t... Is>
constexpr auto LC::Util::detail::InitImpl (std::integer_sequence< size_t, Is... >)
template<template< typename... > class List, typename... Args>
constexpr auto LC::Util::Init (List< Args... >)
template<typename Type, template< typename... > class List, typename... Args>
constexpr bool LC::Util::HasType (List< Args... >)
template<typename F, typename G, typename Def, typename Head, typename... Args>
auto LC::Util::FirstMatching (F f, G g, Def def, Util::Typelist< Head, Args... >)