Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Loading...
Searching...
No Matches
QRangeModelDetails::RowView< const_row_type, Iterator, Sentinel >::iterator Struct Reference

#include <qrangemodeladapter_impl.h>

Collaboration diagram for QRangeModelDetails::RowView< const_row_type, Iterator, Sentinel >::iterator:

Public Types

using value_type = asConst_t<typename Iterator::value_type>
using difference_type = typename Iterator::difference_type
using pointer = QRangeModelDetails::data_pointer_t<value_type>
using reference = value_type
using const_reference = value_type
using iterator_category = typename std::iterator_traits<Iterator>::iterator_category
template<typename I, typename Category>
using if_atLeast = std::enable_if_t<is_atLeast<I, Category>, bool>

Public Member Functions

reference operator* () const
pointer operator-> () const
template<typename I = Iterator, if_atLeast< I, std::random_access_iterator_tag > = true>
constexpr reference operator[] (difference_type n) const noexcept(noexcept(I::operator[]()))

Public Attributes

Iterator m_it

Static Public Attributes

template<typename I, typename Category>
static constexpr bool is_atLeast

Friends

constexpr iteratoroperator++ (iterator &it) noexcept(noexcept(++std::declval< Iterator & >()))
constexpr iterator operator++ (iterator &it, int) noexcept(noexcept(std::declval< Iterator & >()++))
template<typename I = Iterator, if_atLeast< I, std::bidirectional_iterator_tag > = true>
constexpr iteratoroperator-- (iterator &it) noexcept(noexcept(--std::declval< I & >()))
template<typename I = Iterator, if_atLeast< I, std::bidirectional_iterator_tag > = true>
constexpr iterator operator-- (iterator &it, int) noexcept(noexcept(std::declval< I & >() --))
template<typename I = Iterator, if_atLeast< I, std::random_access_iterator_tag > = true>
constexpr iteratoroperator+= (iterator &it, difference_type n) noexcept(noexcept(std::declval< I & >()+=1))
template<typename I = Iterator, if_atLeast< I, std::random_access_iterator_tag > = true>
constexpr iteratoroperator-= (iterator &it, difference_type n) noexcept(noexcept(std::declval< I & >() -=1))
template<typename I = Iterator, if_atLeast< I, std::random_access_iterator_tag > = true>
constexpr iterator operator+ (const iterator &it, difference_type n) noexcept(noexcept(std::declval< I & >()+1))
template<typename I = Iterator, if_atLeast< I, std::random_access_iterator_tag > = true>
constexpr iterator operator+ (difference_type n, const iterator &it) noexcept(noexcept(1+std::declval< I & >()))
template<typename I = Iterator, if_atLeast< I, std::random_access_iterator_tag > = true>
constexpr iterator operator- (const iterator &it, difference_type n) noexcept(noexcept(std::declval< I & >() - 1))
template<typename I = Iterator, if_atLeast< I, std::random_access_iterator_tag > = true>
constexpr difference_type operator- (const iterator &lhs, const iterator &rhs) noexcept(noexcept(std::declval< I & >() - std::declval< I & >()))
template<typename I = Iterator, if_atLeast< I, std::random_access_iterator_tag > = true>
constexpr bool operator< (const iterator &lhs, const iterator &rhs) noexcept(noexcept(std::declval< I & >()< std::declval< I & >()))
template<typename I = Iterator, if_atLeast< I, std::random_access_iterator_tag > = true>
constexpr bool operator<= (const iterator &lhs, const iterator &rhs) noexcept(noexcept(std::declval< I & >()<=std::declval< I & >()))
template<typename I = Iterator, if_atLeast< I, std::random_access_iterator_tag > = true>
constexpr bool operator> (const iterator &lhs, const iterator &rhs) noexcept(noexcept(std::declval< I & >() > std::declval< I & >()))
template<typename I = Iterator, if_atLeast< I, std::random_access_iterator_tag > = true>
constexpr bool operator>= (const iterator &lhs, const iterator &rhs) noexcept(noexcept(std::declval< I & >() >=std::declval< I & >()))
bool comparesEqual (const iterator &lhs, const iterator &rhs) noexcept

Detailed Description

template<typename const_row_type, typename Iterator, typename Sentinel>
struct QRangeModelDetails::RowView< const_row_type, Iterator, Sentinel >::iterator

