HikoGUI
A low latency retained GUI
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Friends
tt::gap_buffer_iterator< T > Class Template Reference

#include <ttauri/gap_buffer.hpp>

Public Types

using value_type = std::remove_cv_t<T>
 
using size_type = size_t
 
using difference_type = ptrdiff_t
 
using pointer = T *
 
using const_pointer = T const *
 
using reference = T &
 
using const_reference = T const &
 
using iterator_category = std::random_access_iterator_tag
 
using gap_buffer_type = std::conditional_t<std::is_const_v<T>, gap_buffer<value_type> const, gap_buffer<value_type>>
 

Public Member Functions

 gap_buffer_iterator (gap_buffer_iterator const &) noexcept=default
 
 gap_buffer_iterator (gap_buffer_iterator &&) noexcept=default
 
gap_buffer_iteratoroperator= (gap_buffer_iterator const &) noexcept=default
 
gap_buffer_iteratoroperator= (gap_buffer_iterator &&) noexcept=default
 
 gap_buffer_iterator (gap_buffer_type *buffer, difference_type index) noexcept
 
gap_buffer_type * buffer () const noexcept
 
difference_type index () const noexcept
 
reference operator* () noexcept
 
const_reference operator* () const noexcept
 
reference operator[] (std::integral auto index) noexcept
 
const_reference operator[] (std::integral auto index) const noexcept
 
gap_buffer_iteratoroperator++ () noexcept
 
gap_buffer_iterator operator++ (int) noexcept
 
gap_buffer_iteratoroperator-- () noexcept
 
gap_buffer_iteratoroperator-- (int) noexcept
 
gap_buffer_iteratoroperator+= (std::integral auto n) noexcept
 
gap_buffer_iteratoroperator-= (std::integral auto n) noexcept
 
gap_buffer_iterator operator- (std::integral auto n) const noexcept
 

Friends

gap_buffer_iterator operator+ (gap_buffer_iterator lhs, std::integral auto rhs) noexcept
 
gap_buffer_iterator operator+ (std::integral auto lhs, gap_buffer_iterator rhs) noexcept
 
template<typename R >
requires (std::is_same_v<std::remove_cv_t<T>, std::remove_cv_t<R>>)
difference_type operator- (gap_buffer_iterator const &lhs, gap_buffer_iterator< R > const &rhs) noexcept
 
template<typename R >
requires (std::is_same_v<std::remove_cv_t<T>, std::remove_cv_t<R>>)
bool operator== (gap_buffer_iterator const &lhs, gap_buffer_iterator< R > const &rhs) noexcept
 
template<typename R >
requires (std::is_same_v<std::remove_cv_t<T>, std::remove_cv_t<R>>)
bool operator!= (gap_buffer_iterator const &lhs, gap_buffer_iterator< R > const &rhs) noexcept
 
template<typename R >
requires (std::is_same_v<std::remove_cv_t<T>, std::remove_cv_t<R>>)
bool operator< (gap_buffer_iterator const &lhs, gap_buffer_iterator< R > const &rhs) noexcept
 
template<typename R >
requires (std::is_same_v<std::remove_cv_t<T>, std::remove_cv_t<R>>)
bool operator> (gap_buffer_iterator const &lhs, gap_buffer_iterator< R > const &rhs) noexcept
 
template<typename R >
requires (std::is_same_v<std::remove_cv_t<T>, std::remove_cv_t<R>>)
bool operator<= (gap_buffer_iterator const &lhs, gap_buffer_iterator< R > const &rhs) noexcept
 
template<typename R >
requires (std::is_same_v<std::remove_cv_t<T>, std::remove_cv_t<R>>)
bool operator>= (gap_buffer_iterator const &lhs, gap_buffer_iterator< R > const &rhs) noexcept
 

Detailed Description

template<typename T>
class tt::gap_buffer_iterator< T >

A continues iterator over a gap_buffer.


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