You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Returns a sequence adaptor which yields the set difference of the two input sequences :var:`seq1` and :var:`seq2`, ordered by the given comparison function :var:`cmp`.
@@ -1418,7 +1418,7 @@ You can pass a reference to a sequence into an adaptor using :func:`flux::ref` o
1418
1418
1419
1419
:param seq1: The first sorted sequence.
1420
1420
:param seq2: The second sorted sequence.
1421
-
:param cmp: A binary predicate that takes two elements as arguments and returns true if the first element is less than the second.
1421
+
:param cmp: A binary comparator whose return type is convertible to :type:`std::weak_ordering`. Both sequences must be sorted with respect to this comparator.
1422
1422
1423
1423
:returns: A sequence adaptor that yields those elements of `seq1` which do not also appear in `seq2`.
1424
1424
@@ -1466,8 +1466,8 @@ You can pass a reference to a sequence into an adaptor using :func:`flux::ref` o
Returns a sequence adaptor which yields the set intersection of the two input sequences :var:`seq1` and :var:`seq2`, ordered by the given comparison function :var:`cmp`.
@@ -1478,7 +1478,7 @@ You can pass a reference to a sequence into an adaptor using :func:`flux::ref` o
1478
1478
1479
1479
:param seq1: The first sorted sequence.
1480
1480
:param seq2: The second sorted sequence.
1481
-
:param cmp: A binary predicate that takes two elements as arguments and returns true if the first element is less than the second.
1481
+
:param cmp: A binary comparator whose return type is convertible to :type:`std::weak_ordering`. Both sequences must be sorted with respect to this comparator.
1482
1482
1483
1483
:returns: A sequence adaptor that represents the set intersection of the two input sequences.
1484
1484
@@ -1526,7 +1526,7 @@ You can pass a reference to a sequence into an adaptor using :func:`flux::ref` o
:param cmp: A binary comparator whose return type is convertible to :type:`std::weak_ordering`. Both sequences must be sorted with respect to this comparator.
1555
+
1554
1556
:returns: A sequence adaptor that yields elements of `seq1` and `seq2` which do not appear in both sequences.
1555
1557
1556
1558
:models:
@@ -1597,7 +1599,7 @@ You can pass a reference to a sequence into an adaptor using :func:`flux::ref` o
:param cmp: A binary predicate that takes two elements as arguments and returns true if the first element is less than the second.
1623
+
:param cmp: A binary comparator whose return type is convertible to :type:`std::weak_ordering`. Both sequences must be sorted with respect to this comparator.
1622
1624
1623
1625
:returns: A sequence adaptor that represents the set union of the two input sequences.
A sequence :var:`Seq` models :expr:`writable_sequence_t<Seq, T>` for a type :var:`T` if :expr:`element_t<Seq>` is assignable from an object of type :var:`T`.
353
+
354
+
The :concept:`writable_sequence_of` concept is defined as::
355
+
356
+
template <typename Seq, typename T>
357
+
concept writable_sequence_of =
358
+
sequence<Seq> &&
359
+
requires (element_t<Seq> e, T&& item) {
360
+
{ e = std::forward<T>(item) } -> std::same_as<element_t<Seq>&>;
A pair of sequences :var:`Seq1` and :var:`Seq2` model :concept:`element_swappable_with` if their respective elements can be swapped, that is, we can assign to an element of :var:`Seq1` from an rvalue element of :var:`Seq2` and vice-versa.
370
+
371
+
Formally, the :concept:`element_swappable_with` concept is defined as::
The concept :concept:`ordering_invocable` signifies that the binary invocable :var:`Fn` return a value of one of the standard comparison categories, convertible to :var:`Cat`, for all combinations of arguments of types :var:`T` and :var:`U`
391
+
392
+
Semantic requirements:
393
+
394
+
* Let :expr:`r1 = fn(a, b)` and :expr:`r2 = fn(b, c)`. If :expr:`r1 == r2` and :expr:`r1 != std::partial_ordering::unordered`, then :expr:`fn(a, c) == r1`.
395
+
* :expr:`fn(a, b) == std::partial_ordering::less` if and only if :expr:`fn(b, a) == std::partial_ordering::greater`
396
+
397
+
The :concept:`ordering_invocable` concept is defined as::
398
+
399
+
template <typename Fn, typename T, typename U, typename Cat>
0 commit comments