diff options
Diffstat (limited to 'boost/function_output_iterator.hpp')
-rw-r--r-- | boost/function_output_iterator.hpp | 56 |
1 files changed, 4 insertions, 52 deletions
diff --git a/boost/function_output_iterator.hpp b/boost/function_output_iterator.hpp index dd8c44d394..15dbcb9f54 100644 --- a/boost/function_output_iterator.hpp +++ b/boost/function_output_iterator.hpp @@ -1,62 +1,14 @@ -// (C) Copyright Jeremy Siek 2001. +// (C) Copyright Andrey Semashev 2017. // 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) -// Revision History: - -// 27 Feb 2001 Jeremy Siek -// Initial checkin. - #ifndef BOOST_FUNCTION_OUTPUT_ITERATOR_HPP #define BOOST_FUNCTION_OUTPUT_ITERATOR_HPP -#include <iterator> - -namespace boost { -namespace iterators { - - template <class UnaryFunction> - class function_output_iterator { - typedef function_output_iterator self; - 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) - : m_f(f) {} - - struct output_proxy { - output_proxy(UnaryFunction& f) : m_f(f) { } - template <class T> output_proxy& operator=(const T& value) { - m_f(value); - return *this; - } - UnaryFunction& m_f; - }; - output_proxy operator*() { return output_proxy(m_f); } - self& operator++() { return *this; } - self& operator++(int) { return *this; } - private: - UnaryFunction m_f; - }; - - template <class UnaryFunction> - inline function_output_iterator<UnaryFunction> - make_function_output_iterator(const UnaryFunction& f = UnaryFunction()) { - return function_output_iterator<UnaryFunction>(f); - } - -} // namespace iterators - -using iterators::function_output_iterator; -using iterators::make_function_output_iterator; +// This is a deprecated header left for backward compatibility. +// Use boost/iterator/function_output_iterator.hpp instead. -} // namespace boost +#include <boost/iterator/function_output_iterator.hpp> #endif // BOOST_FUNCTION_OUTPUT_ITERATOR_HPP |