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, 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< FilteredRange< R, Pred > >
const FilteredRange< R, Pred > & cmpSelf () const
 
bool operator!= (const FilteredRange< R, Pred > &o) const
 
bool operator== (const FilteredRange< R, Pred > &o) const
 
bool operator< (const FilteredRange< R, Pred > &o) const
 
bool operator> (const FilteredRange< R, Pred > &o) const
 
bool operator>= (const FilteredRange< R, Pred > &o) const
 

Protected Member Functions

const Pred & pred () const
 

Protected Attributes

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

Member Typedef Documentation

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

Constructor & Destructor Documentation

template<typename R, typename Pred>
wibble::FilteredRange< R, Pred >::FilteredRange ( const R &  r,
Pred  p 
)
inline

Member Function Documentation

template<typename R, typename Pred>
void wibble::FilteredRange< R, Pred >::find ( ) const
inline
template<typename R, typename Pred>
ElementType wibble::FilteredRange< R, Pred >::head ( ) const
inline
template<typename R, typename Pred>
bool wibble::FilteredRange< R, Pred >::operator<= ( const FilteredRange< R, Pred > &  f) const
inline
template<typename R, typename Pred>
const Pred& wibble::FilteredRange< R, Pred >::pred ( ) const
inlineprotected
template<typename R, typename Pred>
void wibble::FilteredRange< R, Pred >::removeFirst ( )
inline
template<typename R, typename Pred>
void wibble::FilteredRange< R, Pred >::setToEmpty ( )
inline

Member Data Documentation

template<typename R, typename Pred>
R::iterator wibble::FilteredRange< R, Pred >::m_current
mutableprotected
template<typename R, typename Pred>
Pred wibble::FilteredRange< R, Pred >::m_pred
protected
template<typename R, typename Pred>
R wibble::FilteredRange< R, Pred >::m_range
protected
template<typename R, typename Pred>
bool wibble::FilteredRange< R, Pred >::m_valid
mutableprotected

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