None of a scheduler's copy constructor, ..., or swap member functions shall exit via an exception.
However, the concept does not actually require that the scheduler has a swap member function, or that it is swappable.
Should the scheduler concept require swappable<Sch>?
Also, the concept does not require move-assignability of schedulers, so the default swap() implementation is not going to work for types that minimally implement this concept.
The current wording for
scheduler
concept in P2300R10 has the following concept:And then in p3, the following sentence:
However, the concept does not actually require that the scheduler has a
swap
member function, or that it isswappable
.Should the
scheduler
concept requireswappable<Sch>
?Also, the concept does not require move-assignability of schedulers, so the default
swap()
implementation is not going to work for types that minimally implement this concept.