iterator/doc/function_output_iterator_ref.rst
Jeremy Siek 2071230859 split constructor into two
[SVN r21863]
2004-01-21 16:26:04 +00:00

63 lines
1.5 KiB
ReStructuredText

::
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``