On Apr 12, 11 02:29, Andrej Mitrovic wrote:
On 4/11/11, KennyTM~<kenn...@gmail.com> wrote:
The idea, IIUC, is to avoid documenting that extra enum type. So, for
example,
TRange topNCopy(alias less = "a< b", SRange, TRange)
(SRange source, TRange target,
YesOrNo!"SortOutput" sorted = false);
and then we can call it as
topNCopy([1,3,5,2,4], result, SortOutput.yes);
But how do you make `SortOutput` known at the calling site?
Right. Andrei's template can't do it. My approach above is simply
declare an undocumented enum, and use YesOrNo as a tag to statically
ensure that enum can take 'no' and 'yes'.
I feel this using type just for documentation is bad.