AK: Make Span trivially copy-constructible

There is no need to have a user-defined copy constructor that simply
calls the base class's copy constructor. By having the compiler generate
it for us, Span is made trivially copyable, so it can be passed in
registers.
This commit is contained in:
Daniel Bertalan 2021-10-09 10:40:46 +02:00 committed by Linus Groh
parent c524f58290
commit 9869b598d5

View file

@ -94,11 +94,6 @@ public:
constexpr Span() = default;
ALWAYS_INLINE constexpr Span(Span const& other)
: Span(other.m_values, other.m_size)
{
}
[[nodiscard]] ALWAYS_INLINE constexpr T const* data() const { return this->m_values; }
[[nodiscard]] ALWAYS_INLINE constexpr T* data() { return this->m_values; }
@ -211,13 +206,6 @@ public:
return at(index);
}
ALWAYS_INLINE constexpr Span& operator=(Span<T> const& other)
{
this->m_size = other.m_size;
this->m_values = other.m_values;
return *this;
}
constexpr bool operator==(Span const& other) const
{
if (size() != other.size())