mirror of
				https://github.com/boostorg/iterator.git
				synced 2025-10-31 16:31:39 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			74 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			ReStructuredText
		
	
	
	
	
	
			
		
		
	
	
			74 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			ReStructuredText
		
	
	
	
	
	
| .. 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``
 |