Classes | Typedefs | Functions | Variables
sol::meta::meta_detail Namespace Reference

Classes

struct  always_true
 
struct  basic_traits
 
struct  callable_traits
 
struct  callable_traits< R(T::*), true >
 
struct  count_when_for_pack
 
class  declval< T & >()<< std::declval< U & >())> >
 
struct  fx_traits
 
struct  fx_traits< R(*)(Args...) noexcept, false >
 
struct  fx_traits< R(*)(Args...), false >
 
struct  fx_traits< R(*)(Args...,...) noexcept, false >
 
struct  fx_traits< R(*)(Args...,...), false >
 
struct  fx_traits< R(Args...) noexcept, false >
 
struct  fx_traits< R(Args...), false >
 
struct  fx_traits< R(Args...,...) noexcept, false >
 
struct  fx_traits< R(Args...,...), false >
 
struct  fx_traits< R(T::*)(Args...) const &&, false >
 
struct  fx_traits< R(T::*)(Args...) const &&noexcept, false >
 
struct  fx_traits< R(T::*)(Args...) const &, false >
 
struct  fx_traits< R(T::*)(Args...) const &noexcept, false >
 
struct  fx_traits< R(T::*)(Args...) const noexcept, false >
 
struct  fx_traits< R(T::*)(Args...) const volatile &&, false >
 
struct  fx_traits< R(T::*)(Args...) const volatile &&noexcept, false >
 
struct  fx_traits< R(T::*)(Args...) const volatile &, false >
 
struct  fx_traits< R(T::*)(Args...) const volatile &noexcept, false >
 
struct  fx_traits< R(T::*)(Args...) const volatile noexcept, false >
 
struct  fx_traits< R(T::*)(Args...) const volatile, false >
 
struct  fx_traits< R(T::*)(Args...) const, false >
 
struct  fx_traits< R(T::*)(Args...) noexcept, false >
 
struct  fx_traits< R(T::*)(Args...)&&, false >
 
struct  fx_traits< R(T::*)(Args...)&&noexcept, false >
 
struct  fx_traits< R(T::*)(Args...)&, false >
 
struct  fx_traits< R(T::*)(Args...)&noexcept, false >
 
struct  fx_traits< R(T::*)(Args...), false >
 
struct  fx_traits< R(T::*)(Args...,...) const &&, false >
 
struct  fx_traits< R(T::*)(Args...,...) const &&noexcept, false >
 
struct  fx_traits< R(T::*)(Args...,...) const &, false >
 
struct  fx_traits< R(T::*)(Args...,...) const &noexcept, false >
 
struct  fx_traits< R(T::*)(Args...,...) const noexcept, false >
 
struct  fx_traits< R(T::*)(Args...,...) const volatile &&, false >
 
struct  fx_traits< R(T::*)(Args...,...) const volatile &&noexcept, false >
 
struct  fx_traits< R(T::*)(Args...,...) const volatile &, false >
 
struct  fx_traits< R(T::*)(Args...,...) const volatile &noexcept, false >
 
struct  fx_traits< R(T::*)(Args...,...) const volatile noexcept, false >
 
struct  fx_traits< R(T::*)(Args...,...) const volatile, false >
 
struct  fx_traits< R(T::*)(Args...,...) const, false >
 
struct  fx_traits< R(T::*)(Args...,...) noexcept, false >
 
struct  fx_traits< R(T::*)(Args...,...)&&, false >
 
struct  fx_traits< R(T::*)(Args...,...)&&noexcept, false >
 
struct  fx_traits< R(T::*)(Args...,...)&, false >
 
struct  fx_traits< R(T::*)(Args...,...)&noexcept, false >
 
struct  fx_traits< R(T::*)(Args...,...), false >
 
struct  fx_traits< Signature, true >
 
struct  has_begin_end_impl
 
struct  has_insert_after_test
 
struct  has_insert_test
 
struct  has_insert_with_iterator_test
 
struct  has_internal_marker_impl
 
struct  has_internal_marker_impl< T, void_t< typename T::SOL_INTERNAL_UNSPECIALIZED_MARKER_ > >
 
struct  has_iterator_impl
 
struct  has_key_comp_impl
 
struct  has_key_type_impl
 
struct  has_key_value_pair_impl
 
struct  has_load_factor_impl
 
struct  has_mapped_type_impl
 
struct  has_max_size_test
 
struct  has_push_back_test
 
struct  has_size_test
 
struct  has_to_string_test
 
struct  has_value_type_impl
 
struct  index_in_pack
 
