
From: "Jeff Garland" <jeff@crystalclearsoftware.com>
On Mon, 26 Sep 2005 01:02:25 +0200, Robert Kawulak wrote
Restricted is ok, but I like constrained better. Please see:
Agreed.
One other thought. The constrained value type fits into a 'value programming' classification that eventually I'd like to see expanded in boost. Some other parts of this include wrapping_int which has a range and wraps around when you do math with it
It sounds like--I've not looked at either class to know whether this is reasonable--wrapping_int's behavior could be subsumed by constrained_value. That is, Robert's class could determine the new value to store based upon calling a policy function. If that function determines that the new value is out of range, then it can wrap the value or otherwise adjust it, or it can signal an error. Such an approach could actually permit incrementing a constrained_value that only permits odd numbers. That is, incrementing would increment to the next odd number. (To support that would require a fatter policy interface, I expect, so I'm not saying it would necessarily be a good idea.) -- Rob Stewart stewart@sig.com Software Engineer http://www.sig.com Susquehanna International Group, LLP using std::disclaimer;