Alias overload of function
Andrey
saasecondbox at yandex.ru
Sun Jun 9 16:54:30 UTC 2019
On Sunday, 9 June 2019 at 10:42:12 UTC, Basile-z wrote:
> On Sunday, 9 June 2019 at 10:22:36 UTC, Andrey wrote:
>> Hello,
>> I have got 2 functions:
>>> void myFunc(string name, int a)(wstring value) {}
>>> void myFunc(string name, int a)() {}
>>
>> I want to make an alias (for example for second function
>> without argument):
>>> alias myAlias(int a) = myFunc!("Name", a);
>>
>> but compiler says:
>>> ... matches more than one template declaration
>>
>> So how solve this problem?
>
> use __traits(getOverloads) to apply to all of them in a static
> foreach.
Hmm... Cannot understand how to write getOverloads. My case:
> struct Outer
> {
> static template Inner(alias a, alias b, T)
> {
> void myFunc() {}
> }
> }
This doesn't work (inside Outer):
> pragma(msg, __traits(getOverloads, Inner, "myFunc", true));
More information about the Digitalmars-d-learn
mailing list