struct  index_in_pack< I, T, T1, Args... >
 
struct  is_actual_type_rebindable_for_test
 
struct  is_actual_type_rebindable_for_test< T, Element, true >
 
struct  is_detected
 
struct  is_detected< Test, void_t< Test< Args... > >, Args... >
 
struct  is_invocable
 
struct  is_invocable< T, std::enable_if_t< std::is_final< unqualified_t< T > >::value &&std::is_class< unqualified_t< T > >::value &&std::is_same< decltype(void(&T::operator())), void >::value > >
 
struct  is_invocable< T, std::enable_if_t<!std::is_final< unqualified_t< T > >::value &&std::is_class< unqualified_t< T > >::value &&!std::is_destructible< unqualified_t< T > >::value > >
 
struct  is_invocable< T, std::enable_if_t<!std::is_final< unqualified_t< T > >::value &&std::is_class< unqualified_t< T > >::value &&std::is_destructible< unqualified_t< T > >::value > >
 
struct  is_invokable_tester
 
struct  is_matched_lookup_impl
 
struct  is_matched_lookup_impl< T, true >
 
struct  is_probably_stateless_lambda
 
struct  is_probably_stateless_lambda< T, true >
 
struct  is_specialization_of
 
struct  is_specialization_of< Templ< T... >, Templ >
 
class  supports_adl_to_string_test
 
class  supports_adl_to_string_test< T, void_t< decltype(to_string(std::declval< const T & >()))> >
 
class  supports_op_equal_test
 
class  supports_op_equal_test< T, U, void_t< decltype(std::declval< T & >()==std::declval< U & >())> >
 
class  supports_op_left_shift_test
 
class  supports_op_less_equal_test
 
class  supports_op_less_equal_test< T, U, void_t< decltype(std::declval< T & >()<=std::declval< U & >())> >
 
class  supports_op_less_test
 
class  supports_op_less_test< T, U, void_t< decltype(std::declval< T & >()< std::declval< U & >())> >
 
struct  unique_actual_type
 
struct  unique_actual_type< T, meta::void_t< typename T::actual_type > >
 
struct  unique_actual_type< Templ< T, Rest... > >
 
struct  unique_element_type
 
struct  unique_element_type< T, std::enable_if_t< meta::is_detected_v< type_element_type_t, T > > >
 
struct  unique_element_type< T, std::enable_if_t< meta::is_detected_v< type_test_t, T > > >
 
struct  unique_valid
 
struct  unique_valid< T, meta::void_t< decltype(T::value)> >
 
struct  unqualified_non_alias
 
struct  void_tuple_element
 
struct  void_tuple_element< I, std::tuple<> >
 

Typedefs

template<typename T >
using adl_sol_lua_check_access_test_t = decltype(sol_lua_check_access(types< T >(), static_cast< lua_State * >(nullptr), -1, std::declval< stack::record & >()))
 
template<typename T >
using adl_sol_lua_check_get_test_t = decltype(sol_lua_check_get(types< T >(), static_cast< lua_State * >(nullptr), -1, &no_panic, std::declval< stack::record & >()))
 
template<typename T >
using adl_sol_lua_check_test_t = decltype(sol_lua_check(types< T >(), static_cast< lua_State * >(nullptr), -1, &no_panic, std::declval< stack::record & >()))
 
template<typename T >
using adl_sol_lua_get_test_t = decltype(sol_lua_get(types< T >(), static_cast< lua_State * >(nullptr), -1, std::declval< stack::record & >()))
 
template<typename T >
using adl_sol_lua_interop_check_test_t = decltype(sol_lua_interop_check(types< T >(), static_cast< lua_State * >(nullptr), -1, type::none, &no_panic, std::declval< stack::record & >()))
 
template<typename T >
using adl_sol_lua_interop_get_test_t = decltype(sol_lua_interop_get(types< T >(), static_cast< lua_State * >(nullptr), -1, static_cast< void * >(nullptr), std::declval< stack::record & >()))
 
template<typename T , typename... Args>
using adl_sol_lua_push_exact_test_t = decltype(sol_lua_push(types< T >(), static_cast< lua_State * >(nullptr), std::declval< Args >()...))
 
template<typename... Args>
using adl_sol_lua_push_test_t = decltype(sol_lua_push(static_cast< lua_State * >(nullptr), std::declval< Args >()...))
 
template<typename F >
using detect_deducible_signature = decltype(&F::operator())
 
template<typename T >
using has_internal_marker = has_internal_marker_impl< T >
 
