acme
Foundational cross-platform layer of the ca2 framework
Loading...
Searching...
No Matches
insert_iterator.h
1#pragma once
2
3
4template <class Container>
5class insert_iterator :
6 public iterator<output_iterator_tag,void,void,void,void>
7{
8protected:
9 Container* container;
10 typename Container::iterator iter;
11
12public:
13 typedef Container container_type;
14 explicit insert_iterator (Container& x, typename Container::iterator i)
15 : container(&x), iter(i) {}
16 insert_iterator<Container>& operator= (typename Container::const_reference value)
17 { iter=container->insert(iter,value); ++iter; return *this; }
18 insert_iterator<Container>& operator* ()
19 { return *this; }
20 insert_iterator<Container>& operator ++ ()
21 { return *this; }
22 insert_iterator<Container> operator ++ (::i32)
23 { return *this; }
24};
Definition _initial_concepts.h:951
Definition std_iterator.h:49