
On Dec 1, 2008, at 7:59 AM, Jeff Garland wrote:
The review of the Robert Kawulak's Constrained Value library begins today December 1, 2008, and will end on December 10th -- I will be the review manager. Please post reviews to the developer list.
Here's the library synopsis:
The Boost Constrained Value library contains class templates useful for creating constrained objects. A simple example is an object representing an hour of a day, for which only integers from the range [0, 23] are valid values.
bounded_int<int, 0, 23>::type hour; hour = 20; // OK hour = 26; // exception!
Behavior in case of assignment of an invalid value can be customized. The library has a policy-based design to allow for flexibility in defining constraints and behavior in case of assignment of invalid values. Policies may be configured at compile- time for maximum efficiency or may be changeable at runtime if such dynamic functionality is needed.
The library can be downloaded from the here: http://rk.go.pl/f/constrained_value.zip
The documentation is also available online here: http://rk.go.pl/r/constrained_value
---------------------------------------------------
Please state in your review, whether you think the library should be accepted as a Boost library. Additionally, please consider the following aspects in your review of the library:
Yes, please accept it.
- What is your evaluation of the design?
It's OK.
- What is your evaluation of the implementation?
Fine. I liked the attempts to minimize extra space per object. I didn't like that there were neither tests nor conventional examples. The file where the Quickbook docs took its code examples was the only *.cpp file provided. Fortunately, it's (intentionally) compilable.
- What is your evaluation of the documentation?
It's extensive, both the usage (Quickbook) and code (Doxygen) guides. On the usage guide, I don't think the tutorial's "ignore" type does what you think it does.
- What is your evaluation of the potential usefulness of the library?
I find restrained types to be useful.
- Did you try to use the library? With what compiler? Did you have any problems?
Yes, with Mac OS X 10.4 (PowerPC) using XCode. No problems.
- How much effort did you put into your evaluation? A glance? A quick reading? In-depth study?
A day of reading and trying out the examples.
- Are you knowledgeable about the problem domain?
Somewhat -- Daryle Walker Mac, Internet, and Video Game Junkie darylew AT hotmail DOT com