cpp/ranges/as rvalue view

@1@ A range adaptor that represents a view of underlying whose elements are rvalues.

@2@ . Let be a subexpression and let  be. Then the expression is expression-equivalent to:
 * , if it is a well-formed expression and is ;
 * otherwise.

Data members
Typical implementations of only hold one non-static data member:
 * the underlying view of type (shown here as, the name is exposition only).

Member functions
{{member|{{small|std::ranges::as_rvalue_view::}}as_rvalue_view| {{dcl begin}} {{dcl|num=1|since=c++23|1= as_rvalue_view requires std::default_initializable = default; }} {{dcl|num=2|since=c++23| constexpr explicit as_rvalue_view( V base ); }} {{dcl end}}

@1@ Value-initializes {{tti|base_}} via its default member initializer ({{c|1== V}}). @2@ Initializes {{tti|base_}} with {{c|std::move(base)}}.

Parameters
}}

Helper templates
This specialization of makes  satisfy  when the underlying view satisfies it.