On Monday, 23 December 2013 at 11:44:01 UTC, Dicebot wrote:
On Monday, 23 December 2013 at 10:15:19 UTC, ilya-stromberg wrote:
About `auto-expansion` problem: please add documentation that
describes difference between `auto-expansion TypeTuple` and
`TemplateArgumentList without auto-expansion`. I personally don't
know any difference, probably because I didn't write too
complicated meta code.

Added, does this help: http://wiki.dlang.org/DIP54#Auto-expansion_explained ?

Oh, I see. Thank you for the example. It really looks like `TemplateArgumentList without auto-expansion` is more generic solution. Please, add similar example to the Phobos documentation (for example, to the `http://dlang.org/tuple`) when you will implement this DIP.


Also, can we keep bouth `auto-expansion TypeTuple` and
`TemplateArgumentList whitout auto-expansion` (maybe, in a
different module)?

Technically - yes. But I think it will cause more damage that help.

Or, maybe, can we add documentation how to
convert any  `auto-expansion TypeTuple` to the
`TemplateArgumentList without auto-expansion`.

Like this?

alias Packed = TemplateArgumentList!(T); // assuming T is variadic template argument list, T...
alias Expanded = Packed.expand;

Yes, exactly.
Can we add alias for `auto-expansion TypeTuple` and add link to the previous documentation like this:

alias ExpandedTemplateArgumentList(T) = TemplateArgumentList!(T).expand;

It looks like it can fix all objections here.

Reply via email to