added data access

This commit is contained in:
cyborg1811m 2023-12-31 17:06:25 +01:00
parent 8392edbced
commit b368102f1f
1 changed files with 21 additions and 0 deletions

View File

@ -66,6 +66,27 @@ namespace cc {
constexpr reference at(size_type pos);
constexpr const_reference at(size_type pos) const;
[[nodiscard]] constexpr reference front() noexcept{ return _arr[0]; }
[[nodiscard]] constexpr const_reference front() const noexcept { return _arr[0]; }
[[nodiscard]] constexpr reference back() noexcept { return _arr[_size]; }
[[nodiscard]] constexpr const_reference back() const noexcept { return _arr[_size]; }
[[nodiscard]] constexpr value_type * data() noexcept { return _arr; }
[[nodiscard]] constexpr const value_type * data() const noexcept { return _arr; }
[[nodiscard]] constexpr iterator begin() noexcept { return _arr; };
[[nodiscard]] constexpr const_iterator cbegin() const noexcept { return _arr; };
[[nodiscard]] constexpr iterator end() noexcept { return _arr + _size; };
[[nodiscard]] constexpr const_iterator cend() const noexcept { return _arr + _size; };
[[nodiscard]] constexpr reverse_iterator rbegin() noexcept { return std::reverse_iterator<iterator>(_arr + _size); };
[[nodiscard]] constexpr const_reverse_iterator crbegin() const noexcept { return std::reverse_iterator<const_iterator>(_arr + _size); };
[[nodiscard]] constexpr reverse_iterator rend() noexcept { return std::reverse_iterator<iterator>(_arr); };
[[nodiscard]] constexpr const_reverse_iterator crend() const noexcept { return std::reverse_iterator<const_iterator>(_arr); };
[[nodiscard]] constexpr size_type size() const noexcept { return _size; }
constexpr T& operator[](size_type pos) { return _arr[pos]; }