Boost logo

Boost :

From: Sascha Seewald (sascha.seewald_at_[hidden])
Date: 2005-09-15 14:38:32

Maciej Sobczak wrote:
> In my opinion both approaches have their uses, just like std::vector and
> boost::array.

Right. We could support both ways by making the type of range the value
is checked against configurable. I think of a static_range<> for
compile-time checked values and dynamic_ranges to be setup at runtime.

// compile time checked value
typedef static_range<-10,+10> my_static_constraint;

constraint_value< my_static_constraint, some_more_policies >

ct_value ctv = 303; // asserts or throws or ...

// runtime checked value
typedef dynamic_range<int> my_dynamic_constraint;

constraint_value< my_dynamic_constraint, some_more_policies >

rt_value rtv;
rtv.lower_bound( 0 );
rtv.upper_bound( 40 );

rtv = 20; // good
rtv = -1; // bad

Do you think thats possible?

Boost list run by bdawes at, gregod at, cpdaniel at, john at