LeechCraft  0.6.70-6645-gcd10d7e
Modular cross-platform feature rich live environment.
oldcppkludges.h File Reference
#include <type_traits>
+ Include dependency graph for oldcppkludges.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

 LeechCraft
 
 LeechCraft::Util
 

Typedefs

template<typename T >
using LeechCraft::Util::ResultOf_t = typename std::result_of< T >::type
 
template<bool B, class T = void>
using LeechCraft::Util::EnableIf_t = typename std::enable_if< B, T >::type
 
template<typename T >
using LeechCraft::Util::Decay_t = typename std::decay< T >::type
 

Functions

template<typename F , typename... Args>
auto LeechCraft::Util::Invoke (F &&f, Args &&...args) -> decltype(std::forward< F >(f)(std::forward< Args >(args)...))
 
template<typename Base , typename Real , typename Res >
auto LeechCraft::Util::Invoke (Res Base::*mem, Real &&obj, typename std::enable_if<!std::is_member_function_pointer< decltype(mem)>::value >::type *=nullptr) -> decltype(obj.*mem)
 
template<typename Base , typename Real , typename Res , typename... Rest>
auto LeechCraft::Util::Invoke (Res Base::*mem, Real &&obj, Rest &&...rest) -> decltype((obj.*mem)(std::forward< Rest >(rest)...))