OTL 4.0, STL-compliant OTL input iterator

STL-compliant OTL input iterator

otl_input_iterator<T, Distance>

Category: iterators Component type: type

Description

otl_input_iterator is an Input Iterator that performs input of objects of type T from a particular otl_stream. When end of stream is reached, the otl_input_iterator takes on a special end of stream value, which is a past-the-end iterator. Note that all of the restrictions of an Input Iterator must be obeyed, including the restrictions on the ordering of operator* and operator++ operations.

Definition

Defined in the OTL header file.

Template parameters

Parameter  Description  Default 
T The otl_input_iterator's value type. Operator* returns a const T&  
Distance The otl_input_iterator's distance type.  ptrdiff_t

Model of

Input Iterator

Type requirements

The value type T must be a type such that s >> T is a valid expression.

The value type T must be a model of Default Constructible.

The distance type must, as described in the Input Iterator requirements, be a signed integral type.

Public base classes

None.

Members

Member  Where defined  Description 
otl_input_iterator() otl_input_iterator See below. 
otl_input_iterator(otl_stream&) otl_input_iterator See below. 
otl_input_iterator(const otl_input_iterator&) Trivial Iterator The copy constructor 
otl_input_iterator& operator=(const otl_stream&) Trivial Iterator The assignment operator 
const T& operator*() const Input Iterator Returns the next object in the stream. 
otl_input_iterator& operator++() Input Iterator Preincrement. 
otl_input_iterator& operator++(int) Input Iterator Postincrement. 
bool operator==(const otl_input_iterator&, const otl_input_iterator&) Trivial iterator The equality operator. This is a global function, not a member function. 
input_iterator_tag iterator_category(const otl_input_iterator&) iterator tags Returns the iterator's category. 
T* value_type(const otl_input_iterator&) iterator tags Returns the iterator's value type. 
Distance* distance_type(const otl_input_iterator&) iterator tags Returns the iterator's distance type. < 

New members

These members are not defined in the Input Iterator requirements, but are specific to otl_input_iterator.
 
Function  Description 
otl_input_iterator() The default constructor: Constructs an end-of-stream iterator. This is a past-the-end iterator, and it is useful when constructing a "range".
otl_input_iterator(otl_stream& s) Creates an otl_input_iterator that reads values from the OTL stream s. When s reaches end of stream, this iterator will compare equal to an end-of-stream iterator created using the default constructor. 

Notes

See also

otl_output_iterator, Input Iterator, Output Iterator


Contents Go Home

Copyright © 1996, 2007, Sergei Kuchin, email: skuchin@ispwest.com, skuchin@gmail.com

Permission to use, copy, modify and redistribute this document for any purpose is hereby granted without fee, provided that the above copyright notice appear in all copies.