|
| template<typename RangeT > |
| constexpr auto | begin_impl (RangeT &&range) -> decltype(begin(std::forward< RangeT >(range))) |
| |
| template<typename RangeT > |
| constexpr auto | end_impl (RangeT &&range) -> decltype(end(std::forward< RangeT >(range))) |
| |
| template<typename RangeT > |
| constexpr auto | rbegin_impl (RangeT &&range) -> decltype(rbegin(std::forward< RangeT >(range))) |
| |
| template<typename RangeT > |
| constexpr auto | rend_impl (RangeT &&range) -> decltype(rend(std::forward< RangeT >(range))) |
| |
| template<typename T > |
| constexpr void | swap_impl (T &&lhs, T &&rhs) noexcept(noexcept(swap(std::declval< T >(), std::declval< T >()))) |
| |
| template<typename RangeT > |
| constexpr auto | size_impl (RangeT &&range) -> decltype(size(std::forward< RangeT >(range))) |
| |