ew "cpp/ranges/view") consisting of the elements obtained by successive application of ` operator>> ` on the associated input stream   
(class template)  (customization point object)  [ [edit]
](https://en.cppreference.com/mwiki/index.php?title=Template:cpp/ranges/dsc_basic_istream_view&action=edit)  
[ ranges::repeat_view  views::repeat  ](/w/cpp/ranges/repeat_view "cpp/ranges/repeat view") (C++23)  |  a [ ` view ` ](/w/cpp/ranges/view "cpp/ranges/view") consisting of a generated sequence by repeatedly producing the same value   
(class template)  (customization point object)  [ [edit]
](https://en.cppreference.com/mwiki/index.php?title=Template:cpp/ranges/dsc_repeat_view&action=edit)  
[ ranges::cartesian_product_view  views::cartesian_product  ](/w/cpp/ranges/cartesian_product_view "cpp/ranges/cartesian product view") (C++23)  |  a [ ` view ` ](/w/cpp/ranges/view "cpp/ranges/view") consisting of tuples of results calculated by the n-ary cartesian product of the adapted views   
(class template)  (customization point object)  [ [edit]
](https://en.cppreference.com/mwiki/index.php?title=Template:cpp/ranges/dsc_cartesian_product_view&action=edit)  
  
#####  Adaptors  
  
Defined in namespace ` std::ranges `  
[ views::all_t  views::all  ](/w/cpp/ranges/all_view "cpp/ranges/all view") (C++20)  |  a [ ` view ` ](/w/cpp/ranges/view "cpp/ranges/view") that includes all elements of a [ ` range ` ](/w/cpp/ranges/range "cpp/ranges/range")   
(alias template)  (range adaptor object)  [ [edit]
](https://en.cppreference.com/mwiki/index.php?title=Template:cpp/ranges/dsc_all_view&action=edit)  
[ ranges::ref_view  ](/w/cpp/ranges/ref_view "cpp/ranges/ref view") (C++20)  |  a [ ` view ` ](/w/cpp/ranges/view "cpp/ranges/view") of the elements of some other [ ` range ` ](/w/cpp/ranges/range "cpp/ranges/range")   
(class template)  [ [edit]
](https://en.cppreference.com/mwiki/index.php?title=Template:cpp/ranges/dsc_ref_view&action=edit)  
[ ranges::owning_view  ](/w/cpp/ranges/owning_view "cpp/ranges/owning view") (C++20)  |  a [ ` view ` ](/w/cpp/ranges/view "cpp/ranges/view") with unique ownership of some [ ` range ` ](/w/cpp/ranges/range "cpp/ranges/range")   
(class template)  [ [edit]
](https://en.cppreference.com/mwiki/index.php?title=Template:cpp/ranges/dsc_owning_view&action=edit)  
[ ranges::filter_view  views::filter  ](/w/cpp/ranges/filter_view "cpp/ranges/filter view") (C++20)  |  a [ ` view ` ](/w/cpp/ranges/view "cpp/ranges/view") that consists of the elements of a [ ` range ` ](/w/cpp/ranges/range "cpp/ranges/range") that satisfies a predicate   
(class template)  (range adaptor object)  [ [edit]
](https://en.cppreference.com/mwiki/index.php?title=Template:cpp/ranges/dsc_filter_view&action=edit)  
[ ranges::transform_view  views::transform  ](/w/cpp/ranges/transform_view "cpp/ranges/transform view") (C++20)  |  a [ ` view ` ](/w/cpp/ranges/view "cpp/ranges/view") of a sequence that applies a transformation function to each element   
(class template)  (range adaptor object)  [ [edit]
](https://en.cppreference.com/mwiki/index.php?title=Template:cpp/ranges/dsc_transform_view&action=edit)  
[ ranges::take_view  views::take  ](/w/cpp/ranges/take_view "cpp/ranges/take view") (C++20)  |  a [ ` view ` ](/w/cpp/ranges/view "cpp/ranges/view") consisting of the first N elements of another [ ` view ` ](/w/cpp/ranges/view "cpp/ranges/view")   
(class template)  (range adaptor object)  [ [edit]
](https://en.cppreference.com/mwiki/index.php?title=Template:cpp/ranges/dsc_take_view&action=edit)  
[ ranges::take_while_view  views::take_while  ](/w/cpp/ranges/take_while_view "cpp/ranges/take while view") (C++20)  |  a [ ` view ` ](/w/cpp/ranges/view "cpp/ranges/view") consisting of the initial elements of another [ ` view ` ](/w/cpp/ranges/view "cpp/ranges/view") , until the first element on which a predicate returns  false    
(class template)  (range adaptor object)  [ [edit]
](https://en.cppreference.com/mwiki/index.php?title=Template:cpp/ra