[/ Copyright 2017 Peter Dimov Distributed under the Boost Software License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt). ] [section:is_nothrow_swappable is_nothrow_swappable] template struct is_nothrow_swappable : public __tof {}; __inherit If the expression `swap(declval(), declval())` (in a context where `std::swap` is visible) is valid and non-throwing, inherits from __true_type, otherwise from __false_type. __compat This trait requires C++11 for full support. Without C++11 it will inherit from __true_type for scalar types (including integral, floating point, enumeration, pointer and pointer-to-member types), and from __false_type for anything else. __header ` #include ` or ` #include ` [endsect]