/ranges/view") of a sequence that casts each element to an rvalue   
(class template)  (range adaptor object)  [ [edit]
](https://en.cppreference.com/mwiki/index.php?title=Template:cpp/ranges/dsc_as_rvalue_view&action=edit)  
[ ranges::elements_view  views::elements  ](/w/cpp/ranges/elements_view "cpp/ranges/elements view") (C++20)  |  takes a [ ` view ` ](/w/cpp/ranges/view "cpp/ranges/view") consisting of [ ` _tuple-like_ ` ](/w/cpp/utility/tuple/tuple-like "cpp/utility/tuple/tuple-like") values and a number N and produces a [ ` view ` ](/w/cpp/ranges/view "cpp/ranges/view") of N  th  element of each tuple   
(class template)  (range adaptor object)  [ [edit]
](https://en.cppreference.com/mwiki/index.php?title=Template:cpp/ranges/dsc_elements_view&action=edit)  
[ ranges::keys_view  views::keys  ](/w/cpp/ranges/keys_view "cpp/ranges/keys view") (C++20)  |  takes a [ ` view ` ](/w/cpp/ranges/view "cpp/ranges/view") consisting of pair-like values and produces a [ ` view ` ](/w/cpp/ranges/view "cpp/ranges/view") of the first elements of each pair   
(class template)  (range adaptor object)  [ [edit]
](https://en.cppreference.com/mwiki/index.php?title=Template:cpp/ranges/dsc_keys_view&action=edit)  
[ ranges::values_view  views::values  ](/w/cpp/ranges/values_view "cpp/ranges/values view") (C++20)  |  takes a [ ` view ` ](/w/cpp/ranges/view "cpp/ranges/view") consisting of pair-like values and produces a [ ` view ` ](/w/cpp/ranges/view "cpp/ranges/view") of the second elements of each pair   
(class template)  (range adaptor object)  [ [edit]
](https://en.cppreference.com/mwiki/index.php?title=Template:cpp/ranges/dsc_values_view&action=edit)  
[ ranges::enumerate_view  views::enumerate  ](/w/cpp/ranges/enumerate_view "cpp/ranges/enumerate view") (C++23)  |  a [ ` view ` ](/w/cpp/ranges/view "cpp/ranges/view") that maps each element of adapted sequence to a tuple of both the element's position and its value   
(class template)  (range adaptor object)  [ [edit]
](https://en.cppreference.com/mwiki/index.php?title=Template:cpp/ranges/dsc_enumerate_view&action=edit)  
[ ranges::zip_view  views::zip  ](/w/cpp/ranges/zip_view "cpp/ranges/zip view") (C++23)  |  a [ ` view ` ](/w/cpp/ranges/view "cpp/ranges/view") consisting of tuples of references to corresponding elements of the adapted views   
(class template)  (customization point object)  [ [edit]
](https://en.cppreference.com/mwiki/index.php?title=Template:cpp/ranges/dsc_zip_view&action=edit)  
[ ranges::zip_transform_view  views::zip_transform  ](/w/cpp/ranges/zip_transform_view "cpp/ranges/zip transform view") (C++23)  |  a [ ` view ` ](/w/cpp/ranges/view "cpp/ranges/view") consisting of tuples of results of application of a transformation function to corresponding elements of the adapted views   
(class template)  (customization point object)  [ [edit]
](https://en.cppreference.com/mwiki/index.php?title=Template:cpp/ranges/dsc_zip_transform_view&action=edit)  
[ ranges::adjacent_view  views::adjacent  ](/w/cpp/ranges/adjacent_view "cpp/ranges/adjacent view") (C++23)  |  a [ ` view ` ](/w/cpp/ranges/view "cpp/ranges/view") consisting of tuples of references to adjacent elements of the adapted view   
(class template)  (range adaptor object)  [ [edit]
](https://en.cppreference.com/mwiki/index.php?title=Template:cpp/ranges/dsc_adjacent_view&action=edit)  
[ ranges::adjacent_transform_view  views::adjacent_transform  ](/w/cpp/ranges/adjacent_transform_view "cpp/ranges/adjacent transform view") (C++23)  |  a [ ` view ` ](/w/cpp/ranges/view "cpp/ranges/view") consisting of tuples of results of application of a transformation function to adjacent elements of the adapted view   
(class template)  (range adaptor object)  [ [edit]
](https://en.cppreference.com/mwiki/index.php?title=Template:cpp/ranges/dsc_adjacent_transform_view&action=edit)  
[ ranges::join_with_view  views::join_with  ](/w/cpp/ranges/join_with_view "cpp/ranges/join with view") (C++23)  |  a [ ` view ` ](/w/cpp/ranges/v