
On Feb 17, 2009, at 5:00 PM, Ion GaztaƱaga wrote:
Hi to all,
I've uploaded a new version of the move emulation library to sandbox. I've put it temporarily in "move_semantics" folder to avoid overwriting current move code.
I've put some quickbook documentation whose introduction is based in the article "A Brief Introduction to Rvalue References" by Hinnant, Stroustrup, Kozicki.
http://svn.boost.org/svn/boost/sandbox/libs/move_semantics/index.html
The library needs specially modified Interprocess containers (and Intrusive because of dependences), which I've also uploaded to sandbox. The examples show how movable only values can be inserted into containers.
For those that don't like svn sandbox (I'm one of them) I've also put the code and the documentation here:
http://www.drivehq.com/web/igaztanaga/move_semantics.zip
And online documentation also here:
http://www.drivehq.com/web/igaztanaga/libs/move_semantics/
The documentation is not in english, it's in my own english dialect so be careful when reading ;-) Patches and corrections welcome. I've documented some functions to create a little boostbook reference.
I've invested some precious time in the library and testing different approaches to see if it plays well with containers but I would like to hear some comments on whether the direction is acceptable and if I should spend more time on it. If someone else with more time wants to continue the library, please do it! ;-)
I've personally added to the library all that I've seen useful for move-aware containers, so it might lack some features (move aware algorithms, for example).
Anyway, my opinion is that we need some move library, better now than later even if it's too basic, so that we can unify all redundant move emulation that we already have in boost libraries. I hope this is a step in the right direction.
This looks very nice Ion, thanks. -Howard