libbmb
Modern implementation of STL
Loading...
Searching...
No Matches
iterators.h File Reference
#include <cstddef>
#include "utils/concepts.h"
#include "utils/move.h"
#include "utils/type_traits.h"
Include dependency graph for iterators.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  bmb::input_iter_tag
 input_iter_tag More...
 
struct  bmb::output_iter_tag
 output_iter_tag More...
 
struct  bmb::forward_iter_tag
 forward_iter_tag More...
 
struct  bmb::bidirectional_iter_tag
 bidirectional_iter_tag More...
 
struct  bmb::random_access_iter_tag
 random_access_iter_tag More...
 
struct  bmb::contiguous_iter_tag
 contiguous_iter_tag More...
 
struct  bmb::detail::IteratorTraitsImpl< Iter, typename >
 
struct  bmb::detail::IteratorTraitsImpl< Iter, void_t< typename Iter::value_type, typename Iter::reference, typename Iter::pointer, typename Iter::difference_type, typename Iter::iterator_category > >
 
struct  bmb::IteratorTraits< Iter >
 IteratorTraits. More...
 
struct  bmb::IteratorTraits< T * >
 

Namespaces

namespace  bmb
 
namespace  bmb::detail
 

Concepts

concept  bmb::InputIterator
 InputIterator.
 
concept  bmb::OutputIterator
 OutputIterator.
 
concept  bmb::ForwardIterator
 ForwardIterator.
 
concept  bmb::BidirectionalIterator
 BidirectionalIterator.
 
concept  bmb::RandomAccessIterator
 RandomAccessIterator.
 
concept  bmb::ContiguousIterator
 ContiguousIterator.
 

Functions

template<InputIterator Iter>
auto bmb::distance (Iter first, Iter last) -> IteratorTraits< Iter >::difference_type
 Returns the number of elements in [first, last).
 
template<InputIterator Iter, typename Distance >
void bmb::advance (Iter &it, Distance dist)
 Increments given iterator by dist.
 
template<InputIterator Iter>
Iter bmb::next (Iter it, typename IteratorTraits< Iter >::difference_type n=1)
 Returns the n-th successor of given iterator.
 
template<BidirectionalIterator Iter>
Iter bmb::prev (Iter it, typename IteratorTraits< Iter >::difference_type n=1)
 Returns the n-th predecessor of given iterator. If n < 0, will chose n-th successor.
 

Detailed Description

Provides iterator tags, concepts, and iterator adaptors

Authors
bivafra