Trait invocation.
Modules | |
| lazy | |
Classes | |
| struct | meta::defer< C, Ts > |
A wrapper that defers the instantiation of a template C with type parameters Ts in a lambda or let expression. More... | |
| struct | meta::defer_i< T, C, Is > |
A wrapper that defers the instantiation of a template C with integral constant parameters Is in a lambda or let expression. More... | |
| struct | meta::id< T > |
A trait that always returns its argument T. It is also an invocable that always returns T. More... | |
Typedefs | |
| template<trait T> | |
| using | meta::_t = typename T::type |
Type alias for T::type. | |
| template<invocable Fn, typename L > | |
| using | meta::apply = _t< extension::apply< Fn, L > > |
Applies the invocable Fn using the types in the type list L as arguments. | |
| template<template< typename... > class C, typename... Ts> | |
| using | meta::defer_trait = defer< detail::_t_t, detail::defer_< C, Ts... > > |
A wrapper that defers the instantiation of a trait C with type parameters Ts in a lambda or let expression. More... | |
| template<typename T , template< T... > class C, T... Is> | |
| using | meta::defer_trait_i = defer< detail::_t_t, detail::defer_i_< T, C, Is... > > |
A wrapper that defers the instantiation of a trait C with integral constant parameters Is in a lambda or let expression. More... | |
| template<invocable Fn, typename... Args> | |
| using | meta::invoke = typename Fn::template invoke< Args... > |
Evaluate the invocable Fn with the arguments Args. | |
Variables | |
| template<integral T> | |
| constexpr T::type::value_type | meta::_v = T::type::value |
Variable alias for T::type::value. More... | |
| using meta::defer_trait = typedef defer<detail::_t_t, detail::defer_<C, Ts...> > |
#include <meta/meta.hpp>
A wrapper that defers the instantiation of a trait C with type parameters Ts in a lambda or let expression.
defer | using meta::defer_trait_i = typedef defer<detail::_t_t, detail::defer_i_<T, C, Is...> > |
#include <meta/meta.hpp>
A wrapper that defers the instantiation of a trait C with integral constant parameters Is in a lambda or let expression.
defer_i | constexpr T::type::value_type meta::_v = T::type::value |