[multi_index] Move Semantics

classic Classic list List threaded Threaded
11 messages Options
Reply | Threaded
Open this post in threaded view
|

[multi_index] Move Semantics

Mark Snelling-2
Hi,
I've been a user of Boost.MultiIndex for a number of years and think it's a
great library. Is there any firm plan to add move semantics? It's been
noted under "Future Work" in the docs since Boost 1.32.

Regards,

Mark

_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
Reply | Threaded
Open this post in threaded view
|

Re: [multi_index] Move Semantics

Joaquin M LópezMuñoz
Mark Snelling <mark <at> bakedbeans.com> writes:

>
> Hi,
> I've been a user of Boost.MultiIndex for a number of years and think it's a
> great library. Is there any firm plan to add move semantics? It's been
> noted under "Future Work" in the docs since Boost 1.32.


Hi Mark,

In general, Boost.MultiIndex needs to be updated so as to comply
with the new requirements for containers in C++11 (move ctors and
assignment, initializer_list ctor, emplace.) I'll plan to do so when
time permits, but the time I can devote to lib maintaining is
increasingly smaller. Patches are most welcome.

Best regards,

Joaquín M López Muñoz
Telefónica, Investigación y Desarrollo


_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
Reply | Threaded
Open this post in threaded view
|

Re: [multi_index] Move Semantics

fpelliccioni
On Mon, Dec 19, 2011 at 8:50 AM, Joaquin M Lopez Munoz <[hidden email]>wrote:

> Mark Snelling <mark <at> bakedbeans.com> writes:
>
> >
> > Hi,
> > I've been a user of Boost.MultiIndex for a number of years and think
> it's a
> > great library. Is there any firm plan to add move semantics? It's been
> > noted under "Future Work" in the docs since Boost 1.32.
>
>
> Hi Mark,
>
> In general, Boost.MultiIndex needs to be updated so as to comply
> with the new requirements for containers in C++11 (move ctors and
> assignment, initializer_list ctor, emplace.) I'll plan to do so when
> time permits, but the time I can devote to lib maintaining is
> increasingly smaller. Patches are most welcome.
>
>
Does anyone is working on making Boost.Multiindex move-semantics enabled ?
If nobody is doing it, I could work on that.

Regards,
Fernando Pelliccioni.

_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
Reply | Threaded
Open this post in threaded view
|

Re: [multi_index] Move Semantics

Matias Capeletto
On Tue, Feb 26, 2013 at 12:09 PM, Fernando Pelliccioni
<[hidden email]> wrote:
> On Mon, Dec 19, 2011 at 8:50 AM, Joaquin M Lopez Munoz <[hidden email]>wrote:
>> In general, Boost.MultiIndex needs to be updated so as to comply
>> with the new requirements for containers in C++11 (move ctors and
>> assignment, initializer_list ctor, emplace.) I'll plan to do so when
>> time permits, but the time I can devote to lib maintaining is
>> increasingly smaller. Patches are most welcome.
>>
> Does anyone is working on making Boost.Multiindex move-semantics enabled ?
> If nobody is doing it, I could work on that.

Cool. I am also interested in seeing Boost.MultiIndex upgraded. I am
currently working on an update for Boost.Bimap (I got ride of a lot of
internal machinery that was theoretically sound but in practice it was
just slowing down compilation times and giving users unreadable error
messages), and I will need MultiIndex updated for the getting the lib
into C++11 era.
If you are going to work on this, I will like to be around. It will be
great if we could already clone Boost.MultiIndex git repository :)

Best regards
Matias

_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
Reply | Threaded
Open this post in threaded view
|

Re: [multi_index] Move Semantics

fpelliccioni
On Tue, Feb 26, 2013 at 8:35 AM, Matias Capeletto <
[hidden email]> wrote:

> On Tue, Feb 26, 2013 at 12:09 PM, Fernando Pelliccioni
> <[hidden email]> wrote:
> > On Mon, Dec 19, 2011 at 8:50 AM, Joaquin M Lopez Munoz <[hidden email]
> >wrote:
> >> In general, Boost.MultiIndex needs to be updated so as to comply
> >> with the new requirements for containers in C++11 (move ctors and
> >> assignment, initializer_list ctor, emplace.) I'll plan to do so when
> >> time permits, but the time I can devote to lib maintaining is
> >> increasingly smaller. Patches are most welcome.
> >>
> > Does anyone is working on making Boost.Multiindex move-semantics enabled
> ?
> > If nobody is doing it, I could work on that.
>
> Cool. I am also interested in seeing Boost.MultiIndex upgraded. I am
> currently working on an update for Boost.Bimap (I got ride of a lot of
> internal machinery that was theoretically sound but in practice it was
> just slowing down compilation times and giving users unreadable error
> messages), and I will need MultiIndex updated for the getting the lib
> into C++11 era.
> If you are going to work on this, I will like to be around. It will be
> great if we could already clone Boost.MultiIndex git repository :)
>
> Best regards
> Matias
>
>

