Getting a template parameter list

Philippe Sigaud philippe.sigaud at gmail.com
Mon Jul 23 23:08:19 PDT 2012


On Mon, Jul 23, 2012 at 4:08 PM, Simen Kjaeraas <simen.kjaras at gmail.com> wrote:

> This was filed as bug 3608[1], but that report was insufficiently specific,
> and so T... matching both a TemplateParameterList and a variadic
> TemplateParameter apparently did not make it into the patch.
>
> I'm unsure if I should mark the old bug report as reopened, or file a new
> one.

In a sense, it's cleaner that way: is() trailing params (or template
specializations, as you used in the bug report) are exactly the ones
present in the template.

class C(T,U) {}

// does not work on class C
template dissect1(T : Name!(Params), alias Name, Params...) {}
// works on class C
template dissect2(T : Name!(Param1, Param2), alias Name, Param1, Param2) {}

No ambiguity. But hell, a lot less power also.

Sigh... I'll go back to parsing a .stringof representation.

Philippe


More information about the Digitalmars-d mailing list