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

#include <hikogui/gap_buffer.hpp>

Public Types

using value_type = std::remove_cv_t<T>
 
using size_type = std::size_t
 
using difference_type = ptrdiff_t
 
using pointer = value_type *
 
using const_pointer = value_type const *
 
using reference = value_type &
 
using const_reference = value_type const &
 
using iterator_category = std::random_access_iterator_tag
 
using gap_buffer_type = std::conditional_t<is_const, 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_iterator< value_type > const &other) noexcept
 
 gap_buffer_iterator (gap_buffer_type *buffer, T *it_ptr, std::size_t version) noexcept
 
reference operator* () noexcept
 
const_reference operator* () const noexcept
 
pointer operator-> () noexcept
 
const_pointer 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+= (difference_type n) noexcept
 
gap_buffer_iteratoroperator-= (difference_type n) noexcept
 
gap_buffer_iterator operator- (difference_type n) const noexcept
 

Data Fields

friend gap_buffer< value_type const >
 
friend gap_buffer< value_type >
 
friend gap_buffer_iterator< value_type const >
 
friend gap_buffer_iterator< value_type >
 

Static Public Attributes

static constexpr bool is_const = std::is_const_v<T>
 

Friends

gap_buffer_iterator operator+ (gap_buffer_iterator lhs, difference_type rhs) noexcept
 
gap_buffer_iterator operator+ (difference_type 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>>)
auto operator<=> (gap_buffer_iterator const &lhs, gap_buffer_iterator< R > const &rhs) noexcept
 

Detailed Description

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

A continues iterator over a gap_buffer.


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