|
template<typename T > |
using | unqualified = std::remove_cv< std::remove_reference_t< T >> |
|
template<typename T > |
using | unqualified_t = typename unqualified< T >::type |
|
template<typename... Args> |
using | tuple_types = typename detail::tuple_types_< Args... >::type |
|
template<typename Arg > |
using | pop_front_type_t = typename pop_front_type< Arg >::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<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 Signature > |
using | function_args_t = typename bind_traits< Signature >::args_list |
|
template<typename Signature > |
using | function_signature_t = typename bind_traits< Signature >::signature_type |
|
template<typename Signature > |
using | function_return_t = typename bind_traits< Signature >::return_type |
|
typedef std::array< char, 1 > | sfinae_yes_t |
|
typedef std::array< char, 2 > | sfinae_no_t |
|
template<typename T > |
using | identity_t = typename identity< T >::type |
|
template<typename T > |
using | unwrapped_t = typename unwrapped< T >::type |
|
template<typename T > |
using | unwrap_unqualified_t = typename unwrap_unqualified< T >::type |
|
template<typename T > |
using | remove_member_pointer_t = remove_member_pointer< T > |
|
template<typename T , template< typename... > class Templ> |
using | is_specialization_of = meta_detail::is_specialization_of< std::remove_cv_t< T >, Templ > |
|
template<bool B> |
using | boolean = std::integral_constant< bool, B > |
|
template<typename T > |
using | invoke_t = typename T::type |
|
template<typename T > |
using | invoke_b = boolean< T::value > |
|
template<typename T > |
using | neg = boolean<!T::value > |
|
template<typename Condition , typename Then , typename Else > |
using | condition = std::conditional_t< Condition::value, Then, Else > |
|
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 | disable = std::enable_if_t< neg< all< Args... >>::value, enable_t > |
|
template<typename... Args> |
using | enable_any = std::enable_if_t< any< Args... >::value, enable_t > |
|
template<typename... Args> |
using | disable_any = std::enable_if_t< neg< any< Args... >>::value, enable_t > |
|
template<std::size_t I, typename... Args> |
using | at_in_pack_t = typename at_in_pack< I, Args... >::type |
|
template<typename... Args> |
using | return_type_t = typename return_type< Args... >::type |
|
template<typename T , typename U = T> |
using | supports_op_less = decltype(meta_detail::supports_op_less_test(std::declval< T & >(), std::declval< U & >())) |
|
template<typename T , typename U = T> |
using | supports_op_equal = decltype(meta_detail::supports_op_equal_test(std::declval< T & >(), std::declval< U & >())) |
|
template<typename T , typename U = T> |
using | supports_op_less_equal = decltype(meta_detail::supports_op_less_equal_test(std::declval< T & >(), std::declval< U & >())) |
|
template<typename T , typename U = std::ostream> |
using | supports_ostream_op = decltype(meta_detail::supports_ostream_op(std::declval< T & >(), std::declval< U & >())) |
|
template<typename T > |
using | supports_adl_to_string = decltype(meta_detail::supports_adl_to_string(std::declval< T & >())) |
|
template<typename T > |
using | supports_to_string_member = meta::boolean< meta_detail::has_to_string_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_max_size = meta::boolean< meta_detail::has_max_size_test< T >::value > |
|
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_size = meta::boolean< meta_detail::has_size_test< T >::value||meta_detail::has_size_test< const T >::value > |
|
template<typename T > |
using | is_string_like = any< is_specialization_of< meta::unqualified_t< T >, std::basic_string >, is_specialization_of< meta::unqualified_t< T >, basic_string_view >, meta::all< std::is_array< unqualified_t< T >>, meta::any_same< meta::unqualified_t< std::remove_all_extents_t< meta::unqualified_t< T >>>, char, char16_t, char32_t, wchar_t >> > |
|
template<typename T > |
using | is_string_constructible = any< meta::all< std::is_array< unqualified_t< T >>, std::is_same< meta::unqualified_t< std::remove_all_extents_t< meta::unqualified_t< T >>>, char >>, std::is_same< unqualified_t< T >, const char * >, std::is_same< unqualified_t< T >, char >, std::is_same< unqualified_t< T >, std::string >, std::is_same< unqualified_t< T >, std::initializer_list< char >> > |
|
template<typename T > |
using | is_c_str = any< std::is_same< std::decay_t< unqualified_t< T >>, const char * >, std::is_same< std::decay_t< unqualified_t< T >>, char * >, std::is_same< unqualified_t< T >, std::string >> |
|
template<typename T > |
using | is_not_move_only = neg< is_move_only< T >> |
|