remove

| Home | Libraries | People | FAQ | More

##### remove

###### Description

Returns a new sequence, with all the elements of the original sequence, except those of a given type.

###### Synopsis

    template<
        typename T,
        typename Sequence
        >
    typename result_of::remove<Sequence const, T>::type remove(Sequence const& seq);

Table 1.72. Parameters

Parameter | Requirement | Description
--- | --- | ---
`seq` | A model of Forward Sequence | Operation's argument
`T` | Any type | Type to remove

###### Expression Semantics

    remove<T>(seq);

Return type:

- A model of Forward Sequence.
- A model of Associative Sequence if `Sequence` implements the Associative Sequence model.

Semantics: Returns a new sequence, containing all the elements of `seq`, in their original order, except those of type `T`. Equivalent to ``remove_if`<boost::is_same<_,T> >(seq)`.

###### Complexity

Constant. Returns a view which is lazily evaluated.

###### Header

    #include <boost/fusion/algorithm/transformation/remove.hpp>
    #include <boost/fusion/include/remove.hpp>

###### Example

    const vector<int,double> vec(1,2.0);
    assert(remove<double>(vec) == make_vector(1));