ReactOS 0.4.15-dev-8096-ga0eec98
insert_iterator< _Container > Class Template Reference

#include <_iterator.h>

Inheritance diagram for insert_iterator< _Container >:
Collaboration diagram for insert_iterator< _Container >:

Public Types

typedef _Container container_type
 
typedef output_iterator_tag iterator_category
 
- Public Types inherited from iterator< output_iterator_tag, void, void, void, void >
typedef output_iterator_tag iterator_category
 

Public Member Functions

 insert_iterator (_Container &__x, typename _Container::iterator __i)
 
_Selfoperator= (_Self const &__other)
 
_Selfoperator= (const typename _Container::value_type &__val)
 
_Selfoperator* ()
 
_Selfoperator++ ()
 
_Selfoperator++ (int)
 

Protected Attributes

_Container * container
 
_Container::iterator _M_iter
 

Private Types

typedef insert_iterator< _Container > _Self
 

Detailed Description

template<class _Container>
class insert_iterator< _Container >

Definition at line 220 of file _iterator.h.

Member Typedef Documentation

◆ _Self

template<class _Container >
typedef insert_iterator<_Container> insert_iterator< _Container >::_Self
private

Definition at line 222 of file _iterator.h.

◆ container_type

template<class _Container >
typedef _Container insert_iterator< _Container >::container_type

Definition at line 228 of file _iterator.h.

◆ iterator_category

template<class _Container >
typedef output_iterator_tag insert_iterator< _Container >::iterator_category

Definition at line 229 of file _iterator.h.

Constructor & Destructor Documentation

◆ insert_iterator()

template<class _Container >
insert_iterator< _Container >::insert_iterator ( _Container &  __x,
typename _Container::iterator  __i 
)
inline

Definition at line 230 of file _iterator.h.

231 : container(&__x), _M_iter(__i) {}
_Container * container
Definition: _iterator.h:225
_Container::iterator _M_iter
Definition: _iterator.h:226

Member Function Documentation

◆ operator*()

template<class _Container >
_Self & insert_iterator< _Container >::operator* ( )
inline

Definition at line 243 of file _iterator.h.

243{ return *this; }

◆ operator++() [1/2]

template<class _Container >
_Self & insert_iterator< _Container >::operator++ ( )
inline

Definition at line 244 of file _iterator.h.

244{ return *this; }

◆ operator++() [2/2]

template<class _Container >
_Self & insert_iterator< _Container >::operator++ ( int  )
inline

Definition at line 245 of file _iterator.h.

245{ return *this; }

◆ operator=() [1/2]

template<class _Container >
_Self & insert_iterator< _Container >::operator= ( _Self const __other)
inline

Definition at line 233 of file _iterator.h.

233 {
234 container = __other.container;
235 _M_iter = __other._M_iter;
236 return *this;
237 }

◆ operator=() [2/2]

template<class _Container >
_Self & insert_iterator< _Container >::operator= ( const typename _Container::value_type &  __val)
inline

Definition at line 238 of file _iterator.h.

238 {
239 _M_iter = container->insert(_M_iter, __val);
240 ++_M_iter;
241 return *this;
242 }
_STLP_INLINE_LOOP _InputIter const _Tp & __val
Definition: _algobase.h:656

Member Data Documentation

◆ _M_iter

template<class _Container >
_Container::iterator insert_iterator< _Container >::_M_iter
protected

Definition at line 226 of file _iterator.h.

Referenced by insert_iterator< _Container >::operator=().

◆ container

template<class _Container >
_Container* insert_iterator< _Container >::container
protected

Definition at line 225 of file _iterator.h.

Referenced by insert_iterator< _Container >::operator=().


The documentation for this class was generated from the following file: