Vcsn  2.3a
Be Rational
vcsn::detail::safe_filtered< Range, Filter > Struct Template Reference

#include <filter.hh>

Collaboration diagram for vcsn::detail::safe_filtered< Range, Filter >:

Public Types

using value_type = typename Range::value_type
 
using difference_type = std::ptrdiff_t
 
using filtered_t = boost::filtered_range< Filter, Range >
 
using iterator = typename filtered_t::iterator
 
using const_iterator = typename filtered_t::const_iterator
 

Public Member Functions

 safe_filtered (Range r, Filter f)
 
const_iterator begin () const
 
const_iterator end () const
 
bool empty () const
 Whether filters to nothing. More...
 
size_t size () const
 Number of elements in the filtered range. More...
 

Public Attributes

Range range_
 
filtered_t filtered_
 

Detailed Description

template<typename Range, typename Filter>
struct vcsn::detail::safe_filtered< Range, Filter >

Definition at line 11 of file filter.hh.

Member Typedef Documentation

template<typename Range, typename Filter>
using vcsn::detail::safe_filtered< Range, Filter >::const_iterator = typename filtered_t::const_iterator

Definition at line 23 of file filter.hh.

template<typename Range, typename Filter>
using vcsn::detail::safe_filtered< Range, Filter >::difference_type = std::ptrdiff_t

Definition at line 19 of file filter.hh.

template<typename Range, typename Filter>
using vcsn::detail::safe_filtered< Range, Filter >::filtered_t = boost::filtered_range<Filter, Range>

Definition at line 20 of file filter.hh.

template<typename Range, typename Filter>
using vcsn::detail::safe_filtered< Range, Filter >::iterator = typename filtered_t::iterator

Definition at line 22 of file filter.hh.

template<typename Range, typename Filter>
using vcsn::detail::safe_filtered< Range, Filter >::value_type = typename Range::value_type

Definition at line 18 of file filter.hh.

Constructor & Destructor Documentation

template<typename Range, typename Filter>
vcsn::detail::safe_filtered< Range, Filter >::safe_filtered ( Range  r,
Filter  f 
)
inline

Definition at line 13 of file filter.hh.

Member Function Documentation

template<typename Range, typename Filter>
const_iterator vcsn::detail::safe_filtered< Range, Filter >::begin ( ) const
inline

Definition at line 25 of file filter.hh.

References vcsn::detail::safe_filtered< Range, Filter >::filtered_.

template<typename Range, typename Filter>
bool vcsn::detail::safe_filtered< Range, Filter >::empty ( ) const
inline

Whether filters to nothing.

Definition at line 29 of file filter.hh.

References vcsn::detail::safe_filtered< Range, Filter >::filtered_.

template<typename Range, typename Filter>
const_iterator vcsn::detail::safe_filtered< Range, Filter >::end ( ) const
inline

Definition at line 26 of file filter.hh.

References vcsn::detail::safe_filtered< Range, Filter >::filtered_.

template<typename Range, typename Filter>
size_t vcsn::detail::safe_filtered< Range, Filter >::size ( ) const
inline

Number of elements in the filtered range.

Definition at line 35 of file filter.hh.

References vcsn::detail::safe_filtered< Range, Filter >::filtered_.

Member Data Documentation

template<typename Range, typename Filter>
Range vcsn::detail::safe_filtered< Range, Filter >::range_

Definition at line 40 of file filter.hh.


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