MySQL 9.6.0
Source Code Documentation
mysql::sets::Boundary_view_interface< Self_tp, Iterator_tp, Const_iterator_tp, Set_traits_tp > Class Template Reference

CRTP base class/mixin, used to implement Boundary Sets that are views. More...

#include <boundary_set_interface.h>

Inheritance diagram for mysql::sets::Boundary_view_interface< Self_tp, Iterator_tp, Const_iterator_tp, Set_traits_tp >:
[legend]

Additional Inherited Members

- Public Types inherited from mysql::sets::detail::Boundary_set_interface< Self_tp, Iterator_tp, Const_iterator_tp, Set_traits_tp >
using Iterator_t = Iterator_tp
 
using Const_iterator_t = Const_iterator_tp
 
using Set_category_t = Boundary_set_category_tag
 
using Set_traits_t = Set_traits_tp
 
using Element_t = typename Set_traits_tp::Element_t
 
- Public Types inherited from mysql::sets::Upper_lower_bound_interface< Self_tp, Set_traits_tp, Iterator_tp, Const_iterator_tp, Iterator_get_value >
using Iterator_t = Iterator_tp
 
using Const_iterator_t = Const_iterator_tp
 
using Set_traits_t = Set_traits_tp
 
using Iterator_getter_t = Iterator_getter_tp
 
using Element_t = typename Set_traits_t::Element_t
 
- Public Member Functions inherited from mysql::ranges::Collection_interface< Self_tp >
constexpr auto cbegin () const
 Return constant iterator to the beginning. More...
 
constexpr auto cend () const
 Return constant iterator to the end. More...
 
constexpr auto rbegin ()
 Return reverse iterator to the beginning. More...
 
constexpr auto rend ()
 Return reverse iterator to the end. More...
 
constexpr auto rbegin () const
 Return const reverse iterator to the beginning. More...
 
constexpr auto rend () const
 Return const reverse iterator to the end. More...
 
constexpr auto crbegin () const
 Return const reverse iterator to the beginning. More...
 
constexpr auto crend () const
 Return const reverse iterator to the end. More...
 
constexpr bool empty () const
 Return true if the range is empty, i.e., begin() == end(). More...
 
constexpr operator bool () const
 Return true if the range is non-empty, i.e., begin() != end(). More...
 
constexpr bool operator! () const
 Return true if the range is empty, i.e., begin() == end(). More...
 
constexpr auto size () const
 Return the number of elements in this view, unsigned (size_t), by computing std::ranges::distance(begin, end) More...
 
constexpr auto ssize () const
 Return the number of elements in this view, signed (ptrdiff_t). More...
 
constexpr decltype(auto) front () const
 Return the first element. More...
 
constexpr decltype(auto) back () const
 Return the last element. Enabled if we have bidirectional iterators. More...
 
constexpr decltype(auto) operator[] (std::ptrdiff_t n)
 Return the n'th element, possibly mutable. More...
 
constexpr decltype(auto) operator[] (std::ptrdiff_t n) const
 Return the n'th element, const. More...
 
constexpr auto * data ()
 Return pointer to underlying contiguous memory. More...
 
constexpr auto * data () const
 Return const pointer to underlying contiguous memory. More...
 
- Public Member Functions inherited from mysql::sets::Upper_lower_bound_interface< Self_tp, Set_traits_tp, Iterator_tp, Const_iterator_tp, Iterator_get_value >
constexpr Iterator_t lower_bound (const Iterator_t &hint, const Element_t &element)
 Return the lower bound for element, using an iterator hint known to be less than or equal to the correct result. More...
 
constexpr Const_iterator_t lower_bound (const Const_iterator_t &hint, const Element_t &element) const
 Return the lower bound for element, using an iterator hint known to be less than or equal to the correct result. More...
 
constexpr Iterator_t lower_bound (const Element_t &element)
 Return the lower bound for element. More...
 
constexpr Const_iterator_t lower_bound (const Element_t &element) const
 Return the lower bound for element. More...
 
constexpr Iterator_t upper_bound (const Iterator_t &hint, const Element_t &element)
 Return the upper bound for element, using an iterator hint known to be less than or equal to the correct result. More...
 
constexpr Const_iterator_t upper_bound (const Const_iterator_t &hint, const Element_t &element) const
 Return the upper bound for element, using an iterator hint known to be less than or equal to the correct result. More...
 
constexpr Iterator_t upper_bound (const Element_t &element)
 Return the upper bound for element. More...
 
constexpr Const_iterator_t upper_bound (const Element_t &element) const
 Return the upper bound for element. More...
 
- Static Public Member Functions inherited from mysql::sets::Upper_lower_bound_interface< Self_tp, Set_traits_tp, Iterator_tp, Const_iterator_tp, Iterator_get_value >
static constexpr Iter_t lower_bound_dispatch (Self_arg_t &self_arg, const Iter_t &hint, const Element_t &element)
 Implements the lower_bound functions with hint defined above, checking if the hint is already the correct answer, and otherwise delegating to the implementing class. More...
 
static constexpr auto lower_bound_dispatch (Self_arg_t &self_arg, const Element_t &element)
 Implements the lower_bound functions without hint defined above. More...
 
static constexpr Iter_t upper_bound_dispatch (Self_arg_t &self_arg, const Iter_t &hint, const Element_t &element)
 Implements the upper_bound functions with hint defined above, checking if the hint is already the correct answer, and otherwise delegating to the implementing class. More...
 
static constexpr auto upper_bound_dispatch (Self_arg_t &self_arg, const Element_t &element)
 Implements the upper_bound functions without hint defined above. More...
 

Detailed Description

template<class Self_tp, Is_boundary_iterator Iterator_tp, Is_boundary_iterator Const_iterator_tp, Is_bounded_set_traits Set_traits_tp>
class mysql::sets::Boundary_view_interface< Self_tp, Iterator_tp, Const_iterator_tp, Set_traits_tp >

CRTP base class/mixin, used to implement Boundary Sets that are views.

This defines all the lower_bound and upper_bound members based on lower_bound_impl and upper_bound_impl members in the subclass, and also implements all the view members defined by mysql::ranges::Collection_interface.

Template Parameters
Self_tpClass deriving from this class.
Iterator_tpIterator type.
Const_iterator_tpConst iterator type.
Set_traits_tpBounded set traits.

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