Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
std::ranges...ew::iterator(3) C++ Standard Libarystd::ranges...ew::iterator(3)

NAME
       std::ranges::basic_istream_view::iterator       -      std::ranges::ba-
       sic_istream_view::iterator

Synopsis
	  struct /*iterator*/;	(since C++20)
				(exposition only*)

	  The return type of basic_istream_view::begin.

	  /*iterator*/ is an input_iterator, but does  not  satisfy  LegacyIn-
       putIterator, and
	  thus does not	work with pre-C++20 algorithms.

Member types
	  Member type		   Definition
	  iterator_concept (C++20) std::input_iterator_tag
	  difference_type (C++20)  std::ptrdiff_t
	  value_type (C++20)	   Val

Member functions
	  constructor	constructs an iterator
	  (C++20)	(public	member function)
	  operator=	 the copy assignment operator is deleted; /*iterator*/
       is move-only
	  (C++20)	(public	member function)
	  operator++	advances the iterator
	  (C++20)	(public	member function)
	  operator*	returns	the current element
	  (C++20)	(public	member function)

       std::ranges::basic_istream_view::iterator::iterator

	  constexpr explicit /*iterator*/( basic_istream_view& parent  );  (1)
       (since C++20)
	  /*iterator*/(	 const	/*iterator*/& )	= delete;		   (2)
       (since C++20)
	  /*iterator*/(	/*iterator*/&& ) =  default;			   (3)
       (since C++20)

	  1) Constructs	an iterator from the parent basic_istream_view.
	  2) The copy constructor is deleted. The iterator is not copyable.
	  3) The move constructor is defaulted.	The iterator is	movable.

       std::ranges::basic_istream_view::iterator::operator=

	  /*iterator*/&	 operator=( const /*iterator*/&	) = delete; (1)	(since
       C++20)
	  /*iterator*/&	operator=( /*iterator*/&& ) = default;	   (2)	(since
       C++20)

	  1)  The  copy	 assignment  operator  is deleted. The iterator	is not
       copyable.
	  2) The move assignment operator is defaulted.	The iterator  is  mov-
       able.

       std::ranges::basic_istream_view::iterator::operator++

	  /*iterator*/&	operator++(); (1) (since C++20)
	  void operator++(int);	      (2) (since C++20)

	  Reads	a value	from the underlying stream and stores it into the par-
       ent
	  basic_istream_view.

Return value
	  1) *this
	  2) (none)

       std::ranges::basic_istream_view::iterator::operator*

	  Val& operator*() const;  (since C++20)

	  Returns a reference to the stored value.

Non-member functions
	  operator== compares with a std::default_sentinel_t
	  (C++20)    (public member function)

       operator==(std::ranges::basic_istream_view::iterator, std::default_sen-
       tinel)

	  friend      bool	operator==(	const	  /*iterator*/&	    x,
       (since C++20)
	  std::default_sentinel_t );

	  Compares an iterator with std::default_sentinel_t.

	  Returns true if *this	does not have a	parent basic_istream_view,  or
       if an error has
	  occurred on the underlying stream.

	  This	function  is  not visible to ordinary unqualified or qualified
       lookup, and can
	  only be found	by argument-dependent lookup when
	  std::ranges::basic_istream_view::iterator is an associated class  of
       the arguments.

	  Defect reports

	  The following	behavior-changing defect reports were applied retroac-
       tively to
	  previously published C++ standards.

	    DR	      Applied	  to		   Behavior    as    published
       Correct behavior
			     default constructor was provided  as  C++20   re-
       moved along with	the
	  P2325R3  C++20       iterators				   re-
       quirement
			     must be default_initializable

http://cppreference.com		  2024.06.10	 std::ranges...ew::iterator(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=std::ranges::basic_istream_view::iterator&sektion=3&manpath=FreeBSD+Ports+15.1.quarterly>

home | help