diff --git a/AK/CircularDeque.h b/AK/CircularDeque.h index 06cd66a528..06b91e2012 100644 --- a/AK/CircularDeque.h +++ b/AK/CircularDeque.h @@ -35,7 +35,8 @@ namespace AK { template class CircularDeque : public CircularQueue { public: - void enqueue_begin(T&& value) + template + void enqueue_begin(U&& value) { const auto new_head = (this->m_head - 1 + Capacity) % Capacity; auto& slot = this->elements()[new_head]; @@ -44,15 +45,10 @@ public: else ++this->m_size; - new (&slot) T(move(value)); + new (&slot) T(forward(value)); this->m_head = new_head; } - void enqueue_begin(const T& value) - { - enqueue_begin(T(value)); - } - T dequeue_end() { ASSERT(!this->is_empty());