11 #ifndef __SYS_CALLIF_H_INCLUDED__
12 #define __SYS_CALLIF_H_INCLUDED__
23 #define SYS_CALLIF_AUTO auto
25 #define SYS_CALLIF_AUTO
28 #if defined(__clang__) || !defined(_MSC_VER) || _MSC_VER >= 1930
29 #define SYS_CALLIF_DEPRECATED SYS_DEPRECATED_REPLACE(20.0, "if constexpr")
31 #define SYS_CALLIF_DEPRECATED
44 template<
bool CONDITION>
47 template<
typename FUNCTOR,
typename... ARGS>
59 template<
typename FUNCTOR,
typename... ARGS>
64 functor(
dummy(), std::forward<ARGS>(
args)...);
67 template<
typename FUNCTOR,
typename... ARGS>
71 functor(std::forward<ARGS>(
args)...);
77 #endif // __SYS_CALLIF_H_INCLUDED__
static SYS_CALLIF_DEPRECATED SYS_FORCE_INLINE void call(FUNCTOR functor, ARGS &&...args)
static SYS_CALLIF_DEPRECATED SYS_FORCE_INLINE void call(FUNCTOR functor, ARGS &&...args)
#define SYS_CALLIF_DEPRECATED
constexpr enabler dummy
An instance to use in EnableIf.
**If you just want to fire and args