A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://cplusplus.github.io/LWG/issue1088 below:

promise should provide non-member swap overload

This page is a snapshot from the LWG issues list, see the Library Active Issues List for more information and the meaning of Resolved status.

1088. std::promise should provide non-member swap overload

Section: 32.10.6 [futures.promise] Status: Resolved Submitter: Howard Hinnant Opened: 2009-03-22 Last modified: 2016-01-28

Priority: Not Prioritized

View all other issues in [futures.promise].

View all issues with Resolved status.

Discussion:

Addresses UK 342 [CD1]

std::promise is missing a non-member overload of swap. This is inconsistent with other types that provide a swap member function.

Add a non-member overload void swap(promise&& x,promise&& y){ x.swap(y); }

[ Summit: ]

Create an issue. Move to review, attention: Howard. Detlef will also look into it.

[ Post Summit Daniel provided wording. ]

[ 2009-10 Santa Cruz: ]

NAD Editorial Resolved. Addressed by N2997.

Proposed resolution:

  1. In 32.10.6 [futures.promise], before p.1, immediately after class template promise add:

    template <class R>
    void swap(promise<R>& x, promise<R>& y);
    
    
  2. Change 32.10.6 [futures.promise]/10 as indicated (to fix a circular definition):

    -10- Effects: swap(*this, other) Swaps the associated state of *this and other

    Throws: Nothing.

  3. After the last paragraph in 32.10.6 [futures.promise] add the following prototype description:

    template <class R>
    void swap(promise<R>& x, promise<R>& y);
    

    Effects: x.swap(y)

    Throws: Nothing.


RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4