template<typename T >
using is_dereferenceable_test = decltype(*std::declval< T >())
 
template<typename T >
using is_explicitly_dereferenceable_test = decltype(std::declval< T >().operator*())
 
template<typename T , typename Element = void>
using is_rebind_actual_type = meta::is_detected< is_rebind_actual_type_test_t, T, Element >
 
template<typename T , typename Element = void>
using is_rebind_actual_type_test_t = typename T::template rebind_actual_type< Element >
 
template<typename T >
using non_void_t = meta::conditional_t< std::is_void_v< T >, ::sol::detail::unchecked_t, T >
 
template<typename , typename >
using on_always = std::true_type
 
template<typename , typename TI >
using on_even = meta::boolean<(TI::value % 2)==0 >
 
template<typename , typename TI >
using on_odd = meta::boolean<(TI::value % 2)==1 >
 
template<typename T >
using type_element_type_t = typename T::element_type
 
template<typename T >
using type_test_t = typename T::type
 
template<typename T >
using unique_usertype_get_with_state_test_t = decltype(unique_usertype_traits< T >::get(static_cast< lua_State * >(nullptr), std::declval< unique_usertype_actual_t< T > >()))
 
template<typename T >
using unique_usertype_is_null_with_state_test_t = decltype(unique_usertype_traits< T >::is_null(static_cast< lua_State * >(nullptr), std::declval< unique_usertype_actual_t< T > >()))
 
template<typename T >
using value_test_t = decltype(T::value)
 
template<std::size_t I, typename T >
using void_tuple_element_t = typename void_tuple_element< I, T >::type
 

Functions

template<typename T >
decltype(auto) force_tuple (T &&x)
 

Variables

template<typename T >
constexpr bool has_internal_marker_v = has_internal_marker<T>::value
 
template<typename T >
constexpr bool is_adl_sol_lua_check_access_v = meta::is_detected_v<adl_sol_lua_check_access_test_t, T>
 
template<typename T >
constexpr bool is_adl_sol_lua_check_get_v = meta::is_detected_v<adl_sol_lua_check_get_test_t, T>
 
template<typename T >
constexpr bool is_adl_sol_lua_check_v = meta::is_detected_v<adl_sol_lua_check_test_t, T>
 
template<typename T >
constexpr bool is_adl_sol_lua_get_v = meta::is_detected_v<adl_sol_lua_get_test_t, T>
 
template<typename T >
constexpr bool is_adl_sol_lua_interop_check_v = meta::is_detected_v<adl_sol_lua_interop_check_test_t, T>
 
template<typename T >
constexpr bool is_adl_sol_lua_interop_get_v = meta::is_detected_v<adl_sol_lua_interop_get_test_t, T>
 
template<typename T , typename... Args>
constexpr bool is_adl_sol_lua_push_exact_v = meta::is_detected_v<adl_sol_lua_push_exact_test_t, T, Args...>
 
template<typename... Args>
constexpr bool is_adl_sol_lua_push_v = meta::is_detected_v<adl_sol_lua_push_test_t, Args...>
 
template<typename T , typename Element = void>
constexpr bool is_rebind_actual_type_v = is_rebind_actual_type<T, Element>::value
 
template<typename T >
constexpr bool unique_usertype_get_with_state_v = meta::is_detected_v<unique_usertype_get_with_state_test_t, T>
 
template<typename T >
constexpr bool unique_usertype_is_null_with_state_v = meta::is_detected_v<unique_usertype_is_null_with_state_test_t, T>
 

Typedef Documentation

◆ adl_sol_lua_check_access_test_t

template<typename T >
using sol::meta::meta_detail::adl_sol_lua_check_access_test_t = typedef decltype(sol_lua_check_access(types<T>(), static_cast<lua_State*>(nullptr), -1, std::declval<stack::record&>()))

Definition at line 9234 of file sol.hpp.

◆ adl_sol_lua_check_get_test_t

template<typename T >
using sol::meta::meta_detail::adl_sol_lua_check_get_test_t = typedef decltype(sol_lua_check_get(types<T>(), static_cast<lua_State*>(nullptr), -1, &no_panic, std::declval<stack::record&>()))

Definition at line 11514 of file sol.hpp.

◆ adl_sol_lua_check_test_t

template<typename T >
using sol::meta::meta_detail::adl_sol_lua_check_test_t = typedef decltype(sol_lua_check(types<T>(), static_cast<lua_State*>(nullptr), -1, &no_panic, std::declval<stack::record&>()))

