Scroll to navigation

std::front_insert_iterator< _Container >(3cxx) std::front_insert_iterator< _Container >(3cxx)

NAME

std::front_insert_iterator< _Container > -

SYNOPSIS

Inherits std::iterator< output_iterator_tag, void, void, void, void >.

Public Types


typedef _Container container_type
typedef void difference_type
typedef output_iterator_tag iterator_category
typedef void pointer
typedef void reference
typedef void value_type

Public Member Functions


front_insert_iterator (_Container &__x)
front_insert_iterator & operator* ()
front_insert_iterator & operator++ ()
front_insert_iterator operator++ (int)
front_insert_iterator & operator= (const typename _Container::value_type &__value)
front_insert_iterator & operator= (typename _Container::value_type &&__value)

Protected Attributes


_Container * container

Detailed Description

template<typename _Container>

class std::front_insert_iterator< _Container >" Turns assignment into insertion.

These are output iterators, constructed from a container-of-T. Assigning a T to the iterator prepends it to the container using push_front.

Tip: Using the front_inserter function to create these iterators can save typing.

Definition at line 513 of file stl_iterator.h.

Member Typedef Documentation

template<typename _Container > typedef _Container std::front_insert_iterator< _Container >::container_type

A nested typedef for the type of whatever container you used.

Definition at line 521 of file stl_iterator.h.

typedef void std::iterator< output_iterator_tag , void , void , void , void >::difference_type [inherited]

Distance between iterators is represented as this type.

Definition at line 125 of file stl_iterator_base_types.h.

typedef output_iterator_tag std::iterator< output_iterator_tag , void , void , void , void >::iterator_category [inherited]

One of the tag types.

Definition at line 121 of file stl_iterator_base_types.h.

typedef void std::iterator< output_iterator_tag , void , void , void , void >::pointer [inherited]

This type represents a pointer-to-value_type.

Definition at line 127 of file stl_iterator_base_types.h.

typedef void std::iterator< output_iterator_tag , void , void , void , void >::reference [inherited]

This type represents a reference-to-value_type.

Definition at line 129 of file stl_iterator_base_types.h.

typedef void std::iterator< output_iterator_tag , void , void , void , void >::value_type [inherited]

The type 'pointed to' by the iterator.

Definition at line 123 of file stl_iterator_base_types.h.

Constructor & Destructor Documentation

template<typename _Container > std::front_insert_iterator< _Container >::front_insert_iterator (_Container & __x) [inline], [explicit]

The only way to create this iterator is with a container.

Definition at line 524 of file stl_iterator.h.

Member Function Documentation

template<typename _Container > front_insert_iterator& std::front_insert_iterator< _Container >::operator* () [inline]

Simply returns *this.

Definition at line 562 of file stl_iterator.h.

template<typename _Container > front_insert_iterator& std::front_insert_iterator< _Container >::operator++ () [inline]

Simply returns *this. (This iterator does not move.)

Definition at line 567 of file stl_iterator.h.

template<typename _Container > front_insert_iterator std::front_insert_iterator< _Container >::operator++ (int) [inline]

Simply returns *this. (This iterator does not move.)

Definition at line 572 of file stl_iterator.h.

template<typename _Container > front_insert_iterator& std::front_insert_iterator< _Container >::operator= (const typename _Container::value_type & __value) [inline]

Parameters:

__value An instance of whatever type container_type::const_reference is; presumably a reference-to-const T for container<T>.

Returns:

This iterator, for chained operations.

This kind of iterator doesn't really have a position in the container (you can think of the position as being permanently at the front, if you like). Assigning a value to the iterator will always prepend the value to the front of the container.

Definition at line 546 of file stl_iterator.h.

Author

Generated automatically by Doxygen for libstdc++ from the source code.

Fri Dec 2 2016 libstdc++