diff --git a/AK/Queue.h b/AK/Queue.h index a7b88eb6b3..80fd00109d 100644 --- a/AK/Queue.h +++ b/AK/Queue.h @@ -41,19 +41,15 @@ public: size_t size() const { return m_size; } bool is_empty() const { return m_size == 0; } - void enqueue(T&& value) + template + void enqueue(U&& value) { if (m_segments.is_empty() || m_segments.last()->size() >= segment_size) m_segments.append(make>()); - m_segments.last()->append(move(value)); + m_segments.last()->append(forward(value)); ++m_size; } - void enqueue(const T& value) - { - enqueue(T(value)); - } - T dequeue() { ASSERT(!is_empty());