| Front Page / Sequences / Views / filter_view | 
template<
      typename Sequence
    , typename Pred
    >
struct filter_view
{
    // unspecified
    // ...
};
A view into a subset of Sequence's elements satisfying the predicate Pred.
#include <boost/mpl/filter_view.hpp>
| Parameter | Requirement | Description | 
|---|---|---|
| Sequence | Forward Sequence | A sequence to wrap. | 
| Pred | Unary Lambda Expression | A filtering predicate. | 
Semantics of an expression is defined only where it differs from, or is not defined in Forward Sequence.
In the following table, v is an instance of filter_view, s is an arbitrary Forward Sequence, pred is an unary Lambda Expression.
| Expression | Semantics | 
|---|---|
| filter_view<s,pred> filter_view<s,pred>::type | A lazy Forward Sequence sequence of all the elements in the range [begin<s>::type, end<s>::type) that satisfy the predicate pred. | 
| size<v>::type | The size of v; size<v>::value == count_if<s,pred>::value; linear complexity; see Forward Sequence. | 
Find the largest floating type in a sequence.
typedef vector<int,float,long,float,char[50],long double,char> types; typedef max_element< transform_view< filter_view< types,boost::is_float<_> >, size_of<_> > >::type iter; BOOST_MPL_ASSERT(( is_same< deref<iter::base>::type, long double > ));