Boost logo

Boost Users :

Subject: Re: [Boost-users] [review][constrained_value] Review of Constrained Value Library begins today
From: Peter Bartlett (pete_at_[hidden])
Date: 2008-12-03 06:19:17


Quoting Mathias Gaunard <mathias.gaunard_at_[hidden]>:

> Jeff Garland wrote:
>
>> 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.
>
> I think this is wrong.
> Providing an invalid value should be a non-recoverable programming error.
> Non-recoverable means it should abort the program, and programming
> error means it should only be enabled in debug mode.
> i.e. an assert is the best choice to assert the preconditions are met.

The custom error policy functionality supports this. So the only
question is what the best default error policy is. I'm inclined to
believe throwing is the best choice.


Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net