// // sentinel.h // stream // // Created by Sam Jaffe on 4/8/23. // #pragma once #include #include #include #include namespace stream::ranges { constexpr sentinel_t sentinel{}; template auto sentinel_end(Self *, Base && base, Args &&... args) { if constexpr (detail::has_sentinal_v) { return FWD(base).end(); } else { return detail::begin_t(FWD(base).end(), FWD(args)...); } } } #include