Calico
|
Miscellaneous utility functions. More...
#include <tuple>
#include <ostream>
#include <type_traits>
Classes | |
struct | cal::combine_tuples< Tuples > |
Combines several tuple types into a single tuple type. More... | |
struct | cal::match_cv< T, Target > |
Obtains a type related to T with the same const-volatile qualifiers as Target . More... | |
struct | cal::ntuple< T, N > |
Constructs a tuple type containing N objects of type T . More... | |
struct | cal::packed_params< Function > |
A wrapper function type that allows a function to be called with a tuple whose elements are unpacked as arguments. More... | |
struct | cal::unparenthesize_type< void(TypeExpression)> |
Used to remove parentheses around a type expression. More... | |
struct | cal::valid_call< T > |
Returns whether the function call is valid. When the template parameter is equal to F(T...) , it will return true if the function object F can be called with parameters of type T... . If variadic templates are not supported, a maximum of 5 arguments are supported. More... | |
Namespaces | |
cal | |
Primary namespace. | |
Typedefs | |
template<class... Tuples> | |
using | cal::combine_tuples_t = combine_tuples< Tuples...>::type |
template<class T , class Target > | |
using | cal::match_cv_t = match_cv< T, Target >::type |
template<class T , std::size_t N> | |
using | cal::ntuple_t = ntuple< T, N >::type |
template<class T > | |
using | cal::unparenthesize_type_t = unparenthesize_type< T >::type |
Functions | |
template<class... Ts> | |
std::ostream & | std::operator<< (std::ostream &s, const std::tuple< Ts...> &x) |
Outputs a tuple in the format (a, b, c, ...) . | |
template<class Function > | |
auto | cal::pack_params (const Function &f) |
Constructs a wrapper function object that allows a function to be called with a tuple whose elements are unpacked as arguments. | |
Miscellaneous utility functions.