I'm using quite Boost.MultiIndex and I would like it has support for C++11.
I am willing to devote time to it if nobody is doing it.

Joaquin has recently stated that hi has changes to commit to one of his
libs. ( Thread: "Should I commit to SVN or Git?" )
I wonder if those changes are related to add C++11 support to
Boost.Multiindex

I like your idea of cloning the repository.
Do you know where is located the Boost.Multiindex Git repository? ( Is
there such a repository? )

Regards,
Fernando P.

_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
Reply | Threaded
Open this post in threaded view
|

Re: [multi_index] Move Semantics

Jonathan Wakely-2
On 26 February 2013 13:09, Fernando Pelliccioni wrote:
> I like your idea of cloning the repository.
> Do you know where is located the Boost.Multiindex Git repository? ( Is
> there such a repository? )

I assume it's https://github.com/boostorg/multi_index
Which is part of the modular boost project, see
https://svn.boost.org/trac/boost/wiki/WikiStart#GitandModularBoost

_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
Reply | Threaded
Open this post in threaded view
|

Re: [multi_index] Move Semantics

fpelliccioni
On Tue, Feb 26, 2013 at 10:16 AM, Jonathan Wakely
<[hidden email]>wrote:

> On 26 February 2013 13:09, Fernando Pelliccioni wrote:
> > I like your idea of cloning the repository.
> > Do you know where is located the Boost.Multiindex Git repository? ( Is
> > there such a repository? )
>
> I assume it's https://github.com/boostorg/multi_index
> Which is part of the modular boost project, see
> https://svn.boost.org/trac/boost/wiki/WikiStart#GitandModularBoost
>
>
Oh, thank you very much!

_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
Reply | Threaded
Open this post in threaded view
|

Re: [multi_index] Move Semantics

Matias Capeletto
On Tue, Feb 26, 2013 at 2:19 PM, Fernando Pelliccioni
<[hidden email]> wrote:

> On Tue, Feb 26, 2013 at 10:16 AM, Jonathan Wakely
> <[hidden email]>wrote:
>
>> On 26 February 2013 13:09, Fernando Pelliccioni wrote:
>> > I like your idea of cloning the repository.
>> > Do you know where is located the Boost.Multiindex Git repository? ( Is
>> > there such a repository? )
>>
>> I assume it's https://github.com/boostorg/multi_index
>> Which is part of the modular boost project, see
>> https://svn.boost.org/trac/boost/wiki/WikiStart#GitandModularBoost
>>
> Oh, thank you very much!

Yes, I was thinking on this. Joaquin was also asking about whether to
start using this repository or wait and keep using SVN. In the
meanwhile, I do not see any harm by forking that rep and start working
on it, you can later generate some patches for Joaquin to apply to the
current trunk at the time you finish your work (hopefully we will be
already in GitHub and you will just issue a pull request).

_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
Reply | Threaded
Open this post in threaded view
|

Re: [multi_index] Move Semantics

fpelliccioni
On Tue, Feb 26, 2013 at 10:24 AM, Matias Capeletto <
[hidden email]> wrote:

> On Tue, Feb 26, 2013 at 2:19 PM, Fernando Pelliccioni
> <[hidden email]> wrote:
> > On Tue, Feb 26, 2013 at 10:16 AM, Jonathan Wakely
> > <[hidden email]>wrote:
> >
> >> On 26 February 2013 13:09, Fernando Pelliccioni wrote:
> >> > I like your idea of cloning the repository.
> >> > Do you know where is located the Boost.Multiindex Git repository? ( Is
> >> > there such a repository? )
> >>
> >> I assume it's https://github.com/boostorg/multi_index
> >> Which is part of the modular boost project, see
> >> https://svn.boost.org/trac/boost/wiki/WikiStart#GitandModularBoost
> >>
> > Oh, thank you very much!
>
> Yes, I was thinking on this. Joaquin was also asking about whether to
> start using this repository or wait and keep using SVN. In the
> meanwhile, I do not see any harm by forking that rep and start working
> on it, you can later generate some patches for Joaquin to apply to the
> current trunk at the time you finish your work (hopefully we will be
> already in GitHub and you will just issue a pull request).
>
>

