Re: if static member then call

2016-08-13 Thread Engine Machine via Digitalmars-d-learn
On Saturday, 13 August 2016 at 18:42:50 UTC, Cauterite wrote: On Saturday, 13 August 2016 at 18:34:43 UTC, Engine Machine wrote: static if (hasStaticMember!(T, "foo")) Here I suspect you're looking for this: __traits(isStaticFunction, __traits(getMember, T, "foo")) Thanks. It needs to

Re: if static member then call

2016-08-13 Thread Cauterite via Digitalmars-d-learn
On Saturday, 13 August 2016 at 18:34:43 UTC, Engine Machine wrote: static if (hasStaticMember!(T, "foo")) Here I suspect you're looking for this: __traits(isStaticFunction, __traits(getMember, T, "foo"))

Re: if static member then call

2016-08-13 Thread Cauterite via Digitalmars-d-learn
On Saturday, 13 August 2016 at 18:34:43 UTC, Engine Machine wrote: auto ref foo(T, Args...)(args) { static if (hasStaticMember!(T, "foo")) return T.foo!(T)(args); } Basically I want to forward the *static* call to T if possible(if foo exists in T). The main problem is actually

if static member then call

2016-08-13 Thread Engine Machine via Digitalmars-d-learn
auto ref foo(T, Args...)(args) { static if (hasStaticMember!(T, "foo")) return T.foo!(T)(args); } Basically I want to forward the *static* call to T if possible(if foo exists in T). The main problem is actually calling T.foo as the syntax here doesn't work. I also need to be able