On 5/2/15 5:42 PM, Meta wrote:
On Sunday, 3 May 2015 at 00:25:13 UTC, Dicebot wrote:
Sounds similar to http://dlang.org/phobos/std_typecons.html#.Proxy

That's a good idea. Proxy could be improved to take a list of names of
members to forward. That'd be pretty cool actually.

Here's what I have right now - simple as they come: http://dpaste.dzfl.pl/7ec11459a125. Kudos to whoever defined ParameterTypeTuple, it's exactly what the doctor prescribed.

The gist of it is:

string forwardToMember(string member, string[] funs...)
{
    string result;
    foreach (fun; funs)
    {
        result ~= "
auto "~fun~"(ParameterTypeTuple!(typeof("~member~"."~fun~")) args)
            {
                return "~member~"."~fun~"(args);
            }
        ";
    }
    return result;
}

which is used as:

    mixin(forwardToMember("member", "expand", "reallocate", "owns"));

Is this a common thing people wanna do? Put in Phobos?


Andrei

Reply via email to