Template Class FilteredIterator

Class Documentation

template<typename PREDICATE, typename TYPE>
class FilteredIterator

Simple wrapper to boost::filter_iterator.

Public Types

typedef PREDICATE predicate
typedef TYPE iterator_type
typedef boost::filter_iterator<PREDICATE, TYPE> iterator_t
typedef iterator_t::value_type value_type

Public Functions

FilteredIterator()

default constructor

FilteredIterator(predicate p, iterator_type begin, iterator_type end)

construct by passing in the predicate and the range over which we iterate

FilteredIterator(iterator_type begin, iterator_type end)

construct by passing in the predicate and the range over which we iterate

FilteredIterator(const FilteredIterator &o)

copy cotor

inline virtual ~FilteredIterator()

Destructor.

FilteredIterator &operator++()

op++ simply increment the boost::filter_iterator

FilteredIterator operator++(int)

++op simply increment the boost::filter_iterator

inline iterator_t get_iterator()

Return the underlying boost iterator.

inline value_type operator*() const

Dereference the iterator.

Friends

template<typename Pred, typename Type>
friend bool operator==(const FilteredIterator<Pred, Type> &lhs, const FilteredIterator<Pred, Type> &rhs)