Indexing, size, and iteration. These allow mutation even if the ArrayView is const, because the ArrayView doesn't own the array. (To prevent mutation, use ArrayView .)
| 102 | // is const, because the ArrayView doesn't own the array. (To prevent |
| 103 | // mutation, use ArrayView<const T>.) |
| 104 | size_t size() const { return size_; } |
| 105 | bool empty() const { return size_ == 0; } |
| 106 | T* data() const { return data_; } |
| 107 | T& operator[](size_t idx) const { |