Boost logo

Boost :

From: dan marsden (danmarsden_at_[hidden])
Date: 2006-01-19 16:11:48

--- Arkadiy Vertleyb <vertleyb_at_[hidden]> wrote:
> > Where should the header go?
> >
> > boost/typeof/boost/<LIB>
> >
> > ??
> No, definitely not under boost/typeof :-)
> I think the registration should be [conceptualy]
> owned by the library
> authors rather then typeof library, so I still think
> boost/<LIB>/typeof is
> more appropriate. When I was talking about
> non-intrusiveness I meant files,
> not directories. It is also much easier to work
> with CVS when everything is
> under the same root.

That sounds reasonable to me. The various macro
approaches seem a bit too clever, a header based
approach should be easy for library clients to

As for structure, how about consistently placing the
typeof headers in a directory beneath the file they
support. So for a file:


The corresponding typeof support would be in:


So for a small part of phoenix2 for example we have:


Which provide lamdba support for different types of
operators. Their typeof support would be in:


Phoenix also provides a single file that provides all
the operator support in one hit:


Again following the same logic, to add all the
corresponding typeof support:


Hopefully that illustrates one possible candidate
naming scheme. I've aimed for simplicity, consistency
and fine grain control over what typeof support is
brought in. The higher level files (like operator.hpp)
allow clients that are not fussy to just drag in a
load of typeof support in one hit. At least one
downside is that there are a lot of additional files
for library writers to manage in some of the more
complex libraries.


Yahoo! Photos – NEW, now offering a quality print service from just 8p a photo

Boost list run by bdawes at, gregod at, cpdaniel at, john at