Public Types | Public Member Functions | Private Member Functions | Private Attributes | Friends | List of all members
nonstd::ring_span_lite::ring_span< T, Popper > Class Template Reference

#include <ring_span.hpp>

Public Types

typedef detail::ring_iterator< type, true > const_iterator
 
typedef T const & const_reference
 
typedef std::reverse_iterator< const_iteratorconst_reverse_iterator
 
typedef detail::ring_iterator< type, false > iterator
 
typedef T * pointer
 
typedef T & reference
 
typedef std::reverse_iterator< iteratorreverse_iterator
 
typedef std::size_t size_type
 
typedef ring_span< T, Popper > type
 
typedef T value_type
 

Public Member Functions

reference back () nsrs_noexcept
 
const_reference back () const nsrs_noexcept
 
iterator begin () nsrs_noexcept
 
const_iterator begin () const nsrs_noexcept
 
size_type capacity () const nsrs_noexcept
 
const_iterator cbegin () const nsrs_noexcept
 
const_iterator cend () const nsrs_noexcept
 
const_reverse_iterator crbegin () const nsrs_noexcept
 
const_reverse_iterator crend () const nsrs_noexcept
 
bool empty () const nsrs_noexcept
 
iterator end () nsrs_noexcept
 
const_iterator end () const nsrs_noexcept
 
reference front () nsrs_noexcept
 
const_reference front () const nsrs_noexcept
 
bool full () const nsrs_noexcept
 
reference operator[] (size_type idx) nsrs_noexcept
 
const_reference operator[] (size_type idx) const nsrs_noexcept
 
Popper::return_type pop_back ()
 
Popper::return_type pop_front ()
 
void push_back (value_type const &value)
 
void push_front (T const &value)
 
reverse_iterator rbegin () nsrs_noexcept
 
const_reverse_iterator rbegin () const nsrs_noexcept
 
reverse_iterator rend () nsrs_noexcept
 
const_reverse_iterator rend () const nsrs_noexcept
 
template<class ContiguousIterator >
 ring_span (ContiguousIterator begin, ContiguousIterator end, Popper popper=Popper()) nsrs_noexcept
 
template<class ContiguousIterator >
 ring_span (ContiguousIterator begin, ContiguousIterator end, ContiguousIterator first, size_type size, Popper popper=Popper()) nsrs_noexcept
 
size_type size () const nsrs_noexcept
 
void swap (type &rhs)
 

Private Member Functions

reference at_ (size_type idx) nsrs_noexcept
 
const_reference at_ (size_type idx) const nsrs_noexcept
 
reference back_ () nsrs_noexcept
 
const_reference back_ () const nsrs_noexcept
 
void decrement_back_ () nsrs_noexcept
 
void decrement_front_ () nsrs_noexcept
 
void decrement_front_and_back_ () nsrs_noexcept
 
reference front_ () nsrs_noexcept
 
const_reference front_ () const nsrs_noexcept
 
void increment_back_ () nsrs_noexcept
 
void increment_front_ () nsrs_noexcept
 
void increment_front_and_back_ () nsrs_noexcept
 
size_type normalize_ (size_type const idx) const nsrs_noexcept
 
ring_spanoperator= (ring_span const &)
 
 ring_span (ring_span const &)
 

Private Attributes

size_type m_capacity
 
pointer m_data
 
size_type m_front_idx
 
Popper m_popper
 
size_type m_size
 

Friends

class detail::ring_iterator< ring_span, false >
 
class detail::ring_iterator< ring_span, true >
 

Detailed Description

template<class T, class Popper = default_popper<T>>
class nonstd::ring_span_lite::ring_span< T, Popper >

Definition at line 394 of file ring_span.hpp.

Member Typedef Documentation

template<class T, class Popper = default_popper<T>>
typedef detail::ring_iterator< type, true > nonstd::ring_span_lite::ring_span< T, Popper >::const_iterator

Definition at line 407 of file ring_span.hpp.

template<class T, class Popper = default_popper<T>>
typedef T const& nonstd::ring_span_lite::ring_span< T, Popper >::const_reference

Definition at line 400 of file ring_span.hpp.

