From Jason Turner

[optional.swap]

Diff to HTML by rtfpessoa

tmp/tmpcsxzl9vy/{from.md → to.md} RENAMED
@@ -0,0 +1,7 @@
 
 
 
 
 
 
 
 
1
+ **Table: `optional::swap(optional&)` effects** <a id="optional.swap">[optional.swap]</a>
2
+
3
+ | | `*this` contains a value | `*this` does not contain a value |
4
+ | ------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
5
+ | `rhs` contains a value | calls `swap(*(*this), *rhs)` | initializes the contained value of `*this` as if direct-non-list-initializing an object of type `T` with the expression `std::move(*rhs)`, followed by `rhs.val->T::~T()`; postcondition is that `*this` contains a value and `rhs` does not contain a value |
6
+ | `rhs` does not contain a value | initializes the contained value of `rhs` as if direct-non-list-initializing an object of type `T` with the expression `std::move(*(*this))`, followed by `val->T::~T()`; postcondition is that `*this` does not contain a value and `rhs` contains a value | no effect |
7
+