Boost logo

Boost :

From: Rob Stewart (stewart_at_[hidden])
Date: 2004-10-05 14:26:20

From: =?iso-8859-1?Q?Terje_Sletteb=F8?= <tslettebo_at_[hidden]>
> The library will be put in a CVS at the
> server, and we're not sure how to deal with the maximum filename length. The
> current directory structure is, e.g.:
> #include <boost/concept_traits/std/is_default_constructible.hpp>
> #include <boost/concept_traits/std/is_random_access_container.hpp>
> #include <boost/concept_traits/std/is_random_access_iterator.hpp>
> #include <boost/concept_traits/std/is_generator.hpp>
> Tobias suggested the following (the "model" part is still not decided, and
> may be considered separately):
> #include <boost/concept_traits/model/std/constructbility/default.hpp>
> #include <boost/concept_traits/model/std/container/random_access.hpp>
> #include <boost/concept_traits/model/std/iterator/random_access.hpp>
> #include <boost/concept_traits/model/std/function/generator.hpp>
> The traits would still retain their names, so
> <boost/concept_traits/model/std/iterator/random_access.hpp> would have
> is_random_access_iterator<T>.

While the Boost penchant is for everything in its own header,
what about grouping them into common headers? You could put the
implementation of each in a separate, cryptically named header
included in the common one, too. (The cipher for the included
filenames doesn't have to be strong, just enough to encode things
in the maximum filename length limit without much worry about


#include <boost/concept_traits/model/std/is_default_constructible.hpp>
#include <boost/concept_traits/model/std/container.hpp>
#include <boost/concept_traits/model/std/iterator.hpp>
#include <boost/concept_traits/model/std/function.hpp>

Rob Stewart                           stewart_at_[hidden]
Software Engineer           
Susquehanna International Group, LLP  using std::disclaimer;

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