Libosmium  2.20.0
Fast and flexible C++ library for working with OpenStreetMap data
Public Types | Public Member Functions | Private Types | Private Attributes | List of all members
osmium::memory::ItemIteratorRange< T > Class Template Reference

#include <item_iterator.hpp>

Public Types

using iterator = ItemIterator< T >
 
using const_iterator = ItemIterator< const T >
 

Public Member Functions

 ItemIteratorRange (data_type first, data_type last) noexcept
 
iterator begin () noexcept
 
iterator end () noexcept
 
const_iterator cbegin () const noexcept
 
const_iterator cend () const noexcept
 
const_iterator begin () const noexcept
 
const_iterator end () const noexcept
 
std::size_t size () const noexcept
 
bool empty () const noexcept
 

Private Types

using data_type = typename std::conditional< std::is_const< T >::value, const unsigned char *, unsigned char * >::type
 

Private Attributes

data_type m_begin
 
data_type m_end
 

Member Typedef Documentation

◆ const_iterator

template<typename T >
using osmium::memory::ItemIteratorRange< T >::const_iterator = ItemIterator<const T>

◆ data_type

template<typename T >
using osmium::memory::ItemIteratorRange< T >::data_type = typename std::conditional<std::is_const<T>::value, const unsigned char*, unsigned char*>::type
private

◆ iterator

template<typename T >
using osmium::memory::ItemIteratorRange< T >::iterator = ItemIterator<T>

Constructor & Destructor Documentation

◆ ItemIteratorRange()

template<typename T >
osmium::memory::ItemIteratorRange< T >::ItemIteratorRange ( data_type  first,
data_type  last 
)
inlinenoexcept

Member Function Documentation

◆ begin() [1/2]

template<typename T >
const_iterator osmium::memory::ItemIteratorRange< T >::begin ( ) const
inlinenoexcept

◆ begin() [2/2]

template<typename T >
iterator osmium::memory::ItemIteratorRange< T >::begin ( )
inlinenoexcept

◆ cbegin()

template<typename T >
const_iterator osmium::memory::ItemIteratorRange< T >::cbegin ( ) const
inlinenoexcept

◆ cend()

template<typename T >
const_iterator osmium::memory::ItemIteratorRange< T >::cend ( ) const
inlinenoexcept

◆ empty()

template<typename T >
bool osmium::memory::ItemIteratorRange< T >::empty ( ) const
inlinenoexcept

Is this range empty?

Complexity: Linear in the number of items.

◆ end() [1/2]

template<typename T >
const_iterator osmium::memory::ItemIteratorRange< T >::end ( ) const
inlinenoexcept

◆ end() [2/2]

template<typename T >
iterator osmium::memory::ItemIteratorRange< T >::end ( )
inlinenoexcept

◆ size()

template<typename T >
std::size_t osmium::memory::ItemIteratorRange< T >::size ( ) const
inlinenoexcept

Return the number of items in this range.

Complexity: Linear in the number of items.

Member Data Documentation

◆ m_begin

template<typename T >
data_type osmium::memory::ItemIteratorRange< T >::m_begin
private

◆ m_end

template<typename T >
data_type osmium::memory::ItemIteratorRange< T >::m_end
private

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