From: Vladimir Prus (ghost_at_[hidden])
Date: 2003-05-13 00:33:39
David Abrahams wrote:
> > A small design note. Ultimately, it's better to avoid calls to "validate"
> > at all. All properties should be represented as instances of property-set
> > class and validation will happen only when such an instances is created
> > from user input. E.g. a new rule property-set.create-with-validation can
> > be introduced.
> Why should we provide an option to not validate on creation?
Because in most cases creation is done why you do some operations with
property-set, for example adding. In this case you know that all properties
are valid, but you still want to pass them through property-set.create so
that existing property-set with the same properties is returned if it exists.
> > After that, property-set instances is guaranteed to have only valid
> > properties and all operations with it will leave it valid -- thus,
> > "validate" must be called only in few places.
> > What do you think?
> In principle, I agree that bottlenecking error checking through a
> very few routines is a great idea.
In this particular case it means we should gradually eliminate all use of raw
Boost-Build list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk