| 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
Permalink
Reply