From: Sean P. <sp...@ad...> - 2008-04-02 09:43:04
|
I read through you doc changes while traveling - all good. I've updated my local copy - I'll submit as soon as I have a chance. Thanks! Sean On Apr 1, 2008, at 7:25 PM, Mat Marcus wrote: > Hi Daniel, > > Great, thanks for your efforts. One of the ASL authors is traveling to > a conference. We'll review your suggested in a week or so. Sorry for > the delay. > > - Mat > > > "Daniel James" <dan...@fm...> writes: > >> Hi, >> >> David Abrahams suggested 'boostifying' the adobe move library during >> the Boost.Unordered review - so I'm currently working on doing that. >> Other than changing the namespaces, I'm planning to supply a fallback >> for compilers without SFINAE and add support for Boost.Thread's move >> semantics. And possibly add some support for objects that aren't >> regular. >> >> I've attached a patch for a few small changes to the documentation. >> Hopefully, it should be self-explanatory. Does it look okay? >> >> thanks, >> >> Daniel >> >> --- adobe/move.hpp.orig 2008-03-31 00:52:50.000000000 +0100 >> +++ adobe/move.hpp 2008-03-31 01:22:30.000000000 +0100 >> @@ -42,7 +42,7 @@ >> >> \par Implementing a Movable Type >> >> -A movable type models \ref concept_movable. There are four >> components of a movable type: >> +A movable type models \ref concept_movable. There are three >> components of a movable type: >> - Satisfy the requirements of concept \ref concept_regular_type. >> - Implement a move-ctor using move_from<>. >> - Modify the assignment operator to take the operand by value and >> consume it. >> @@ -70,7 +70,7 @@ >> >> struct implementation : boost::equality_comparable<implementation> >> { >> - implementation(int x = 0) : member(x) { } >> + explicit implementation(int x = 0) : member(x) { } >> >> implementation(const implementation& x) : member(x.member) >> { std::cout << "copy remote part: " << member << std::endl; } >> @@ -93,7 +93,7 @@ >> public: >> // model concept Regular >> >> - movable(int x = 0) : member(new implementation(x)) { } >> + explicit movable(int x = 0) : member(new implementation(x)) { } >> ~movable() { delete member; } >> movable(const movable& x) : member(new implementation(*x.member)) { } >> // operator=() implemented below >> @@ -107,8 +107,8 @@ >> // model concept Movable >> >> // move-ctor assumes ownership of remote part >> - movable(move_from<movable> x) : member(x.source.member) >> - { x.member = 0; } >> + movable(adobe::move_from<movable> x) : member(x.source.member) >> + { x.source.member = 0; } >> >> // operator=() on a movable type takes parameter by value and >> consumes it >> movable& operator=(movable x) >> @@ -212,13 +212,12 @@ >> >> <table> >> <tr><td><b>Move</b></td><td><b>Copy</b></td><td><b>Comment</b></ >> td></tr> >> -<tr><td>adobe::move()<td><td>std::copy</td><td>Not to be confused >> with the single argument adobe::move()</td></tr> >> -<tr><td>adobe::move_backward()<td><td>std::copy_backward</td></tr> >> -<tr><td>adobe::move_backward()<td><td>std::copy_backward</td></tr> >> - >> < >> tr >> ><td>adobe::back_move_iterator()<td><td>std::back_insert_iterator</ >> td></tr> >> -<tr><td>adobe::back_mover()<td><td>std::back_inserter</td></tr> >> -<tr><td>adobe::move_construct()<td><td>std::construct</td></tr> >> - >> <tr><td>adobe::uninitialized_move()<td><td>std::uninitialized_copy</ >> td></tr> >> +<tr><td>adobe::move()</td><td>std::copy</td><td>Not to be confused >> with the single argument adobe::move()</td></tr> >> +<tr><td>adobe::move_backward()</td><td>std::copy_backward</td></tr> >> +<tr><td>adobe::back_move_iterator()</ >> td><td>std::back_insert_iterator</td></tr> >> +<tr><td>adobe::back_mover()</td><td>std::back_inserter</td></tr> >> +<tr><td>adobe::move_construct()</td><td>std::construct</td></tr> >> +<tr><td>adobe::uninitialized_move()</ >> td><td>std::uninitialized_copy</td></tr> >> </table> >> >> \par Advanced Topics >> ------------------------------------------------------------------------- >> Check out the new SourceForge.net Marketplace. >> It's the best place to buy or sell services for >> just about anything Open Source. >> http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace_______________________________________________ >> Adobe-source-devel mailing list >> Ado...@li... >> https://lists.sourceforge.net/lists/listinfo/adobe-source-devel > > ------------------------------------------------------------------------- > Check out the new SourceForge.net Marketplace. > It's the best place to buy or sell services for > just about anything Open Source. > http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace > _______________________________________________ > Adobe-source-devel mailing list > Ado...@li... > https://lists.sourceforge.net/lists/listinfo/adobe-source-devel |