wibble::FilteredRange< R, Pred > Struct Template Reference

`#include <range.h>`

Inheritance diagram for wibble::FilteredRange< R, Pred >:
[legend]
Collaboration diagram for wibble::FilteredRange< R, Pred >:
[legend]

## Public Types

typedef R::ElementType | ElementType
Public Types inherited from wibble::RangeMixin< R::ElementType, FilteredRange< R, Pred > >
typedef FilteredRange< R, Pred > | RangeImplementation
typedef R::ElementType | ElementType
typedef IteratorMixin< R::ElementType, FilteredRange< R, Pred > > | Base
typedef RangeIterator< FilteredRange< R, Pred > > | iterator

## Public Member Functions

| FilteredRange (const R &r, Pred p)
void | find () const
void | removeFirst ()
ElementType | head () const
void | setToEmpty ()
bool | operator<= (const FilteredRange &f) const
Public Member Functions inherited from wibble::RangeMixin< R::ElementType, FilteredRange< R, Pred > >
const FilteredRange< R, Pred > & | self () const
iterator | begin () const
iterator | end () const
R::ElementType | head ()
FilteredRange< R, Pred > | tail () const
void | output (Consumer< R::ElementType > t) const
bool | empty () const
| ~RangeMixin ()
Public Member Functions inherited from wibble::mixin::Comparable< Self >
const Self & | cmpSelf () const
bool | operator!= (const Self &o) const
bool | operator== (const Self &o) const
bool | operator< (const Self &o) const
bool | operator> (const Self &o) const
bool | operator>= (const Self &o) const

## Protected Member Functions

const Pred & | pred () const

## Protected Attributes

R | m_range
R::iterator | m_current
Pred | m_pred
bool | m_valid:1

## Member Typedef Documentation

## ElementType

template<typename R , typename Pred >

typedef R::ElementType wibble::FilteredRange< R, Pred >::ElementType

## Constructor & Destructor Documentation

## FilteredRange()

template<typename R , typename Pred >

wibble::FilteredRange< R, Pred >::FilteredRange | ( | const R & | r,
|  | Pred | p
| ) |  |

inline

## Member Function Documentation

## find()

template<typename R , typename Pred >

void wibble::FilteredRange< R, Pred >::find | ( |  | ) | const

inline

References wibble::FilteredRange< R, Pred >::m_current, wibble::FilteredRange< R, Pred >::m_range, wibble::FilteredRange< R, Pred >::m_valid, and wibble::FilteredRange< R, Pred >::pred().

Referenced by wibble::FilteredRange< R, Pred >::head(), wibble::FilteredRange< R, Pred >::operator<=(), and wibble::FilteredRange< R, Pred >::removeFirst().

## head()

template<typename R , typename Pred >

ElementType wibble::FilteredRange< R, Pred >::head | ( |  | ) | const

inline

References wibble::FilteredRange< R, Pred >::find(), and wibble::FilteredRange< R, Pred >::m_current.

## operator<=()

template<typename R , typename Pred >

bool wibble::FilteredRange< R, Pred >::operator<= | ( | const FilteredRange< R, Pred > & | f | ) | const

inline

References wibble::FilteredRange< R, Pred >::find(), and wibble::FilteredRange< R, Pred >::m_current.

## pred()

template<typename R , typename Pred >

const Pred& wibble::FilteredRange< R, Pred >::pred | ( |  | ) | const

inline protected

References wibble::FilteredRange< R, Pred >::m_pred.

Referenced by wibble::FilteredRange< R, Pred >::find().

## removeFirst()

template<typename R , typename Pred >

void wibble::FilteredRange< R, Pred >::removeFirst | ( |  | ) |

inline

References wibble::FilteredRange< R, Pred >::find(), wibble::FilteredRange< R, Pred >::m_current, and wibble::FilteredRange< R, Pred >::m_valid.

## setToEmpty()

template<typename R , typename Pred >

void wibble::FilteredRange< R, Pred >::setToEmpty | ( |  | ) |

inline

References wibble::FilteredRange< R, Pred >::m_current, and wibble::FilteredRange< R, Pred >::m_range.

## Member Data Documentation

## m_current

template<typename R , typename Pred >

R::iterator wibble::FilteredRange< R, Pred >::m_current

mutable protected

Referenced by wibble::FilteredRange< R, Pred >::find(), wibble::FilteredRange< R, Pred >::head(), wibble::FilteredRange< R, Pred >::operator<=(), wibble::FilteredRange< R, Pred >::removeFirst(), and wibble::FilteredRange< R, Pred >::setToEmpty().

## m_pred

template<typename R , typename Pred >

Pred wibble::FilteredRange< R, Pred >::m_pred

protected

Referenced by wibble::FilteredRange< R, Pred >::pred().

## m_range

template<typename R , typename Pred >

R wibble::FilteredRange< R, Pred >::m_range

protected

Referenced by wibble::FilteredRange< R, Pred >::find(), and wibble::FilteredRange< R, Pred >::setToEmpty().

## m_valid

template<typename R , typename Pred >

bool wibble::FilteredRange< R, Pred >::m_valid

mutable protected

Referenced by wibble::FilteredRange< R, Pred >::find(), and wibble::FilteredRange< R, Pred >::removeFirst().

The documentation for this struct was generated from the following file:

- range.h