template<class T, class Popper = default_popper<T>>
typedef std::reverse_iterator<const_iterator> nonstd::ring_span_lite::ring_span< T, Popper >::const_reverse_iterator

Definition at line 411 of file ring_span.hpp.

template<class T, class Popper = default_popper<T>>
typedef detail::ring_iterator< type, false > nonstd::ring_span_lite::ring_span< T, Popper >::iterator

Definition at line 406 of file ring_span.hpp.

template<class T, class Popper = default_popper<T>>
typedef T* nonstd::ring_span_lite::ring_span< T, Popper >::pointer

Definition at line 398 of file ring_span.hpp.

template<class T, class Popper = default_popper<T>>
typedef T& nonstd::ring_span_lite::ring_span< T, Popper >::reference

Definition at line 399 of file ring_span.hpp.

template<class T, class Popper = default_popper<T>>
typedef std::reverse_iterator<iterator > nonstd::ring_span_lite::ring_span< T, Popper >::reverse_iterator

Definition at line 410 of file ring_span.hpp.

template<class T, class Popper = default_popper<T>>
typedef std::size_t nonstd::ring_span_lite::ring_span< T, Popper >::size_type

Definition at line 402 of file ring_span.hpp.

template<class T, class Popper = default_popper<T>>
typedef ring_span< T, Popper > nonstd::ring_span_lite::ring_span< T, Popper >::type

Definition at line 404 of file ring_span.hpp.

template<class T, class Popper = default_popper<T>>
typedef T nonstd::ring_span_lite::ring_span< T, Popper >::value_type

Definition at line 397 of file ring_span.hpp.

Constructor & Destructor Documentation

template<class T, class Popper = default_popper<T>>
template<class ContiguousIterator >
nonstd::ring_span_lite::ring_span< T, Popper >::ring_span ( ContiguousIterator  begin,
ContiguousIterator  end,
Popper  popper = Popper() 
)
inline

Definition at line 417 of file ring_span.hpp.

template<class T, class Popper = default_popper<T>>
template<class ContiguousIterator >
nonstd::ring_span_lite::ring_span< T, Popper >::ring_span ( ContiguousIterator  begin,
ContiguousIterator  end,
ContiguousIterator  first,
size_type  size,
Popper  popper = Popper() 
)
inline

Definition at line 430 of file ring_span.hpp.

template<class T, class Popper = default_popper<T>>
nonstd::ring_span_lite::ring_span< T, Popper >::ring_span ( ring_span< T, Popper > const &  )
private

Member Function Documentation

template<class T, class Popper = default_popper<T>>
reference nonstd::ring_span_lite::ring_span< T, Popper >::at_ ( size_type  idx)
inlineprivate

Definition at line 714 of file ring_span.hpp.

template<class T, class Popper = default_popper<T>>
const_reference nonstd::ring_span_lite::ring_span< T, Popper >::at_ ( size_type  idx) const
inlineprivate

Definition at line 719 of file ring_span.hpp.

template<class T, class Popper = default_popper<T>>
reference nonstd::ring_span_lite::ring_span< T, Popper >::back ( )
inline

Definition at line 502 of file ring_span.hpp.

template<class T, class Popper = default_popper<T>>
const_reference nonstd::ring_span_lite::ring_span< T, Popper >::back ( ) const
inline

Definition at line 507 of file ring_span.hpp.

template<class T, class Popper = default_popper<T>>
reference nonstd::ring_span_lite::ring_span< T, Popper >::back_ ( )
inlineprivate

Definition at line 734 of file ring_span.hpp.

template<class T, class Popper = default_popper<T>>
const_reference nonstd::ring_span_lite::ring_span< T, Popper >::back_ ( ) const
inlineprivate

Definition at line 739 of file ring_span.hpp.

template<class T, class Popper = default_popper<T>>
iterator nonstd::ring_span_lite::ring_span< T, Popper >::begin ( )
inline

Definition at line 514 of file ring_span.hpp.

template<class T, class Popper = default_popper<T>>
const_iterator nonstd::ring_span_lite::ring_span< T, Popper >::begin ( ) const
inline