Forked.

https://github.com/fpelliccioni/multi_index

_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
Reply | Threaded
Open this post in threaded view
|

Re: [multi_index] Move Semantics

Joaquin M LópezMuñoz
In reply to this post by fpelliccioni
El 26/02/2013 14:09, Fernando Pelliccioni escribió:
>
> I'm using quite Boost.MultiIndex and I would like it has support for C++11.
> I am willing to devote time to it if nobody is doing it.
>
> Joaquin has recently stated that hi has changes to commit to one of his
> libs. ( Thread: "Should I commit to SVN or Git?" )
> I wonder if those changes are related to add C++11 support to
> Boost.Multiindex

Hi Fernando and team,

The latest changes I commited to the lib are unfortunately not related
to C++11 upgrading but very minor patches to suppress warnings and such.

Boost.MultiIndex sorely needs to have move semantics, initializer list
construction and emplace functions. Even though I'm willing (and have
been for some months) to add these myself the sad reality is that the
time I can devote to this is increasingly small, so if any other
contributor wants to take up the task I'll be more than happy to assist.
A few words on the changes:

* In general, when implementing a new feature I've had more work
upgrading tests and docs that writing the feature itself. Many patch
contributors forget to provide the former, though.
* Implementing move construction and initializer list support should be
straightforward. Probably the design decisions in Boost.Unordered (and
part of the code itself) can be reused here.
* emplace is a different animal: apart from the interface implementation
(which, again, might benefit of the work already done in
Boost.Unordered) some internal scaffolding needs to be put in place.
I'll be happy to discuss this.

Joaquín M López Muñoz
Telefónica Digital


________________________________

Este mensaje se dirige exclusivamente a su destinatario. Puede consultar nuestra política de envío y recepción de correo electrónico en el enlace situado más abajo.
This message is intended exclusively for its addressee. We only send and receive email on the basis of the terms set out at:
http://www.tid.es/ES/PAGINAS/disclaimer.aspx

_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
Reply | Threaded
Open this post in threaded view
|

Re: [multi_index] Move Semantics

fpelliccioni
On Wed, Feb 27, 2013 at 4:22 AM, Joaquín Mª López Muñoz <[hidden email]>wrote:

> El 26/02/2013 14:09, Fernando Pelliccioni escribió:
>
>
>> I'm using quite Boost.MultiIndex and I would like it has support for
>> C++11.
>> I am willing to devote time to it if nobody is doing it.
>>
>> Joaquin has recently stated that hi has changes to commit to one of his
>> libs. ( Thread: "Should I commit to SVN or Git?" )
>> I wonder if those changes are related to add C++11 support to
>> Boost.Multiindex
>>
>
> Hi Fernando and team,
>
> The latest changes I commited to the lib are unfortunately not related
> to C++11 upgrading but very minor patches to suppress warnings and such.
>
> Boost.MultiIndex sorely needs to have move semantics, initializer list
> construction and emplace functions. Even though I'm willing (and have
> been for some months) to add these myself the sad reality is that the
> time I can devote to this is increasingly small, so if any other
> contributor wants to take up the task I'll be more than happy to assist.
> A few words on the changes:
>
> * In general, when implementing a new feature I've had more work
> upgrading tests and docs that writing the feature itself. Many patch
> contributors forget to provide the former, though.
> * Implementing move construction and initializer list support should be
> straightforward. Probably the design decisions in Boost.Unordered (and
> part of the code itself) can be reused here.
> * emplace is a different animal: apart from the interface implementation
> (which, again, might benefit of the work already done in
> Boost.Unordered) some internal scaffolding needs to be put in place.
> I'll be happy to discuss this.
>
> Joaquín M López Muñoz
> Telefónica Digital
>
>
Hi Joaquín,

I will try to send both patches and updates to the test. Regarding to the
documentation perhaps we should work together.
Casually, one of the first changes I thought implement is emplace, I was
not aware of the problem you mention.
I will check the design decisions taken in Unordered and Container, in any
case we can discuss it.

Thank you very much for your advice and keep in touch.
Regards,
Fernando Pelliccioni.

_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost