logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

std::istreambuf_iterator< _CharT, _Traits > - Provides input iterator semantics for streambufs.

Author

       Generated automatically by Doxygen for libstdc++ from the source code.

                                                    libstdc++  std::istreambuf_iterator<_CharT,_Traits>(3cxx)

Constructor & Destructor Documentation

template<typename_CharT,typename_Traits>constexprstd::istreambuf_iterator<_CharT,_Traits>::istreambuf_iterator()[inline],[constexpr],[noexcept]
       Construct end of input stream iterator.

   template<typename_CharT,typename_Traits>std::istreambuf_iterator<_CharT,_Traits>::istreambuf_iterator(istream_type&__s)[inline],[noexcept]
       Construct start of input stream iterator.

   template<typename_CharT,typename_Traits>std::istreambuf_iterator<_CharT,_Traits>::istreambuf_iterator(streambuf_type*__s)[inline],[noexcept]
       Construct start of streambuf iterator.

Detailed Description

template<typename_CharT,typename_Traits>
       class std::istreambuf_iterator< _CharT, _Traits >"Provides input iterator semantics for streambufs.

Member Function Documentation

template<typename_CharT,typename_Traits>boolstd::istreambuf_iterator<_CharT,_Traits>::equal(constistreambuf_iterator<_CharT,_Traits>&__b)const[inline]
       Return true both iterators are end or both are not end.

   template<typename_CharT,typename_Traits>char_typestd::istreambuf_iterator<_CharT,_Traits>::operator*()const[inline]
       Return the current character pointed to by iterator. This returns streambuf.sgetc(). It cannot be
       assigned. NB: The result of operator*() on an end of stream is undefined.

   template<typename_CharT,typename_Traits>istreambuf_iterator&std::istreambuf_iterator<_CharT,_Traits>::operator++()[inline]
       Advance the iterator. Calls streambuf.sbumpc().

   template<typename_CharT,typename_Traits>istreambuf_iteratorstd::istreambuf_iterator<_CharT,_Traits>::operator++(int)[inline]
       Advance the iterator. Calls streambuf.sbumpc().

Member Typedef Documentation

template<typename_CharT,typename_Traits>typedef_CharTstd::istreambuf_iterator<_CharT,_Traits>::char_type
       Public typedefs.

   typedef_Traits::off_typestd::iterator<input_iterator_tag,_CharT,_Traits::off_type,_CharT*,_CharT>::difference_type[inherited]
       Distance between iterators is represented as this type.

   template<typename_CharT,typename_Traits>typedef_Traits::int_typestd::istreambuf_iterator<_CharT,_Traits>::int_type
       Public typedefs.

   template<typename_CharT,typename_Traits>typedefbasic_istream<_CharT,_Traits>std::istreambuf_iterator<_CharT,_Traits>::istream_type
       Public typedefs.

   typedefinput_iterator_tagstd::iterator<input_iterator_tag,_CharT,_Traits::off_type,_CharT*,_CharT>::iterator_category[inherited]
       One of the tagtypes.

   template<typename_CharT,typename_Traits>usingstd::istreambuf_iterator<_CharT,_Traits>::pointer=void
       Public typedefs.

   typedef_CharTstd::iterator<input_iterator_tag,_CharT,_Traits::off_type,_CharT*,_CharT>::reference[inherited]
       This type represents a reference-to-value_type.

   template<typename_CharT,typename_Traits>typedefbasic_streambuf<_CharT,_Traits>std::istreambuf_iterator<_CharT,_Traits>::streambuf_type
       Public typedefs.

   template<typename_CharT,typename_Traits>typedef_Traitsstd::istreambuf_iterator<_CharT,_Traits>::traits_type
       Public typedefs.

   typedef_CharTstd::iterator<input_iterator_tag,_CharT,_Traits::off_type,_CharT*,_CharT>::value_type[inherited]
       The type 'pointed to' by the iterator.

Name

       std::istreambuf_iterator< _CharT, _Traits > - Provides input iterator semantics for streambufs.

Synopsis

       #include <iterator>

       Inherits std::iterator<input_iterator_tag,_CharT,_Traits::off_type,_CharT*,_CharT>.

   PublicTypestypedef _Traits::off_type difference_type
           Distance between iterators is represented as this type.
       typedefinput_iterator_tagiterator_category
           One of the tagtypes.
       typedef _CharT reference
           This type represents a reference-to-value_type.
       typedef _CharT value_type
           The type 'pointed to' by the iterator.

           usingpointer = void
               Public typedefs.
           typedef _CharT char_type
               Public typedefs.
           typedef _Traits traits_type
               Public typedefs.
           typedef _Traits::int_type int_type
               Public typedefs.
           typedefbasic_streambuf< _CharT, _Traits > streambuf_type
               Public typedefs.
           typedefbasic_istream< _CharT, _Traits > istream_type
               Public typedefs.

   PublicMemberFunctions
       constexpr istreambuf_iterator () noexcept
           Construct end of input stream iterator.
       istreambuf_iterator (const istreambuf_iterator &) noexcept=default
       constexpr istreambuf_iterator (default_sentinel_t) noexcept
       istreambuf_iterator (istream_type &__s) noexcept
           Construct start of input stream iterator.
       istreambuf_iterator (streambuf_type *__s) noexcept
           Construct start of streambuf iterator.
       bool equal (const istreambuf_iterator &__b) const
           Return true both iterators are end or both are not end.
       char_typeoperator* () const
           Return the current character pointed to by iterator. This returns streambuf.sgetc(). It cannot be
           assigned. NB: The result of operator*() on an end of stream is undefined.
       istreambuf_iterator & operator++ ()
           Advance the iterator. Calls streambuf.sbumpc().
       istreambuf_iteratoroperator++ (int)
           Advance the iterator. Calls streambuf.sbumpc().
       istreambuf_iterator & operator= (const istreambuf_iterator &) noexcept=defaultFriends
       template<bool _IsMove, typename_CharT2 > __gnu_cxx::__enable_if< __is_char< _CharT2 >::__value, _CharT2
           * >::__type __copy_move_a2 (istreambuf_iterator< _CharT2 >, istreambuf_iterator< _CharT2 >, _CharT2
           *)
       template<typename_CharT2 , typename _Size > __gnu_cxx::__enable_if< __is_char< _CharT2 >::__value,
           _CharT2 * >::__type __copy_n_a (istreambuf_iterator< _CharT2 >, _Size, _CharT2 *, bool)
       template<typename_CharT2 , typename_Distance > __gnu_cxx::__enable_if< __is_char< _CharT2 >::__value,
           void >::__type advance (istreambuf_iterator< _CharT2 > &, _Distance)
       template<typename_CharT2 > __gnu_cxx::__enable_if< __is_char< _CharT2 >::__value, ostreambuf_iterator<
           _CharT2 > >::__type copy (istreambuf_iterator< _CharT2 >, istreambuf_iterator< _CharT2 >,
           ostreambuf_iterator< _CharT2 >)
       template<typename_CharT2 > __gnu_cxx::__enable_if< __is_char< _CharT2 >::__value, istreambuf_iterator<
           _CharT2 > >::__type find (istreambuf_iterator< _CharT2 >, istreambuf_iterator< _CharT2 >, const
           _CharT2 &)
       bool operator== (const istreambuf_iterator &__i, default_sentinel_t)

See Also