LeechCraft 0.6.70-16373-g319c272718
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... >)