List of all members.
Detailed Description
template<class FUNCTOR, class ITERATOR>
class bdlb::TransformIterator< FUNCTOR, ITERATOR >
The transform iterator class itself. Its job is to hold a functor and an iterator, pass through all iterator-related operations to the held iterator, and on dereference, call the functor on the result of dereferencing the iterator and return the result of the call instead.
See Component bdlb_transformiterator
Member Typedef Documentation
template<class FUNCTOR, class ITERATOR>
template<class FUNCTOR, class ITERATOR>
template<class FUNCTOR, class ITERATOR>
template<class FUNCTOR, class ITERATOR>
template<class FUNCTOR, class ITERATOR>
Constructor & Destructor Documentation
template<class FUNCTOR, class ITERATOR>
Create a TransformIterator
object whose underlying iterator and functor have default values. Optionally specify a basicAllocator
used to supply memory. If basicAllocator
is 0, the currently installed default allocator is used.
template<class FUNCTOR, class ITERATOR>
Create a TransformIterator
object using the specified iterator
and functor
. Optionally specify a basicAllocator
used to supply memory. If basicAllocator
is 0, the currently installed default allocator is used.
template<class FUNCTOR, class ITERATOR>
Create a TransformIterator
object having the same value as the specified original
object. Optionally specify a basicAllocator
used to supply memory. If basicAllocator
is 0, the currently installed default allocator is used.
template<class FUNCTOR, class ITERATOR>
Member Function Documentation
template<class FUNCTOR, class ITERATOR>
template<class FUNCTOR, class ITERATOR>
Assign to this object the value of the specified rhs
object, and return a reference providing modifiable access to this object.
template<class FUNCTOR, class ITERATOR>
Advance the underlying iterator of this object by the specified (signed) offset
, and return a reference providing modifiable access to this object. The behavior is undefined if so advancing the underlying iterator is undefined.
template<class FUNCTOR, class ITERATOR>
Regress the underlying iterator of this object by the specified (signed) offset
, and return a reference providing modifiable access to this object. The behavior is undefined if so regressing the underlying iterator is undefined.
template<class FUNCTOR, class ITERATOR>
Increment the underlying iterator of this object, and return a reference providing modifiable access to this object. The behavior is undefined if incrementing the underlying iterator is undefined.
template<class FUNCTOR, class ITERATOR>
Decrement the underlying iterator of this object, and return a reference providing modifiable access to this object. The behavior is undefined if decrementing the underlying iterator is undefined.
template<class FUNCTOR, class ITERATOR>
Return the result of applying the functor of this object to the result of dereferencing the underlying iterator. The behavior is undefined if dereferencing the underlying iterator is undefined. Note that the behavior of this method is equivalent to:
template<class FUNCTOR, class ITERATOR>
Return the address of the result of applying the functor of this object to the result of dereferencing the underlying iterator. The behavior is undefined if dereferencing the underlying iterator is undefined. Note that the behavior of this method is equivalent to:
Also note that the functor must return a reference type for this method to be used.
template<class FUNCTOR, class ITERATOR>
Return the result of applying the functor of this object to the result of dereferencing the underlying iterator advanced by the specified (signed) offset
. The behavior is undefined if so advancing or dereferencing the underlying iterator is undefined. Note that the behavior of this method is equivalent to:
template<class FUNCTOR, class ITERATOR>
Return a reference providing modifiable access to the functor of this object.
template<class FUNCTOR, class ITERATOR>
Return a reference providing modifiable access to the underlying iterator of this object.
template<class FUNCTOR, class ITERATOR>
Efficiently exchange the value of this object with the value of the specified other
object by applying swap
to each of the functor and underlying iterator fields of the two objects.
template<class FUNCTOR, class ITERATOR>
Return the result of applying the functor of this object to the result of dereferencing the underlying iterator. The behavior is undefined if dereferencing the underlying iterator is undefined. Note that the behavior of this method is equivalent to:
template<class FUNCTOR, class ITERATOR>
Return the address of the result of applying the functor of this object to the result of dereferencing the underlying iterator. The behavior is undefined if dereferencing the underlying iterator is undefined. Note that the behavior of this method is equivalent to:
Also note that the functor must return a reference type for this method to be used.
template<class FUNCTOR, class ITERATOR>
Return the result of applying the functor of this object to the result of dereferencing the underlying iterator advanced by the specified (signed) offset
. The behavior is undefined if so advancing or dereferencing the underlying iterator is undefined. Note that the behavior of this method is equivalent to:
template<class FUNCTOR, class ITERATOR>
Return a const
reference to the functor of this object.
template<class FUNCTOR, class ITERATOR>
Return a const
reference to the underlying iterator of this object.
The documentation for this class was generated from the following file: