Boost logo

Boost :

Subject: Re: [boost] boost::optional -- updates for C++11 move semantics
From: Antony Polukhin (antoshkka_at_[hidden])
Date: 2013-02-06 01:26:01

2013/2/5 Diggory Hardy <lists_at_[hidden]>:
> Dear list,
> I wanted something like boost::optional, but with support for move-
> construction/assignment, so I went ahead and had a go at patching it.

It is a really good addition for boost::optional library, which I'd love to see.
As I know, current maintainer of Boost.Optional has not much time, so
may be someone will contact him and give a hand in maintaining
optional (Diggory, if you are interested, I think you can give it a
try and may be become a co-maintainer of optional, if Fernando
Cacciola agrees)

> Attached is based on boost 1.49 (Ubuntu package). Could someone please review?
> I've not contributed to boost before. The changes at least aren't too
> complicated, but:
> 1) I'm not entirely sure if the move constructor (line 636) and swap function
> (line 1046) are implemented in the best way (also see line 279),
> 2) and I have no idea how is_[not_]reference_tag (line 486) works.
> 3) There should maybe also be a unit test.
> Of course, I am happy for my contributions to be published under the boost
> licence.

You may see this patch:
It proposes same features (and there is an old comment from library
maintainer that he will take care of it)
If you wish, you may update this patch (change deprecated #ifdef
unit tests, and may be maybe update it to use Boost.Move.

Best regards,
Antony Polukhin

Boost list run by bdawes at, gregod at, cpdaniel at, john at