23 Ranges library [ranges]

23.3 Range access [range.access]

23.3.4 ranges​::​cend [range.access.cend]

The name ranges::cend denotes a customization point object.
The expression ranges::cend(E) for some subexpression E of type T is expression-equivalent to:
  • ranges::end(static_­cast<const T&>(E)) if E is an lvalue.
  • Otherwise, ranges::end(static_­cast<const T&&>(E)).
[Note
:
Whenever ranges::cend(E) is a valid expression, the types S and I of ranges::cend(E) and ranges::cbegin(E) model Sentinel<S, I>.
end note
]