{-# OPTIONS -Wall #-} ------------------------------------------------------------ -- | -- Module : Data.PurePriorityQueue -- Copyright : (c) 2009 Bradford Larsen -- License : BSD-style -- Maintainer : brad.larsen@gmail.com -- -- A pure priority queue. -- -- Because many function names clash with "Prelude" names, this module -- is usually imported @qualified@, e.g., -- -- > import qualified Data.PurePriorityQueue as PQ -- -- This implementation is built on top of "Data.Map". -- -- Estimates of worst-case time complexity are given. The value /n/ -- is the number of elements in the queue. The value /p/ is the -- cardinality of the set of priorities of the elements in the queue. -- /p/ is never greater than /n/. ------------------------------------------------------------ module Data.PurePriorityQueue ( MinMaxQueue , empty , null , insert , deleteMin , deleteMax , minView , maxView , minPriority , maxPriority , foldWithPriority , splitByPriority , size , filter , filterWithPriority , toAscList ) where import Data.PurePriorityQueue.Internal import Prelude hiding (null, filter)