MySQL 9.6.0
Source Code Documentation
interval_set_meta.h File Reference

Experimental API header. More...

Go to the source code of this file.

Classes

struct  mysql::sets::Enable_donate_set< Source_t, Target_t >
 Declare that move-semantics is supported for full-set-copy operations on Set Container Wrapper types, whenever the wrapped types can be nothrow-moved. More...
 
struct  mysql::sets::Enable_donate_set_elements< Source_t, Target_t >
 Declare that move-semantics is supported for element operations on Boundary Storage types, whenever full-set-copy is enabled and the function steal_and_insert is defined. More...
 

Namespaces

namespace  mysql
 
namespace  mysql::sets
 
namespace  mysql::sets::detail
 

Concepts

concept  mysql::sets::Is_interval_set
 
concept  mysql::sets::Is_interval_set_over_traits
 
concept  mysql::sets::Is_interval_set_over_traits_unqualified
 
concept  mysql::sets::Is_interval_container
 True if Test is an Interval_container.
 
concept  mysql::sets::detail::Shall_enable_donate_set_for_interval_container
 Helper concept to define the condition when Enable_donate_set shall be defined for Interval Container types.
 
concept  mysql::sets::detail::Shall_enable_donate_set_elements_for_interval_container
 Helper concept to define the condition when Enable_donate_set_elements shall be defined for Interval Container types.
 

Typedefs

template<Is_interval_container Interval_container_t>
using mysql::sets::Interval_set_boundary_set_type = std::remove_cvref_t< decltype(std::declval< Interval_container_t >().boundaries())>
 The type of the Boundary Set for a given Interval Set. More...
 

Detailed Description

Experimental API header.

  • Is_interval_set<T>: true if T is an interval set: essentially has the members defined by std::view_interface, with value type Interval, and has the member function boundaries() which returns the underlying boundary set.
  • Is_interval_container<T>: true if T is an interval container: this is an interval set with additional members assign, clear, insert, remove, inplace_union, inplace_subtract, inplace_intersect