Definition at line 519 of file ring_span.hpp.

template<class T, class Popper = default_popper<T>>
size_type nonstd::ring_span_lite::ring_span< T, Popper >::capacity ( ) const
inline

Definition at line 473 of file ring_span.hpp.

template<class T, class Popper = default_popper<T>>
const_iterator nonstd::ring_span_lite::ring_span< T, Popper >::cbegin ( ) const
inline

Definition at line 524 of file ring_span.hpp.

template<class T, class Popper = default_popper<T>>
const_iterator nonstd::ring_span_lite::ring_span< T, Popper >::cend ( ) const
inline

Definition at line 539 of file ring_span.hpp.

template<class T, class Popper = default_popper<T>>
const_reverse_iterator nonstd::ring_span_lite::ring_span< T, Popper >::crbegin ( ) const
inline

Definition at line 566 of file ring_span.hpp.

template<class T, class Popper = default_popper<T>>
const_reverse_iterator nonstd::ring_span_lite::ring_span< T, Popper >::crend ( ) const
inline

Definition at line 571 of file ring_span.hpp.

template<class T, class Popper = default_popper<T>>
void nonstd::ring_span_lite::ring_span< T, Popper >::decrement_back_ ( )
inlineprivate

Definition at line 761 of file ring_span.hpp.

template<class T, class Popper = default_popper<T>>
void nonstd::ring_span_lite::ring_span< T, Popper >::decrement_front_ ( )
inlineprivate

Definition at line 750 of file ring_span.hpp.

template<class T, class Popper = default_popper<T>>
void nonstd::ring_span_lite::ring_span< T, Popper >::decrement_front_and_back_ ( )
inlineprivate

Definition at line 771 of file ring_span.hpp.

template<class T, class Popper = default_popper<T>>
bool nonstd::ring_span_lite::ring_span< T, Popper >::empty ( ) const
inline

Definition at line 458 of file ring_span.hpp.

template<class T, class Popper = default_popper<T>>
iterator nonstd::ring_span_lite::ring_span< T, Popper >::end ( )
inline

Definition at line 529 of file ring_span.hpp.

template<class T, class Popper = default_popper<T>>
const_iterator nonstd::ring_span_lite::ring_span< T, Popper >::end ( ) const
inline

Definition at line 534 of file ring_span.hpp.

template<class T, class Popper = default_popper<T>>
reference nonstd::ring_span_lite::ring_span< T, Popper >::front ( )
inline

Definition at line 492 of file ring_span.hpp.

template<class T, class Popper = default_popper<T>>
const_reference nonstd::ring_span_lite::ring_span< T, Popper >::front ( ) const
inline

Definition at line 497 of file ring_span.hpp.

template<class T, class Popper = default_popper<T>>
reference nonstd::ring_span_lite::ring_span< T, Popper >::front_ ( )
inlineprivate

Definition at line 724 of file ring_span.hpp.

template<class T, class Popper = default_popper<T>>
const_reference nonstd::ring_span_lite::ring_span< T, Popper >::front_ ( ) const
inlineprivate

Definition at line 729 of file ring_span.hpp.

template<class T, class Popper = default_popper<T>>
bool nonstd::ring_span_lite::ring_span< T, Popper >::full ( ) const
inline

Definition at line 463 of file ring_span.hpp.

template<class T, class Popper = default_popper<T>>
void nonstd::ring_span_lite::ring_span< T, Popper >::increment_back_ ( )
inlineprivate

Definition at line 756 of file ring_span.hpp.

template<class T, class Popper = default_popper<T>>
void nonstd::ring_span_lite::ring_span< T, Popper >::increment_front_ ( )
inlineprivate

Definition at line 744 of file ring_span.hpp.

template<class T, class Popper = default_popper<T>>
void nonstd::ring_span_lite::ring_span< T, Popper >::increment_front_and_back_ ( )
inlineprivate

Definition at line 766 of file ring_span.hpp.

template<class T, class Popper = default_popper<T>>
size_type nonstd::ring_span_lite::ring_span< T, Popper >::normalize_ ( size_type const  idx) const
inlineprivate