Definition at line 101 of file qrangemodeladapter_impl.h.

Member Typedef Documentation

◆ const_reference

template<typename const_row_type, typename Iterator, typename Sentinel>
using QRangeModelDetails::RowView< const_row_type, Iterator, Sentinel >::iterator::const_reference = value_type

Definition at line 107 of file qrangemodeladapter_impl.h.

◆ difference_type

template<typename const_row_type, typename Iterator, typename Sentinel>
using QRangeModelDetails::RowView< const_row_type, Iterator, Sentinel >::iterator::difference_type = typename Iterator::difference_type

Definition at line 104 of file qrangemodeladapter_impl.h.

◆ if_atLeast

template<typename const_row_type, typename Iterator, typename Sentinel>
template<typename I, typename Category>
using QRangeModelDetails::RowView< const_row_type, Iterator, Sentinel >::iterator::if_atLeast = std::enable_if_t<is_atLeast<I, Category>, bool>

Definition at line 114 of file qrangemodeladapter_impl.h.

◆ iterator_category

template<typename const_row_type, typename Iterator, typename Sentinel>
using QRangeModelDetails::RowView< const_row_type, Iterator, Sentinel >::iterator::iterator_category = typename std::iterator_traits<Iterator>::iterator_category

Definition at line 108 of file qrangemodeladapter_impl.h.

◆ pointer

template<typename const_row_type, typename Iterator, typename Sentinel>
using QRangeModelDetails::RowView< const_row_type, Iterator, Sentinel >::iterator::pointer = QRangeModelDetails::data_pointer_t<value_type>

Definition at line 105 of file qrangemodeladapter_impl.h.

◆ reference

template<typename const_row_type, typename Iterator, typename Sentinel>
using QRangeModelDetails::RowView< const_row_type, Iterator, Sentinel >::iterator::reference = value_type

Definition at line 106 of file qrangemodeladapter_impl.h.

◆ value_type

template<typename const_row_type, typename Iterator, typename Sentinel>
using QRangeModelDetails::RowView< const_row_type, Iterator, Sentinel >::iterator::value_type = asConst_t<typename Iterator::value_type>

Definition at line 103 of file qrangemodeladapter_impl.h.

Member Function Documentation

◆ operator*()

template<typename const_row_type, typename Iterator, typename Sentinel>
reference QRangeModelDetails::RowView< const_row_type, Iterator, Sentinel >::iterator::operator* ( ) const
inline

Definition at line 116 of file qrangemodeladapter_impl.h.

◆ operator->()

template<typename const_row_type, typename Iterator, typename Sentinel>
pointer QRangeModelDetails::RowView< const_row_type, Iterator, Sentinel >::iterator::operator-> ( ) const
inline

Definition at line 117 of file qrangemodeladapter_impl.h.

◆ operator[]()

template<typename const_row_type, typename Iterator, typename Sentinel>
template<typename I = Iterator, if_atLeast< I, std::random_access_iterator_tag > = true>
reference QRangeModelDetails::RowView< const_row_type, Iterator, Sentinel >::iterator::operator[] ( difference_type n) const
inlineconstexprnoexcept

Definition at line 190 of file qrangemodeladapter_impl.h.

◆ comparesEqual

template<typename const_row_type, typename Iterator, typename Sentinel>
bool comparesEqual ( const iterator & lhs,
const iterator & rhs )
friend

Definition at line 247 of file qrangemodeladapter_impl.h.

◆ operator+ [1/2]

template<typename const_row_type, typename Iterator, typename Sentinel>
template<typename I = Iterator, if_atLeast< I, std::random_access_iterator_tag > = true>
iterator operator+ ( const iterator & it,
difference_type n )
friend

Definition at line 167 of file qrangemodeladapter_impl.h.

◆ operator+ [2/2]

template<typename const_row_type, typename Iterator, typename Sentinel>
template<typename I = Iterator, if_atLeast< I, std::random_access_iterator_tag > = true>
iterator operator+ ( difference_type n,
const iterator & it )
friend

Definition at line 175 of file qrangemodeladapter_impl.h.

◆ operator++ [1/2]

template<typename const_row_type, typename Iterator, typename Sentinel>
iterator & operator++ ( iterator & it)
friend

