![]() |
MySQL 9.6.0
Source Code Documentation
|
Holds the start boundary and endpoint boundary of an interval. More...
#include <interval.h>
Public Types | |
| using | Set_traits_t = Set_traits_tp |
| using | Element_t = Set_traits_t::Element_t |
Public Member Functions | |
| constexpr const Element_t & | start () const |
| Return const reference to the starting point of the interval (inclusive). More... | |
| constexpr const Element_t & | exclusive_end () const |
| Return const reference to the exclusive endpoint of the interval. More... | |
Protected Member Functions | |
| constexpr | Interval_base () |
| This is enabled if Set_traits_t are discrete set traits. More... | |
| constexpr | Interval_base (const Element_t &start, const Element_t &exclusive_end) |
| Construct an interval with the given inclusive start and exclusive end. More... | |
| constexpr | Interval_base (Element_t singleton) |
| Construct a singleton interval. More... | |
| void | assign (const Element_t &start_arg, const Element_t &exclusive_end_arg) |
| Set both boundaries to the given values, without validating the range. More... | |
| void | set_start (Element_t start_arg) |
| Set the value for the start boundary, without validating the range. More... | |
| void | set_exclusive_end (Element_t exclusive_end_arg) |
| Set the value for the exclusive_end boundary, without validating the range. More... | |
Private Attributes | |
| Element_t | m_values [2] |
| The start boundary at index 0, the exclusive end boundary at index 1. More... | |
Holds the start boundary and endpoint boundary of an interval.
The endpoint is always exclusive.
This base class stores the two values and provides getters, but has all setter functions protected. The protected setter functions do not check that values are in order or in range.
| Set_traits_tp | Bounded set traits describing properties of the element type. |
| using mysql::sets::detail::Interval_base< Set_traits_tp >::Element_t = Set_traits_t::Element_t |
| using mysql::sets::detail::Interval_base< Set_traits_tp >::Set_traits_t = Set_traits_tp |
|
inlineconstexprprotected |
This is enabled if Set_traits_t are discrete set traits.
|
inlineconstexprprotected |
Construct an interval with the given inclusive start and exclusive end.
|
inlineexplicitconstexprprotected |
Construct a singleton interval.
This is enabled if Set_traits_t are discrete set traits.
|
inlineprotected |
Set both boundaries to the given values, without validating the range.
| start_arg | The new value for the start boundary. |
| exclusive_end_arg | The new value for the exclusive_end boundary. |
|
inlineconstexpr |
Return const reference to the exclusive endpoint of the interval.
|
inlineprotected |
Set the value for the exclusive_end boundary, without validating the range.
| exclusive_end_arg | The new value for the exclusive_end boundary. |
|
inlineprotected |
Set the value for the start boundary, without validating the range.
| start_arg | The new value for the start boundary. |
|
inlineconstexpr |
Return const reference to the starting point of the interval (inclusive).
|
private |
The start boundary at index 0, the exclusive end boundary at index 1.