On 15/09/2014 05:55, aparsloe wrote: > I have found a number of instances where I have wanted to generate a > variant with varying degrees of branching, e.g. > > \cs_generate_variant:Nn \tl_case:Nn { No } > \cs_generate_variant:Nn \tl_case:NnT { No } > \cs_generate_variant:Nn \tl_case:NnF { No } > > I find myself envious of the functionality available with > \prg_new_conditional:Npnn and its ilk where multiple degrees of > branching can be coded in a single statement using a subset of { p, F, > T, TF }. It would be nice to be able to write something similar, e.g. > > \cs_generate_variant:Nnn \tl_case:Nn { No } { , F, T } > > where the empty slot before the first comma denotes the nonbranching > variant. > > I don't imagine I'm the first to have thought this, so presumably there > is good (or at least some) reason for not providing the functionality. > It would be good to know. > > Andrew I don't remember any technical reasons for not doing this: I guess primarily we've not needed it often enough. Probably this would go into \prg_... as it's only applicable to conditionals (we have \prg_new_eq_conditional:NNn and \prg_set_eq_conditional:NNn). I guess something like \prg_generate_conditional_variant:Nnn would be an appropriate name. Thoughts? -- Joseph Wright