On 11/13/2015 06:10 PM, Andrei Alexandrescu wrote: [snip]
Thanks all for the feedback. I've uploaded an updated version to http://dpaste.dzfl.pl/52a3013efe34. It doesn't use "inout", but doesn't duplicate code either; instead, it relies on private internal functions to do the deed.
While revising feedback I realized I'd missed Steve's version that works with inout: http://dpaste.dzfl.pl/3fbc786a50c1. It works and the inout-related parts don't look difficult; the only thing is making sure the right incantations are in place, and that's the difficult part.
So one important question is what style we use for Phobos and endorse as idiomatic. My sense after working on this for a while is - forget inout. Qualifiers are rather complex, and of them inout is the most. So I'd rather marginalize it. Please chime in with any thoughts.
Andrei