12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273 |
- .. Copyright David Abrahams 2006. Distributed under the Boost
- .. Software License, Version 1.0. (See accompanying
- .. file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
- Header
- ......
- ::
-
- #include <boost/function_output_iterator.hpp>
- ::
- template <class UnaryFunction>
- class function_output_iterator {
- public:
- typedef std::output_iterator_tag iterator_category;
- typedef void value_type;
- typedef void difference_type;
- typedef void pointer;
- typedef void reference;
- explicit function_output_iterator();
- explicit function_output_iterator(const UnaryFunction& f);
- /* see below */ operator*();
- function_output_iterator& operator++();
- function_output_iterator& operator++(int);
- private:
- UnaryFunction m_f; // exposition only
- };
- ``function_output_iterator`` requirements
- .........................................
- ``UnaryFunction`` must be Assignable and Copy Constructible.
- ``function_output_iterator`` models
- ...................................
- ``function_output_iterator`` is a model of the Writable and
- Incrementable Iterator concepts.
- ``function_output_iterator`` operations
- .......................................
- ``explicit function_output_iterator(const UnaryFunction& f = UnaryFunction());``
- :Effects: Constructs an instance of ``function_output_iterator``
- with ``m_f`` constructed from ``f``.
- ``operator*();``
- :Returns: An object ``r`` of unspecified type such that ``r = t``
- is equivalent to ``m_f(t)`` for all ``t``.
-
- ``function_output_iterator& operator++();``
- :Returns: ``*this``
- ``function_output_iterator& operator++(int);``
- :Returns: ``*this``
|