Definition at line 709 of file ring_span.hpp.

template<class T, class Popper = default_popper<T>>
ring_span& nonstd::ring_span_lite::ring_span< T, Popper >::operator= ( ring_span< T, Popper > const &  )
private
template<class T, class Popper = default_popper<T>>
reference nonstd::ring_span_lite::ring_span< T, Popper >::operator[] ( size_type  idx)
inline

Definition at line 481 of file ring_span.hpp.

template<class T, class Popper = default_popper<T>>
const_reference nonstd::ring_span_lite::ring_span< T, Popper >::operator[] ( size_type  idx) const
inline

Definition at line 486 of file ring_span.hpp.

template<class T, class Popper = default_popper<T>>
Popper::return_type nonstd::ring_span_lite::ring_span< T, Popper >::pop_back ( )
inline

Definition at line 590 of file ring_span.hpp.

template<class T, class Popper = default_popper<T>>
Popper::return_type nonstd::ring_span_lite::ring_span< T, Popper >::pop_front ( )
inline

Definition at line 579 of file ring_span.hpp.

template<class T, class Popper = default_popper<T>>
void nonstd::ring_span_lite::ring_span< T, Popper >::push_back ( value_type const &  value)
inline

Definition at line 605 of file ring_span.hpp.

template<class T, class Popper = default_popper<T>>
void nonstd::ring_span_lite::ring_span< T, Popper >::push_front ( T const &  value)
inline

Definition at line 649 of file ring_span.hpp.

template<class T, class Popper = default_popper<T>>
reverse_iterator nonstd::ring_span_lite::ring_span< T, Popper >::rbegin ( )
inline

Definition at line 546 of file ring_span.hpp.

template<class T, class Popper = default_popper<T>>
const_reverse_iterator nonstd::ring_span_lite::ring_span< T, Popper >::rbegin ( ) const
inline

Definition at line 556 of file ring_span.hpp.

template<class T, class Popper = default_popper<T>>
reverse_iterator nonstd::ring_span_lite::ring_span< T, Popper >::rend ( )
inline

Definition at line 551 of file ring_span.hpp.

template<class T, class Popper = default_popper<T>>
const_reverse_iterator nonstd::ring_span_lite::ring_span< T, Popper >::rend ( ) const
inline

Definition at line 561 of file ring_span.hpp.

template<class T, class Popper = default_popper<T>>
size_type nonstd::ring_span_lite::ring_span< T, Popper >::size ( ) const
inline

Definition at line 468 of file ring_span.hpp.

template<class T, class Popper = default_popper<T>>
void nonstd::ring_span_lite::ring_span< T, Popper >::swap ( type rhs)
inline

Definition at line 690 of file ring_span.hpp.

Friends And Related Function Documentation

template<class T, class Popper = default_popper<T>>
friend class detail::ring_iterator< ring_span, false >
friend

Definition at line 707 of file ring_span.hpp.

template<class T, class Popper = default_popper<T>>
friend class detail::ring_iterator< ring_span, true >
friend

Definition at line 706 of file ring_span.hpp.

Member Data Documentation

template<class T, class Popper = default_popper<T>>
size_type nonstd::ring_span_lite::ring_span< T, Popper >::m_capacity
private

Definition at line 779 of file ring_span.hpp.

template<class T, class Popper = default_popper<T>>
pointer nonstd::ring_span_lite::ring_span< T, Popper >::m_data
private

Definition at line 777 of file ring_span.hpp.

template<class T, class Popper = default_popper<T>>
size_type nonstd::ring_span_lite::ring_span< T, Popper >::m_front_idx
private

Definition at line 780 of file ring_span.hpp.

template<class T, class Popper = default_popper<T>>
Popper nonstd::ring_span_lite::ring_span< T, Popper >::m_popper
private

Definition at line 781 of file ring_span.hpp.

template<class T, class Popper = default_popper<T>>
size_type nonstd::ring_span_lite::ring_span< T, Popper >::m_size
private

Definition at line 778 of file ring_span.hpp.


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


plotjuggler
Author(s): Davide Faconti
autogenerated on Sun Dec 6 2020 04:02:52