They key difference is that an lvalue method uses a public interface and does not rely on implementation of the object. When choosing to have an lvalue method you choose to have a simple and limited interface, which you argue against, but you're not breaking encapsulation. So there are two different issues.
ihb
In reply to Re^3: regex transforms of object attributes
by ihb
in thread regex transforms of object attributes
by Tuppence
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |