Example:
```d
auto foo(alias fn, Args...)(auto ref Args args){
///return function/delegate type of `fn` for arguments `args`
}
void main(){
long x;
auto fn = foo!((a, b) => true)(new int(42), x);
static assert(is(typeof(fn) == bool function(int*, scope ref
long)@safe pure nothrow @nogc ));
} ```
