On Fri, Jun 26, 2015 at 12:57 AM, Sam Kellett
On Thu, Jun 25, 2015 at 9:35 PM, Michael Marcin
wrote: I love swizzling although I dislike this particular syntax.
See http://zajo.github.io/boost-qvm/operator_mod_rationale.html. Basically, I can't think of a better alternative.
What about
v['x'] *= 42; v['yxz'] = 42;
1) Character constants containing more than one character are implementation-defined (not portable). 2) The swizzling dispatch must be done at compile-time. You couldn't do this with an int argument to operator[]. 3) operator[] must be a member function, and QVM operations work on user-defined types. You can, of course, define operator[] in your own types in terms of operator% from QVM. So we're stuck with: v%X *= 42; v%YXZ *= 42; -- Emil Dotchevski Reverge Studios, Inc. http://www.revergestudios.com/reblog/index.php?n=ReCode