std::istreambuf_iterator<CharT,Traits>::istreambuf_iterator

From cppreference.com
 
 
Iterator library
Iterator concepts
Iterator primitives
Algorithm concepts and utilities
Indirect callable concepts
Common algorithm requirements
Utilities
(C++20)
Iterator adaptors
Stream iterators
Iterator customization points
Iterator operations
(C++11)
(C++11)
Range access
(C++11)(C++14)
(C++11)(C++14)
(C++17)(C++20)
(C++14)(C++14)
(C++14)(C++14)
(C++17)
(C++17)
 
 
(1)
istreambuf_iterator() throw();
(until C++11)
constexpr istreambuf_iterator() noexcept;
(since C++11)
constexpr istreambuf_iterator( std::default_sentinel_t ) noexcept;
(2) (since C++20)
(3)
istreambuf_iterator( std::basic_istream<CharT,Traits>& is ) throw();
(until C++11)
istreambuf_iterator( std::basic_istream<CharT,Traits>& is ) noexcept;
(since C++11)
(4)
istreambuf_iterator( std::basic_streambuf<CharT,Traits>* s ) throw();
(until C++11)
istreambuf_iterator( std::basic_streambuf<CharT,Traits>* s ) noexcept;
(since C++11)
(5)
istreambuf_iterator( const /* proxy */& p ) throw();
(until C++11)
istreambuf_iterator( const /* proxy */& p ) noexcept;
(since C++11)
istreambuf_iterator( const istreambuf_iterator& ) noexcept = default;
(6) (since C++11)
1-2) Constructs an end-of-stream iterator.
3) Initializes the iterator and stores the value of is.rdbuf() in a data member. If is.rdbuf() is null, then end-of-stream iterator is constructed.
4) Initializes the iterator and stores the value of s in a data member. If s is null, then end-of-stream iterator is constructed.
5) Effectively call (3) with the streambuf_type* pointer p holds.
6) The copy constructor is trivial and explicitly defaulted.

The copy constructor is effectively implicitly declared and not guaranteed to be trivial.

(until C++11)

Parameters

is - stream to obtain the stream buffer from
s - stream buffer to initialize the iterator with
p - object of the implementation-defined proxy type