LLVM: llvm::early_inc_iterator_impl< WrappedIteratorT > Class Template Reference (original) (raw)

A pseudo-iterator adaptor that is designed to implement "early increment" style loops. More...

template<typename WrappedIteratorT>
class llvm::early_inc_iterator_impl< WrappedIteratorT >

A pseudo-iterator adaptor that is designed to implement "early increment" style loops.

This is not a normal iterator and should almost never be used directly. It is intended primarily to be used with range based for loops and some range algorithms.

The iterator isn't quite an OutputIterator or an InputIterator but somewhere between them. The constraints of these iterators are:

This means you can only dereference the iterator once, and you can only increment it once between dereferences.

Definition at line 576 of file STLExtras.h.