Thread overview | ||||||
---|---|---|---|---|---|---|
|
February 05, 2017 Append variadic template parameters | ||||
---|---|---|---|---|
| ||||
I want to write a template: static auto ref BindArg(alias Func,alias arg,args...)() { return Func(arg,args); } where Func is called with 'arg' followed by the 'args' parameters. eg: string f(string a,int b,int c); BindArg(f,"1",2,3); The compiler throws an error: Error: function f (string a, int b, int c) is not callable using argument types () How do I append the parameters? |
February 05, 2017 Re: Append variadic template parameters | ||||
---|---|---|---|---|
| ||||
Posted in reply to Mark Fisher | On Sunday, 5 February 2017 at 20:36:57 UTC, Mark Fisher wrote: > static auto ref BindArg(alias Func,alias arg,args...)() { > return Func(arg,args); > } [...] > BindArg(f,"1",2,3); You forgot an exclamation mark there: BindArg!(f,"1",2,3); |
February 05, 2017 Re: Append variadic template parameters | ||||
---|---|---|---|---|
| ||||
Posted in reply to Mark Fisher | On Sunday, 5 February 2017 at 20:36:57 UTC, Mark Fisher wrote: > I want to write a template: > > static auto ref BindArg(alias Func,alias arg,args...)() { > return Func(arg,args); > } > > where Func is called with 'arg' followed by the 'args' parameters. > eg: > > string f(string a,int b,int c); BindArg(f,"1",2,3); You forgot the ! > > The compiler throws an error: > Error: function f (string a, int b, int c) is not callable using argument types () > > How do I append the parameters? |
February 05, 2017 Re: Append variadic template parameters | ||||
---|---|---|---|---|
| ||||
Posted in reply to Meta | On Sunday, 5 February 2017 at 21:51:14 UTC, Meta wrote:
> On Sunday, 5 February 2017 at 20:36:57 UTC, Mark Fisher wrote:
>> I want to write a template:
>>
>> static auto ref BindArg(alias Func,alias arg,args...)() {
>> return Func(arg,args);
>> }
>>
>> where Func is called with 'arg' followed by the 'args' parameters.
>> eg:
>>
>> string f(string a,int b,int c);
>
> BindArg(f,"1",2,3);
>
> You forgot the !
>
>>
>> The compiler throws an error:
>> Error: function f (string a, int b, int c) is not callable using argument types ()
>>
>> How do I append the parameters?
doh!
Thank you.
|
Copyright © 1999-2021 by the D Language Foundation