Boost logo

Boost :

From: Terje Slettebø (tslettebo_at_[hidden])
Date: 2003-01-31 13:22:42


>From: "Daniel Frey" <daniel.frey_at_[hidden]>

> David Abrahams wrote:
> >
> > > Who cares? The new toy is so cool! :-) Seriously, Peter is a wise man.
> > > Personally I would go with his suggestion about having two (or more)
> > > separate metafunctions, at least for the sake of generality
> >
> > I'd rather settle on one for the sake of simplicity and see if it's
> > enough for people. Once you provide two interfaces, you're sort of
> > stuck supporting them both.
>
> I agree. And we should keep in mind that people can use "trivial"
> combination anyway, so we needn't offer them all with separate
> names/interfaces, e.g.
>
> is_base_and_derived< B, D >::value || is_void< B >::value
>
> is easy enough for users, so if they want to use "void" as a base for
> all classes, they can do it that way. All we need to do is to provide
> very good documentation.

This may solve the issue of how or whether to support the semantics of the
current implementation. That may be something like:

is_base_and_derived<B, D>::value && is_convertible<D, B>::value

Regards,

Terje


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk