std::experimental::shared_future<T>::operator=

From cppreference.com
(1)
(2)

Assigns the contents of another std::experimental::shared_future object.

1) Releases any shared state and assigns the contents of other to *this. After the assignment, this->valid() == other.valid().
2) Releases any shared state and move-assigns the contents of other to *this. After the assignment, other.valid() == false and this->valid() will yield the same value as other.valid() before the assignment.

Parameters

other - a std::experimental::shared_future object to assign from

Return value

*this