Boost logo

Boost :

From: Doug Gregor (dgregor_at_[hidden])
Date: 2007-10-29 16:04:19


On Oct 29, 2007, at 11:08 AM, Eric Niebler wrote:
> Douglas Gregor wrote:
>> On Sat, 2007-10-27 at 11:08 -0400, Arkadiy Vertleyb wrote:
>>> "Eric Niebler" <eric_at_[hidden]> wrote
>>>
>>>> In order for BOOST_TYPEOF to work with xpressive's static regexes
>>>> (something I'm actively trying to support), I need registrations
>>>> for
>>>> reference_wrapper<> and mpl::int_<>. I'm happy to add them, but
>>>> I'm not
>>>> sure where. Thoughts?
> <snip>
>>
>> There are several libraries that have this kind of problem. typeof
>> needs
>> registrations, serialization needs serialize() functions, MPI needs
>> datatype traits, etc. I wonder if we can solve this problem for
>> all of
>> Boost with some kind of automatic scheme that says: if you include
>> header A from one library and header B from another library, you
>> automatically get whatever glue makes A and B work well together.
>> [snip]
>
>
> I don't think this is a very good idea. Take a really basic example
> like
> boost/ref.hpp, that is included *everywhere*. Are you really going to
> add PP blocks like this to ref.hpp for every library in boost that
> includes it? That would be almost every library in Boost, and it would
> be an continuing maintenance problem for the author of ref.hpp.

Well, for every library that has traits that need to be specialized
for many of Boost's types.

> I think the better solution is the one Arkadiy suggested ... that
> there
> is a dedicated place for such registrations so interested parties can
> add them if they need them. I'd be happy with his suggestion of
> $BOOST_ROOT/boost/typeof_registrations/<library>/.

Right, but we'll then need $BOOST_ROOT/boost/serialization/
<library>/, and $BOOST_ROOT/boost/mpi/<library>/, and so on.

        Doug


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