From: Ion Gaztañaga (igaztanaga_at_[hidden])
Date: 2007-03-21 12:38:35
Henri Bavestrello wrote:
> unfortunately as during looking-up phases I had to create a whole
> dummy ojbect initialized with the key searched for to be able to use the
> imultiset::find method; I decided to implement an intrusive map (imap)
> modifying the red-black tree implementation that comes with the library,
> something like:
> I am happy to see that with this new version of the library, I can directly use
> the iset container taking advantage of the find(key, comp) method ;-). Also, the
> iset container instantiation is simpler as the Compare operator actually
> combines the comparison operator and the key extractor.
These new comparison/search functions were added for this and to make
possible building map-like non-intrusive containers, where just the key
part is used to search the data.
I would be interested in the avl code you have used in your example. It
would be nice to have avl_tree_algorithms in the library, and we could
even make an intrusive associative container based on that tree.
Contributions are welcome ;-)
> It may be help full in the example about the iset/imultiset container that the
> two container uses different type (currently they both use MyClass int_ data
> member as key), and make use of the iset/imultiset::find(key, comp) method.
Those advanced functions are explained in the next section, so I don't
if including them in the previous example would be logical. I'll think
> - Are you knowledgeable about the problem domain?
> I am no expert on containers, but as a user in the HPC community, I well aware
> of problems like data locality and cache trashing.
Any suggestion from HPC people is well received ;-)
> - Do you think the library should be accepted as a Boost library?
> Yes. I will definitively use it; and as an other review wrote, I will maintained
> my own copy, it is not ...
Thanks for your vote. I hope we can continue improving Intrusive for HPC
> Best regards,
Boost list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk