The view concept specifies the requirements of a range type
that has constant time move construction, move assignment, and destruction;
that is, the cost of these operations is
independent of the number of elements in the view.
Remarks: Pursuant to [namespace.std], users may specialize enable_view
to true
for cv-unqualified program-defined types which model view,
and false for types which do not.
Such specializations shall
be usable in constant expressions ([expr.const]) and
have type constbool.