MySQL 9.6.0
Source Code Documentation
mysql::sets::Is_readable_boundary_storage Concept Reference

True if Test is a readable boundary storage, i.e., an object that can be used as the back-end storage for a boundary container, without the requirement to have altering operations. More...

#include <boundary_set_meta.h>

Concept definition

template<class Test>
typename Test::Element_t>
True if Test is a readable boundary storage, i.e., an object that can be used as the back-end storage...
Definition: boundary_set_meta.h:303
True if Test satisfiesIs_readable_boundary_storagewithElement_tas its element type,...
Definition: boundary_set_meta.h:254
std::remove_cvref_t< decltype(std::declval< const Range_t >().begin())> Range_const_iterator_type
Gives the const_iterator type, deduced from the begin() const member.
Definition: meta.h:47
std::remove_cvref_t< decltype(std::declval< Range_t >().begin())> Range_iterator_type
Gives the iterator type, deduced from the begin() member.
Definition: meta.h:42

Detailed Description

True if Test is a readable boundary storage, i.e., an object that can be used as the back-end storage for a boundary container, without the requirement to have altering operations.

Normally, use Is_boundary_storage instead. This weaker form is usable when constraining parameters of the altering operations themselves, to prevent circular dependencies among constraints.

This requires the following:

  • Test satisfies Is_collection and Is_upper_lower_bound_implementation.
  • Test::Set_traits_t satisfies Is_bounded_set_traits
  • The iterators for Test satisfy Is_boundary_iterator.
  • The value types for the iterators equal Test::Element_t and Test::Set_traits_t::Element_t.