Definition at line 121 of file qrangemodeladapter_impl.h.

◆ operator++ [2/2]

template<typename const_row_type, typename Iterator, typename Sentinel>
iterator operator++ ( iterator & it,
int  )
friend

Definition at line 127 of file qrangemodeladapter_impl.h.

◆ operator+=

template<typename const_row_type, typename Iterator, typename Sentinel>
template<typename I = Iterator, if_atLeast< I, std::random_access_iterator_tag > = true>
iterator & operator+= ( iterator & it,
difference_type n )
friend

Definition at line 152 of file qrangemodeladapter_impl.h.

◆ operator- [1/2]

template<typename const_row_type, typename Iterator, typename Sentinel>
template<typename I = Iterator, if_atLeast< I, std::random_access_iterator_tag > = true>
iterator operator- ( const iterator & it,
difference_type n )
friend

Definition at line 181 of file qrangemodeladapter_impl.h.

◆ operator- [2/2]

template<typename const_row_type, typename Iterator, typename Sentinel>
template<typename I = Iterator, if_atLeast< I, std::random_access_iterator_tag > = true>
difference_type operator- ( const iterator & lhs,
const iterator & rhs )
friend

Definition at line 197 of file qrangemodeladapter_impl.h.

◆ operator-- [1/2]

template<typename const_row_type, typename Iterator, typename Sentinel>
template<typename I = Iterator, if_atLeast< I, std::bidirectional_iterator_tag > = true>
iterator & operator-- ( iterator & it)
friend

Definition at line 136 of file qrangemodeladapter_impl.h.

◆ operator-- [2/2]

template<typename const_row_type, typename Iterator, typename Sentinel>
template<typename I = Iterator, if_atLeast< I, std::bidirectional_iterator_tag > = true>
iterator operator-- ( iterator & it,
int  )
friend

Definition at line 143 of file qrangemodeladapter_impl.h.

◆ operator-=

template<typename const_row_type, typename Iterator, typename Sentinel>
template<typename I = Iterator, if_atLeast< I, std::random_access_iterator_tag > = true>
iterator & operator-= ( iterator & it,
difference_type n )
friend

Definition at line 159 of file qrangemodeladapter_impl.h.

◆ operator<

template<typename const_row_type, typename Iterator, typename Sentinel>
template<typename I = Iterator, if_atLeast< I, std::random_access_iterator_tag > = true>
bool operator< ( const iterator & lhs,
const iterator & rhs )
friend

Definition at line 204 of file qrangemodeladapter_impl.h.

◆ operator<=

template<typename const_row_type, typename Iterator, typename Sentinel>
template<typename I = Iterator, if_atLeast< I, std::random_access_iterator_tag > = true>
bool operator<= ( const iterator & lhs,
const iterator & rhs )
friend

Definition at line 210 of file qrangemodeladapter_impl.h.

◆ operator>

template<typename const_row_type, typename Iterator, typename Sentinel>
template<typename I = Iterator, if_atLeast< I, std::random_access_iterator_tag > = true>
bool operator> ( const iterator & lhs,
const iterator & rhs )
friend

Definition at line 217 of file qrangemodeladapter_impl.h.

◆ operator>=

template<typename const_row_type, typename Iterator, typename Sentinel>
template<typename I = Iterator, if_atLeast< I, std::random_access_iterator_tag > = true>
bool operator>= ( const iterator & lhs,
const iterator & rhs )
friend

Definition at line 223 of file qrangemodeladapter_impl.h.

Member Data Documentation

◆ is_atLeast

template<typename const_row_type, typename Iterator, typename Sentinel>
template<typename I, typename Category>
bool QRangeModelDetails::RowView< const_row_type, Iterator, Sentinel >::iterator::is_atLeast
staticconstexpr
Initial value:
= std::is_base_of_v<Category,
typename std::iterator_traits<I>::iterator_category>

Definition at line 111 of file qrangemodeladapter_impl.h.

◆ m_it

template<typename const_row_type, typename Iterator, typename Sentinel>
Iterator QRangeModelDetails::RowView< const_row_type, Iterator, Sentinel >::iterator::m_it

Definition at line 253 of file qrangemodeladapter_impl.h.


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