   _initHeap: (jobs) =>
     @_heap = new queffee.Heap(jobs, queffee.Q._compareJob)
 
-
   _newJobsAdded: =>
     handler() for handler in @newJobsAddedHandler
class queffee.Q
  @_compareJob: (jobA, jobB) =>
    jobA.priority() > jobB.priority()

  constructor: (jobs = [])->
    this._initHeap(jobs)
    @newJobsAddedHandler = []

  jobsAdded: (handler) =>
    @newJobsAddedHandler.push(handler)

  enqueue: (jobs...) =>
    for job in jobs

  enQ: (performFn, priorityFn, timeout) =>
    this.enqueue(new queffee.Job(performFn, priorityFn, timeout))

  dequeue: => @_heap.extractTop()

  reorder: => @_heap.reorder()

