![]() |
LeechCraft 0.6.70-17769-g4e68d7fcba
Modular cross-platform feature rich live environment.
|
#include <tuple>Go to the source code of this file.
Classes | |
| struct | LC::Util::detail::DecomposeMemberPtr< typename > |
| struct | LC::Util::detail::DecomposeMemberPtr< R(C::*)> |
Namespaces | |
| namespace | LC |
| namespace | LC::Util |
| namespace | LC::Util::detail |
Concepts | |
| concept | LC::Util::SomeInvokable |
Typedefs | |
| template<typename F> | |
| using | LC::Util::detail::CallTypeGetter_t = std::decay_t<decltype (*detail::TypeGetter (*static_cast<F*> (nullptr)))> |
| template<SomeInvokable F, size_t Idx> | |
| using | LC::Util::ArgType_t = std::tuple_element_t<Idx + 1, detail::CallTypeGetter_t<F>> |
| template<SomeInvokable F> | |
| using | LC::Util::RetType_t = std::tuple_element_t<0, detail::CallTypeGetter_t<F>> |
| template<typename PtrType> | |
| using | LC::Util::MemberTypeType_t = typename detail::DecomposeMemberPtr<PtrType>::Value_t |
| template<typename PtrType> | |
| using | LC::Util::MemberTypeStruct_t = typename detail::DecomposeMemberPtr<PtrType>::StructType_t |
| template<auto Ptr> | |
| using | LC::Util::MemberPtrType_t = MemberTypeType_t<decltype (Ptr)> |
| template<auto Ptr> | |
| using | LC::Util::MemberPtrStruct_t = MemberTypeStruct_t<decltype (Ptr)> |
Functions | |
| template<typename R, typename... Args> | |
| std::tuple< R, Args... > * | LC::Util::detail::TypeGetter (R(*)(Args...)) |
| template<typename F> | |
| auto | LC::Util::detail::TypeGetter (F &&f) -> decltype(TypeGetter(+f)) |
| template<typename C, typename R, typename... Args> | |
| std::tuple< R, Args... > * | LC::Util::detail::TypeGetter (R(C::*)(Args...) const) |
| template<typename C> | |
| decltype(TypeGetter(&C::operator())) | LC::Util::detail::TypeGetter (const C &c) |
Variables | |
| template<SomeInvokable F> | |
| constexpr auto | LC::Util::ArgCount_v = std::tuple_size_v<detail::CallTypeGetter_t<F>> - 1 |