std::swap(std::variant)
From cppreference.com
                    
                                        
                    
                    
                                                            
                    | Defined in header  <variant> | ||
| template <class... Types> void swap(variant<Types...>& lhs, variant<Types...>& rhs) noexcept(/* see below */); | (since C++17) | |
Overloads the std::swap algorithm for std::variant. Effectively calls lhs.swap(rhs).
This overload only participates in overload resolution if is_move_constructible_v<T_i> and is_swappable_v<T_i> are both true for all T_i in Types...
| Contents | 
[edit] Parameters
| lhs, rhs | - | variantobjects whose values to swap | 
[edit] Return value
(none)
[edit] Exceptions
noexcept specification:  
noexcept(noexcept(lhs.swap(rhs)))
[edit] Example
| This section is incomplete Reason: no example | 
[edit] See also
| swaps with another variant (public member function) | 


