24 Ranges library [ranges]

24.5 Range utilities [range.utility]

24.5.2 View interface [view.interface]

24.5.2.1 Members [view.interface.members]

constexpr decltype(auto) front() requires ForwardRange<D>; constexpr decltype(auto) front() const requires ForwardRange<const D>;
Expects: !empty().
Effects: Equivalent to: return *ranges::begin(derived());
constexpr decltype(auto) back() requires BidirectionalRange<D> && CommonRange<D>; constexpr decltype(auto) back() const requires BidirectionalRange<const D> && CommonRange<const D>;
Expects: !empty().
Effects: Equivalent to: return *ranges::prev(ranges::end(derived()));