Trait composition.
|
template<invocable Fn, invocable Q = quote<list>> |
using | meta::curry = compose< Fn, Q > |
| An invocable that takes a bunch of arguments, bundles them into a type list, and then calls the invocable Fn with the type list Q .
|
|
template<invocable... Fns> |
using | meta::on_ = detail::on_< Fns... > |
| Use as on<Fn, Gs...> . Creates an invocable that applies invocable Fn to the result of applying invocable compose<Gs...> to all the arguments.
|
|
template<template< typename... > class C> |
using | meta::quote_trait = compose< quote< _t >, quote< C > > |
| Turn a trait template C into an invocable. More...
|
|
template<typename T , template< T... > class C> |
using | meta::quote_trait_i = compose< quote< _t >, quote_i< T, C > > |
| Turn a trait template C taking literals of type T into an invocable.
|
|
template<invocable Fn> |
using | meta::uncurry = bind_front< quote< apply >, Fn > |
| An invocable that takes a type list, unpacks the types, and then calls the invocable Fn with the types.
|
|