A step source: the carrier and species, the value before every step, and the steps as a forward range, in order along the chain.
More...
template<typename S>
requires(const S& s) {
typename S::Domain;
typename S::logic_species;
{ s.first() } -> std::same_as<typename S::logic_species::Ω>;
{ s.steps() } -> std::ranges::forward_range;
} &&
std::same_as<
std::ranges::range_value_t<decltype(std::declval<const S&>().steps())>,
Step<typename S::Domain, typename S::logic_species>>
A step source: the carrier and species, the value before every step, and the steps as a forward range...
Definition runs.cppm:320
A step source: the carrier and species, the value before every step, and the steps as a forward range, in order along the chain.