103 payload = it->
next();
105 payload = payload_type::withoutValue();
135 return lhs.payload.isInvalid() && rhs.
payload.isInvalid();
147 return !(lhs == rhs);
Abstract base class for stream iterators defining the required behavior.
virtual payload_type next()=0
Retrieve the next iterator payload.
StreamIteratorPayload< T > payload_type
Type alias for the payload used.
Global namespace of the SCL.
payload_type operator*() const
Dereference operator.
value_type * pointer
Pointer type for the value type.
value_type & reference
Reference type for the value type.
StlAdapter(iterator_type *sit=nullptr)
Construct an adapter from an iterator.
typename iterator_type::payload_type payload_type
The type of stream iterator payload.
StlAdapter & operator++()
Pre-increment operator.
iterator_type * it
A pointer to the iterator handled by this adapter.
std::forward_iterator_tag iterator_category
The category of this iterator type.
An adapter for STL-like iterators from stream iterators.
bool operator!=(const StlAdapter &rhs) const
Difference operator.
StlAdapter operator++(int)
Post-increment operator.
bool operator==(const StlAdapter &rhs) const
Equality operator.
std::ptrdiff_t difference_type
The type of the difference in size between iterators.
payload_type payload
The current payload.
virtual bool hasNext() const =0
Determines whether or not this iterator can produce another value payload.
payload_type value_type
The type of value provided by the iterators.
StlAdapter(iterator_type *sit, payload_type payload)
Construt an adapter from an iterator and a specific payload.