From: Joaquín Mª López Muñoz (joaquin_at_[hidden])
Date: 2005-02-07 12:47:05
Daniel James ha escrito:
> > 1. Now the file is boost/hash/functional.hpp. Wouldn't it
> > be better to call it boost/functional/hash.hpp? As I see it, hash<>
> > is part of TR1 future <functional>, so the naming
> > I propose looks more consistent.
> Yeah, I'll do that. Although, until it's formally a part of boost, I
> thought you'd just be putting it into a detail directory.
Well, putting it in detail defeats the whole purpose of raising
a public hash implementation for use by multi_index, eventually
your unordered containers and what might come in the future.
My plan is to wrap your hash.hpp, docs and tests as part of
the next upgrade of Boost.MultiIndex, which features
hashed indices (sometime this week.) If you don't mind,
of course. We can let this upgrade be submitted to an informal
review before comitting to the CVS: if everybody's happy,
commit and we're done. If someone raises some objection
to this hash being incorporated to Boost, we'll know. On
one side, library maintainers have certain degree of freedom when
adding new features to an accepted library; on the other side,
this could be regarded as piggybacking an unreviewed library
into Boost. The only way to know IMHO is to let people decide.
Is this OK with you? Comments, objections? You might want
to move to private email, if this is going to generate excessive
noise on the list.
> > 2. The header includes <set> and <map>, which can be quite heavy
> > if the user has no intention to use the corresponding hash_value
> > overloads. Alas, I don't know of any way to avoid the inclusions,
> > since a forward declaration of these containers can fail due
> > to the freedom stdlib implementers have to add additional template
> > parameters to those specified by the standard. Any idea?
> The only thing I can think of is seperating the file into two different
> headers, something like boost/functional/hash.hpp and
> boost/functional/hash_containers.hpp. But that would be pretty awkward
> to use.
Yep, I guess there's no easy workaround.
Joaquín M López Muñoz
Telefónica, Investigación y Desarrollo
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk