24#ifndef MYSQL_GTIDS_GTID_SET_H
25#define MYSQL_GTIDS_GTID_SET_H
83 :
Base_t(start_arg, exclusive_end_arg) {}
131 template <
class... Args_t>
152 template <
class... Args_t>
155 :
Base_t(std::forward<Args_t>(args)...) {}
Class that defines the Interval set type used for Gtid intervals.
Definition: gtid_set.h:123
Gtid_interval_set(Args_t &&...args) noexcept
Enable all constructors from Map_interval_container.
Definition: gtid_set.h:133
Class that defines the Interval type used for Gtid intervals.
Definition: gtid_set.h:75
Gtid_interval(const Element_t &start_arg, const Element_t &exclusive_end_arg)
Construct an interval with the given values for start and exclusive end.
Definition: gtid_set.h:81
static Gtid_interval throwing_make(const Element_t &start_arg, const Element_t &exclusive_end_arg)
Construct an interval with the given values for start and exclusive end.
Definition: gtid_set.h:100
static Gtid_interval throwing_make(const Element_t &singleton)
Construct a singleton interval.
Definition: gtid_set.h:108
Gtid_interval()
Definition: gtid_set.h:93
Gtid_interval(const Element_t &singleton)
Construct a singleton interval.
Definition: gtid_set.h:88
Class that defines the Set type used for Gtid sets.
Definition: gtid_set.h:147
auto insert(const Is_gtid auto >id)
insert taking a Gtid argument.
Definition: gtid_set.h:162
Gtid_set(Args_t &&...args) noexcept
Enable all constructors from Map_nested_container.
Definition: gtid_set.h:154
auto remove(const Is_gtid auto >id) noexcept
remove taking a Gtid argument.
Definition: gtid_set.h:171
detail::Gtid_set_alias Base_t
Definition: gtid_set.h:148
Boundary_set_t::Set_traits_t Set_traits_t
Definition: interval_set_interface.h:95
Interval_set_category_tag Set_category_t
Definition: interval_set_interface.h:94
Holds the start boundary and endpoint boundary of an interval.
Definition: interval.h:178
Interval container using std::map as backing storage.
Definition: aliases.h:263
Nested set container using std::map as backing storage.
Definition: aliases.h:291
Return_status_t remove(const Key_t &key, const auto &...value) noexcept
Remove the given element from the set, if it is there.
Definition: nested_container.h:181
Return_status_t insert(const Key_t &key, Mapped_args_t &&...mapped_args) noexcept
Insert the given element (inplace union).
Definition: nested_container.h:155
Set_traits_t::Element_t Element_t
Definition: interval.h:56
True for all Gtid set types.
Definition: gtid_set.h:178
True if Test satisfies Is_nested_set and its traits is Set_traits_t.
Definition: nested_set_meta.h:128
Definition: fts0fts.cc:236
void right(std::string *to_trim)
Definition: trim.h:41
void left(std::string *to_trim)
Definition: trim.h:35
mysql::sets::Map_interval_container< Sequence_number_traits > Gtid_interval_set_alias
Type alias that defines the Interval set type used for Gtid intervals.
Definition: gtid_set.h:119
mysql::sets::Interval< Sequence_number_traits > Gtid_interval_alias
Type alias that defines the Interval type used for Gtid intervals.
Definition: gtid_set.h:71
mysql::sets::Map_nested_container< Tsid_traits, Gtid_interval_set > Gtid_set_alias
Type alias that defines the Set type used for Gtid sets.
Definition: gtid_set.h:143
uint64_t Sequence_number
The type of the sequence number component of a GTID.
Definition: sequence_number.h:39
constexpr Sequence_number sequence_number_max_exclusive
One plus the largest allowed value for a GTID sequence number.
Definition: sequence_number.h:42
constexpr Sequence_number sequence_number_min
The smallest allowed value for a GTID sequence number.
Definition: sequence_number.h:50
Definition: gtid_set.h:183
bool contains_element(const mysql::gtids::Is_gtid_set auto >id_set, const mysql::gtids::Is_gtid auto >id) noexcept
contains_element for Gtid_sets, accepting a Gtid for the element.
Definition: gtid_set.h:186
noexcept
The return type for any call_and_catch(f, args...) call where f(args...) returns Type.
Definition: call_and_catch.h:76
Class that defines Set_traits for gtids::Sequence_number.
Definition: gtid_set.h:64
Set_traits used when TSIDs are stored in sets.
Definition: gtid_set.h:47
static bool lt(const Tsid &left, const Tsid &right)
Definition: gtid_set.h:48
Set traits for integral types.
Definition: int_set_traits.h:58
Helper CRTP base class to define Ordered Set traits classes, which are optionally Bounded and/or Metr...
Definition: ordered_set_traits_interface.h:90