diff options
Diffstat (limited to 'deimos/core/base.h')
-rw-r--r-- | deimos/core/base.h | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/deimos/core/base.h b/deimos/core/base.h index 3dc3bad..c3b0d87 100644 --- a/deimos/core/base.h +++ b/deimos/core/base.h @@ -65,6 +65,13 @@ public: deimos_DEFAULT_COPY_MOVE(Span);
+ constexpr Span(T* begin, int64_t size) :
+ m_begin{begin},
+ m_size{size}
+ {
+ Expects(size >= 0);
+ }
+
template<typename U>
requires std::convertible_to<U*, T*>
constexpr Span(const Span<U>& other) : // NOLINT
@@ -72,6 +79,7 @@ public: m_size{other.size()}
{}
+ constexpr T* data() const { return m_begin; }
constexpr T* begin() const { return m_begin; }
constexpr T* end() const { return m_begin + m_size; }
constexpr int64_t size() const { return m_size; }
|