Boost logo

Boost-Build :

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
property sets.

- Volodya

 


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