Definition at line 11506 of file sol.hpp.

◆ adl_sol_lua_get_test_t

template<typename T >
using sol::meta::meta_detail::adl_sol_lua_get_test_t = typedef decltype(sol_lua_get(types<T>(), static_cast<lua_State*>(nullptr), -1, std::declval<stack::record&>()))

Definition at line 11499 of file sol.hpp.

◆ adl_sol_lua_interop_check_test_t

template<typename T >
using sol::meta::meta_detail::adl_sol_lua_interop_check_test_t = typedef decltype(sol_lua_interop_check(types<T>(), static_cast<lua_State*>(nullptr), -1, type::none, &no_panic, std::declval<stack::record&>()))

Definition at line 11510 of file sol.hpp.

◆ adl_sol_lua_interop_get_test_t

template<typename T >
using sol::meta::meta_detail::adl_sol_lua_interop_get_test_t = typedef decltype(sol_lua_interop_get(types<T>(), static_cast<lua_State*>(nullptr), -1, static_cast<void*>(nullptr), std::declval<stack::record&>()))

Definition at line 11503 of file sol.hpp.

◆ adl_sol_lua_push_exact_test_t

template<typename T , typename... Args>
using sol::meta::meta_detail::adl_sol_lua_push_exact_test_t = typedef decltype(sol_lua_push(types<T>(), static_cast<lua_State*>(nullptr), std::declval<Args>()...))

Definition at line 11520 of file sol.hpp.

◆ adl_sol_lua_push_test_t

template<typename... Args>
using sol::meta::meta_detail::adl_sol_lua_push_test_t = typedef decltype(sol_lua_push(static_cast<lua_State*>(nullptr), std::declval<Args>()...))

Definition at line 11517 of file sol.hpp.

◆ detect_deducible_signature

template<typename F >
using sol::meta::meta_detail::detect_deducible_signature = typedef decltype(&F::operator())

Definition at line 1525 of file sol.hpp.

◆ has_internal_marker

Definition at line 1444 of file sol.hpp.

◆ is_dereferenceable_test

template<typename T >
using sol::meta::meta_detail::is_dereferenceable_test = typedef decltype(*std::declval<T>())

Definition at line 2057 of file sol.hpp.

◆ is_explicitly_dereferenceable_test

template<typename T >
using sol::meta::meta_detail::is_explicitly_dereferenceable_test = typedef decltype(std::declval<T>().operator*())

Definition at line 2060 of file sol.hpp.

◆ is_rebind_actual_type

template<typename T , typename Element = void>
using sol::meta::meta_detail::is_rebind_actual_type = typedef meta::is_detected<is_rebind_actual_type_test_t, T, Element>

Definition at line 9305 of file sol.hpp.

◆ is_rebind_actual_type_test_t

template<typename T , typename Element = void>
using sol::meta::meta_detail::is_rebind_actual_type_test_t = typedef typename T::template rebind_actual_type<Element>

Definition at line 9302 of file sol.hpp.

◆ non_void_t

template<typename T >
using sol::meta::meta_detail::non_void_t = typedef meta::conditional_t<std::is_void_v<T>, ::sol::detail::unchecked_t, T>

Definition at line 2642 of file sol.hpp.

◆ on_always

template<typename , typename >
using sol::meta::meta_detail::on_always = typedef std::true_type

Definition at line 2301 of file sol.hpp.

◆ on_even

template<typename , typename TI >
using sol::meta::meta_detail::on_even = typedef meta::boolean<(TI::value % 2) == 0>

Definition at line 2295 of file sol.hpp.

◆ on_odd

template<typename , typename TI >
using sol::meta::meta_detail::on_odd = typedef meta::boolean<(TI::value % 2) == 1>

Definition at line 2298 of file sol.hpp.

◆ type_element_type_t

template<typename T >
using sol::meta::meta_detail::type_element_type_t = typedef typename T::element_type

Definition at line 9192 of file sol.hpp.

◆ type_test_t

template<typename T >
using sol::meta::meta_detail::type_test_t = typedef typename T::type

Definition at line 9189 of file sol.hpp.

◆ unique_usertype_get_with_state_test_t

template<typename T >
using sol::meta::meta_detail::unique_usertype_get_with_state_test_t = typedef decltype(unique_usertype_traits<T>::get(static_cast<lua_State*>(nullptr), std::declval<unique_usertype_actual_t<T> >()))

Definition at line 9241 of file sol.hpp.

◆ unique_usertype_is_null_with_state_test_t

template<typename T >
using sol::meta::meta_detail::unique_usertype_is_null_with_state_test_t = typedef decltype(unique_usertype_traits<T>::is_null(static_cast<lua_State*>(nullptr), std::declval<unique_usertype_actual_t<T> >()))

Definition at line 9248 of file sol.hpp.

◆ value_test_t

template<typename T >
using sol::meta::meta_detail::value_test_t = typedef decltype(T::value)

Definition at line 9186 of file sol.hpp.

◆ void_tuple_element_t

template<std::size_t I, typename T >
using sol::meta::meta_detail::void_tuple_element_t = typedef typename void_tuple_element<I, T>::type

Definition at line 1545 of file sol.hpp.

Function Documentation

◆ force_tuple()

template<typename T >
decltype(auto) sol::meta::meta_detail::force_tuple ( T &&  x)

Definition at line 2822 of file sol.hpp.

Variable Documentation

◆ has_internal_marker_v

template<typename T >
constexpr bool sol::meta::meta_detail::has_internal_marker_v = has_internal_marker<T>::value
inlineconstexpr

Definition at line 1447 of file sol.hpp.

◆ is_adl_sol_lua_check_access_v

template<typename T >
constexpr bool sol::meta::meta_detail::is_adl_sol_lua_check_access_v = meta::is_detected_v<adl_sol_lua_check_access_test_t, T>
inlineconstexpr

Definition at line 9237 of file sol.hpp.

◆ is_adl_sol_lua_check_get_v

template<typename T >
constexpr bool sol::meta::meta_detail::is_adl_sol_lua_check_get_v = meta::is_detected_v<adl_sol_lua_check_get_test_t, T>
inlineconstexpr

Definition at line 11535 of file sol.hpp.

◆ is_adl_sol_lua_check_v

template<typename T >
constexpr bool sol::meta::meta_detail::is_adl_sol_lua_check_v = meta::is_detected_v<adl_sol_lua_check_test_t, T>
inlineconstexpr

Definition at line 11529 of file sol.hpp.

◆ is_adl_sol_lua_get_v

template<typename T >
constexpr bool sol::meta::meta_detail::is_adl_sol_lua_get_v = meta::is_detected_v<adl_sol_lua_get_test_t, T>
inlineconstexpr

Definition at line 11523 of file sol.hpp.

◆ is_adl_sol_lua_interop_check_v

template<typename T >
constexpr bool sol::meta::meta_detail::is_adl_sol_lua_interop_check_v = meta::is_detected_v<adl_sol_lua_interop_check_test_t, T>
inlineconstexpr

Definition at line 11532 of file sol.hpp.

◆ is_adl_sol_lua_interop_get_v

template<typename T >
constexpr bool sol::meta::meta_detail::is_adl_sol_lua_interop_get_v = meta::is_detected_v<adl_sol_lua_interop_get_test_t, T>
inlineconstexpr

Definition at line 11526 of file sol.hpp.

◆ is_adl_sol_lua_push_exact_v

template<typename T , typename... Args>
constexpr bool sol::meta::meta_detail::is_adl_sol_lua_push_exact_v = meta::is_detected_v<adl_sol_lua_push_exact_test_t, T, Args...>
inlineconstexpr

Definition at line 11541 of file sol.hpp.

◆ is_adl_sol_lua_push_v

template<typename... Args>
constexpr bool sol::meta::meta_detail::is_adl_sol_lua_push_v = meta::is_detected_v<adl_sol_lua_push_test_t, Args...>
inlineconstexpr

Definition at line 11538 of file sol.hpp.

◆ is_rebind_actual_type_v

template<typename T , typename Element = void>
constexpr bool sol::meta::meta_detail::is_rebind_actual_type_v = is_rebind_actual_type<T, Element>::value
inlineconstexpr

Definition at line 9308 of file sol.hpp.

◆ unique_usertype_get_with_state_v

template<typename T >
constexpr bool sol::meta::meta_detail::unique_usertype_get_with_state_v = meta::is_detected_v<unique_usertype_get_with_state_test_t, T>
inlineconstexpr

Definition at line 9244 of file sol.hpp.

◆ unique_usertype_is_null_with_state_v

template<typename T >
constexpr bool sol::meta::meta_detail::unique_usertype_is_null_with_state_v = meta::is_detected_v<unique_usertype_is_null_with_state_test_t, T>
inlineconstexpr

Definition at line 9251 of file sol.hpp.



plotjuggler
Author(s): Davide Faconti
autogenerated on Mon Nov 11 2024 03:23:53