if static member then call

Cauterite via Digitalmars-d-learn digitalmars-d-learn at puremagic.com
Sat Aug 13 11:40:17 PDT 2016


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 
> calling T.foo as the syntax here doesn't work. I also need to 
> be able to check to see if a method is static, since I have no 
> object.

you're probably gonna want something like, if i understand your 
question correctly:
return __traits(getMember, T, "foo")(args);


More information about the Digitalmars-d-learn mailing list