| 31 | constexpr C& operator[](std::ptrdiff_t pos) const noexcept { return m_data[pos]; } |
| 32 | |
| 33 | constexpr Span<C> subspan(std::ptrdiff_t offset) const noexcept { return Span<C>(m_data + offset, m_size - offset); } |
| 34 | constexpr Span<C> subspan(std::ptrdiff_t offset, std::ptrdiff_t count) const noexcept { return Span<C>(m_data + offset, count); } |
| 35 | constexpr Span<C> first(std::ptrdiff_t count) const noexcept { return Span<C>(m_data, count); } |
| 36 | constexpr Span<C> last(std::ptrdiff_t count) const noexcept { return Span<C>(m_data + m_size - count, count); } |