|
template<std::size_t I, typename... Args> |
using | at_in_pack_t = typename at_in_pack< I, Args... >::type |
|
template<typename Signature > |
using | bind_traits = meta_detail::callable_traits< Signature > |
|
template<bool B> |
using | boolean = std::integral_constant< bool, B > |
|
template<typename F > |
using | call_operator_deducible = typename is_detected< meta_detail::detect_deducible_signature, F >::type |
|
template<bool B, typename T , typename U > |
using | conditional_t = typename conditional< B >::template type< T, U > |
|
template<template< typename... > class Pred, typename... Ts> |
using | count_even_for_pack = count_when_for_to_pack< meta_detail::on_even, sizeof...(Ts), Pred, Ts... > |
|
template<template< typename... > class Pred, typename... Ts> |
using | count_odd_for_pack = count_when_for_to_pack< meta_detail::on_odd, sizeof...(Ts), Pred, Ts... > |
|
template<typename... Args> |
using | disable = std::enable_if_t< neg< all< Args... > >::value, enable_t > |
|
template<typename... Args> |
using | disable_any = std::enable_if_t< neg< any< Args... > >::value, enable_t > |
|
template<bool value, typename T = void> |
using | disable_if_t = std::enable_if_t<!value, T > |
|
template<typename... Args> |
using | enable = std::enable_if_t< all< Args... >::value, enable_t > |
|
template<typename... Args> |
using | enable_any = std::enable_if_t< any< Args... >::value, enable_t > |
|
template<typename Signature > |
using | function_args_t = typename bind_traits< Signature >::args_list |
|
template<typename Signature > |
using | function_return_t = typename bind_traits< Signature >::return_type |
|
template<typename Signature > |
using | function_signature_t = typename bind_traits< Signature >::signature_type |
|
template<typename T > |
using | has_insert = meta::boolean< meta_detail::has_insert_test< T >::value > |
|
template<typename T > |
using | has_insert_after = meta::boolean< meta_detail::has_insert_after_test< T >::value > |
|
template<typename T > |
using | has_insert_with_iterator = meta::boolean< meta_detail::has_insert_with_iterator_test< T >::value > |
|
template<typename T > |
using | has_max_size = meta::boolean< meta_detail::has_max_size_test< T >::value > |
|
template<typename T > |
using | has_push_back = meta::boolean< meta_detail::has_push_back_test< T >::value > |
|
template<typename T > |
using | has_size = meta::boolean< meta_detail::has_size_test< T >::value > |
|
template<typename T > |
using | identity_t = typename identity< T >::type |
|
template<std::size_t I> |
using | index_value = std::integral_constant< std::size_t, I > |
|
template<typename T > |
using | is_associative = meta::all< has_key_type< T >, has_key_value_pair< T >, has_mapped_type< T > > |
|
template<typename T > |
using | is_builtin_type = std::integral_constant< bool, std::is_arithmetic< T >::value||std::is_pointer< T >::value||std::is_array< T >::value > |
|
template<typename T > |
using | is_c_str = is_c_str_of< T, char > |
|
template<typename T , typename Char > |
using | is_c_str_of = any< std::is_same< T, const Char * >, std::is_same< T, Char const *const >, std::is_same< T, Char * >, is_string_literal_array_of< T, Char > > |
|
template<typename T > |
using | is_c_str_or_string = is_c_str_or_string_of< T, char > |
|
template<typename T , typename Char > |
using | is_c_str_or_string_of = any< is_c_str_of< T, Char >, is_string_of< T, Char > > |
|
template<template< class... > class Trait, class... Args> |
using | is_detected = typename meta_detail::is_detected< Trait, void, Args... >::type |
|
template<typename T > |
using | is_initializer_list = meta::is_specialization_of< T, std::initializer_list > |
|
template<typename T > |
using | is_invocable = boolean< meta_detail::is_invocable< T >::value > |
|
template<typename T > |
using | is_lookup = meta::all< has_key_type< T >, has_value_type< T > > |
|
template<typename T > |
using | is_matched_lookup = meta_detail::is_matched_lookup_impl< T, is_lookup< T >::value > |
|
template<typename T > |
using | is_member_object = std::integral_constant< bool, std::is_member_object_pointer_v< T >||is_specialization_of_v< T, readonly_wrapper > > |
|
template<typename T > |
using | is_member_object_or_function = std::integral_constant< bool, is_member_object_v< T >||std::is_member_pointer_v< T > > |
|
template<typename T > |
using | is_not_move_only = neg< is_move_only< T > > |
|
template<typename T > |
using | is_optional = any< is_specialization_of< T, optional >, is_specialization_of< T, std::optional > > |
|
template<typename T > |
using | is_ordered = meta::all< has_key_comp< T >, meta::neg< has_load_factor< T > >> |
|
template<typename T > |
using | is_pointer_like = std::integral_constant< bool, !std::is_array_v< T > &&(std::is_pointer_v< T >||is_detected_v< meta_detail::is_explicitly_dereferenceable_test, T >)> |
|
template<typename T > |
using | is_probably_stateless_lambda = typename meta_detail::is_probably_stateless_lambda< T, std::is_empty_v< T > &&call_operator_deducible_v< T > >::type |
|
template<typename T , template< typename... > class Templ> |
using | is_specialization_of = meta_detail::is_specialization_of< std::remove_cv_t< T >, Templ > |
|
template<typename T , typename CharT = char> |
using | is_string_constructible = meta::boolean< is_string_literal_array_of_v< T, CharT >||std::is_same_v< T, const CharT * >||std::is_same_v< T, CharT >||is_string_of_v< T, CharT >||std::is_same_v< T, std::initializer_list< CharT > >||is_string_view_of_v< T, CharT >||std::is_null_pointer_v< T > > |
|
template<typename T > |
using | is_string_like = meta::boolean< is_specialization_of_v< T, std::basic_string >||is_specialization_of_v< T, std::basic_string_view >||is_string_literal_array_v< T > > |
|
template<typename T > |
using | is_string_like_or_constructible = meta::boolean< is_string_like_v< T >||is_string_constructible_v< T > > |
|
template<typename T > |
using | is_string_literal_array = boolean< std::is_array_v< T > &&any_same_v< std::remove_all_extents_t< T >, char, char16_t, char32_t, wchar_t > > |
|
template<typename T , typename CharT = char> |
using | is_string_literal_array_of = boolean< std::is_array_v< T > &&std::is_same_v< std::remove_all_extents_t< T >, CharT > > |
|
template<typename T > |
using | is_tuple = is_specialization_of< T, std::tuple > |
|
template<typename T > |
using | neg = boolean<!T::value > |
|
template<typename Arg > |
using | pop_front_type_t = typename pop_front_type< Arg >::type |
|
template<typename T > |
using | remove_member_pointer_t = remove_member_pointer< T > |
|
template<typename... Args> |
using | return_type_t = typename return_type< Args... >::type |
|
using | sfinae_no_t = std::false_type |
|
using | sfinae_yes_t = std::true_type |
|
template<std::size_t N, typename Tuple > |
using | tuple_element = std::tuple_element< N, std::remove_reference_t< Tuple > > |
|
template<std::size_t N, typename Tuple > |
using | tuple_element_t = std::tuple_element_t< N, std::remove_reference_t< Tuple > > |
|
template<typename... Args> |
using | tuple_types = typename detail::tuple_types_< Args... >::type |
|
template<typename T > |
using | unqualified = std::remove_cv< std::remove_reference_t< T > > |
|
template<typename T > |
using | unqualified_t = typename unqualified< T >::type |
|
template<std::size_t N, typename Tuple > |
using | unqualified_tuple_element = unqualified< tuple_element_t< N, Tuple > > |
|
template<std::size_t N, typename Tuple > |
using | unqualified_tuple_element_t = unqualified_t< tuple_element_t< N, Tuple > > |
|
template<typename T > |
using | unwrap_unqualified_t = typename unwrap_unqualified< T >::type |
|
template<typename T > |
using | unwrapped_t = typename unwrapped< T >::type |
|
template<typename... > |
using | void_t = void |
|
|
template<typename... Args> |
constexpr bool | all_v = all<Args...>::value |
|
template<typename T , typename... Args> |
constexpr bool | any_same_v = any_same<T, Args...>::value |
|
template<typename... Args> |
constexpr bool | any_v = any<Args...>::value |
|
template<bool B> |
constexpr bool | boolean_v = boolean<B>::value |
|
template<typename F > |
constexpr bool | call_operator_deducible_v = call_operator_deducible<F>::value |
|
template<template< typename... > class Pred, typename... Ts> |
constexpr std::size_t | count_even_for_pack_v = count_even_for_pack<Pred, Ts...>::value |
|
template<template< typename... > class Pred, typename... Ts> |
constexpr std::size_t | count_for_pack_v = count_for_pack<Pred, Ts...>::value |
|
template<std::size_t Limit, template< typename... > class Pred, typename... Ts> |
constexpr std::size_t | count_for_to_pack_v = count_for_to_pack<Limit, Pred, Ts...>::value |
|
template<template< typename... > class Pred, typename... Ts> |
constexpr std::size_t | count_odd_for_pack_v = count_odd_for_pack<Pred, Ts...>::value |
|
template<template< typename... > class When, std::size_t Limit, template< typename... > class Pred, typename... Ts> |
constexpr std::size_t | count_when_for_to_pack_v = count_when_for_to_pack<When, Limit, Pred, Ts...>::value |
|
constexpr const auto | enabler = enable_t::_ |
|
template<typename T > |
constexpr bool | has_begin_end_v = has_begin_end<T>::value |
|
template<typename T , typename Char > |
constexpr bool | is_c_str_of_v = is_c_str_of<T, Char>::value |
|
template<typename T , typename Char > |
constexpr bool | is_c_str_or_string_of_v = is_c_str_or_string_of<T, Char>::value |
|
template<typename T > |
constexpr bool | is_c_str_or_string_v = is_c_str_or_string<T>::value |
|
template<typename T > |
constexpr bool | is_c_str_v = is_c_str<T>::value |
|
template<template< class... > class Trait, class... Args> |
constexpr bool | is_detected_v = is_detected<Trait, Args...>::value |
|
template<typename T > |
constexpr bool | is_initializer_list_v = is_initializer_list<T>::value |
|
template<typename T > |
constexpr bool | is_invocable_v = is_invocable<T>::value |
|
template<typename T > |
constexpr bool | is_member_object_or_function_v = is_member_object_or_function<T>::value |
|
template<typename T > |
constexpr bool | is_member_object_v = is_member_object<T>::value |
|
template<typename T > |
constexpr bool | is_optional_v = is_optional<T>::value |
|
template<typename T > |
constexpr bool | is_pointer_like_v = is_pointer_like<T>::value |
|
template<typename T > |
constexpr bool | is_probably_stateless_lambda_v = is_probably_stateless_lambda<T>::value |
|
template<typename T , template< typename... > class Templ> |
constexpr bool | is_specialization_of_v = is_specialization_of<std::remove_cv_t<T>, Templ>::value |
|
template<typename T , typename CharT = char> |
constexpr bool | is_string_constructible_v = is_string_constructible<T, CharT>::value |
|
template<typename T > |
constexpr bool | is_string_like_v = is_string_like<T>::value |
|
template<typename T , typename CharT = char> |
constexpr bool | is_string_literal_array_of_v = is_string_literal_array_of<T, CharT>::value |
|
template<typename T > |
constexpr bool | is_string_literal_array_v = is_string_literal_array<T>::value |
|
template<typename T , typename CharT > |
constexpr bool | is_string_of_v = is_string_of<T, CharT>::value |
|
template<typename T , typename CharT > |
constexpr bool | is_string_view_of_v = is_string_view_of<T, CharT>::value |
|
template<typename T > |
constexpr bool | is_tuple_v = is_tuple<T>::value |
|
template<typename T > |
constexpr bool | neg_v = neg<T>::value |
|