Template currying

Yuxuan Shui via Digitalmars-d digitalmars-d at puremagic.com
Thu May 5 15:53:01 PDT 2016


On Thursday, 5 May 2016 at 21:54:29 UTC, Ed wrote:
> On Thursday, 5 May 2016 at 20:17:08 UTC, Yuxuan Shui wrote:
>> [...]
>
> It's hard to help without a minimal working example (maybe 
> something with just the body).
>
> If you mean that "alias new_parser = Comb!(a, b);" generates an 
> error maybe that's because the correct syntax is "alias 
> new_parser(Range) = Comb!(a, b);" ?
>
> One issue you may encounter is that template parameter 
> deduction (that's called IFTI I think) can fail with an alias 
> (so partially specialized template/templatized function, etc).

Simple example:

     int a(int b, T)(T c){return 0;}

It's fine to:

     a!1(2);

But:

     alias A = a!1;

Would fail.


More information about the Digitalmars-d mailing list