The first parameter of Func<TResult, TArg1> is the return type of the function, so no, you can't do that.


Func<char, int> corresponds to a function with signature

char foo(int parameter) {}