#pragma once
|
|
|
|
namespace cl
|
|
{
|
|
template<typename a, typename fn>
|
|
class curry
|
|
{
|
|
a param;
|
|
fn call;
|
|
public:
|
|
curry(a p, fn func)
|
|
: param{p}
|
|
, call{func}
|
|
{}
|
|
template<typename ...b>
|
|
auto operator()(b ...Args){
|
|
return call(param, Args...);
|
|
}
|
|
};
|
|
}
|