29using std::placeholders::_1;
65 return 2*ii - fun(
i2);
136 CHECK (
"int (Functor::*)(uint)" ==
typeStr<
decltype(&Functor::operator())>());
142 Func f3{Functor::staticFun};
143 Func f4{&Functor::staticFun};
153 CHECK (
"int (uint)" == showSig (freeFun));
154 CHECK (
"int (uint)" == showSig (&freeFun));
155 CHECK (
"int (uint)" == showSig (Functor::staticFun));
157 CHECK (
"int (uint)" == showSig (
f5));
160 CHECK (
"int (uint)" == showSigRef (freeFun));
162 CHECK (
"int (uint)" == showSigRef (
f5));
164 CHECK (
"int (uint)" == showSigCRef (freeFun));
166 CHECK (
"int (uint)" == showSigCRef (
f5));
168 CHECK (
"int (uint)" == showSigRRef (move(
lambda)));
169 CHECK (
"int (uint)" == showSigRRef (move(
f5)));
171 CHECK (
"int (uint)" == showSig (move(&freeFun)));
173 CHECK (
"int (uint)" == showSig (move(
f5)));
Metaprogramming tools for detecting and transforming function types.
Implementation namespace for support and library code.
Test runner and basic definitions for tests.
Simplistic test class runner.
#define LAUNCHER(_TEST_CLASS_, _GROUPS_)