wibble 1.1
Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
wibble::FilteredRange< R, Pred > Struct Template Reference

#include <range.h>

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

Public Types

typedef R::ElementType ElementType
 
- Public Types inherited from wibble::RangeMixin< R::ElementType, FilteredRange< R, Pred > >
typedef FilteredRange< R, PredRangeImplementation
 
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, Predtail () const
 
void output (Consumer< R::ElementType > t) const
 
bool empty () const
 
 ~RangeMixin ()
 
- Public Member Functions inherited from wibble::mixin::Comparable< Self >
const SelfcmpSelf () 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 Predpred () 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

◆ head()

template<typename R , typename Pred >
ElementType wibble::FilteredRange< R, Pred >::head ( ) const
inline

◆ operator<=()

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

◆ pred()

template<typename R , typename Pred >
const Pred & wibble::FilteredRange< R, Pred >::pred ( ) const
inlineprotected

◆ removeFirst()

template<typename R , typename Pred >
void wibble::FilteredRange< R, Pred >::removeFirst ( )
inline

◆ setToEmpty()

template<typename R , typename Pred >
void wibble::FilteredRange< R, Pred >::setToEmpty ( )
inline

Member Data Documentation

◆ m_current

template<typename R , typename Pred >
R::iterator wibble::FilteredRange< R, Pred >::m_current
mutableprotected

◆ m_pred

template<typename R , typename Pred >
Pred wibble::FilteredRange< R, Pred >::m_pred
protected

◆ m_range

template<typename R , typename Pred >
R wibble::FilteredRange< R, Pred >::m_range
protected

◆ m_valid

template<typename R , typename Pred >
bool wibble::FilteredRange< R, Pred >::m_valid
mutableprotected

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