Daily bit(e) of C++ | std::views::common
Daily bit(e) of C++ #164, The C++20 adapter for converting ranges into common ranges: std::views::common.
Before C++20, a range was an implicit concept represented by two iterators. With C++20, this concept was formalized and relaxed to an iterator and a sentinel.
To adapt a range for old code that requires a common range (iterator and sentinel of the same type), we can use the std::views::common adapter view.