6#ifndef ATLASGAMEMANAGER_FUNCTIONDECOMP_HPP
7#define ATLASGAMEMANAGER_FUNCTIONDECOMP_HPP
14template <
typename Function >
17template <
typename Function >
21template <
typename ClassType,
typename ReturnType,
typename... Args >
25template <
typename ClassType,
typename ReturnType,
typename... Args >
29template <
typename ClassType,
typename ReturnType,
typename... Args >
33template <
typename ClassType,
typename ReturnType,
typename... Args >
34struct FunctionDecomp< ReturnType ( ClassType::* )( Args... ) const noexcept > :
38template <
typename ReturnType,
typename... Args >
44 template < std::
size_t Index >
45 using arg =
typename std::tuple_element< Index, ArgTuple >::type;
46 static constexpr std::size_t
arg_size =
sizeof...( Args );
49template <
typename Func >
52template <
typename Func >
FunctionDecomp< Func >::ArgTuple FunctionTuple
Definition FunctionDecomp.hpp:53
FunctionDecomp< Func >::ResultType FunctionReturn
Definition FunctionDecomp.hpp:50
std::tuple< Args... > ArgTuple
Definition FunctionDecomp.hpp:43
typename std::tuple_element< Index, ArgTuple >::type arg
Definition FunctionDecomp.hpp:45
static constexpr std::size_t arg_size
Definition FunctionDecomp.hpp:46
ReturnType ResultType
Definition FunctionDecomp.hpp:41
Definition FunctionDecomp.hpp:19