class Hamster::MutableQueue

@api private

def self.[](*items)

def self.[](*items)
  MutableQueue.new(Deque[*items])
end

def dequeue

def dequeue
  head = nil
  transform do |queue|
    head = queue.head
    queue.dequeue
  end
  head
end

def enqueue(item)

def enqueue(item)
  transform { |queue| queue.enqueue(item) }
end