std::experimental::ranges::Movable

Header: <experimental/ranges/concepts>

The concept Movable specifies that T is an object type that can moved (that is, it can be move constructed, move assigned, and lvalues of type T can be swapped).

# Declarations

template< class T >
concept bool Movable =
std::is_object<T>::value &&
MoveConstructible<T> &&
Assignable<T&, T> &&
Swappable<T>;

(ranges TS)

# See also