úÎ<™9U@        ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? ÿQA generic type class encapsulating a generic queuelike structure, that supports single-insertion and single-extraction; this abstraction includes priority queues, stacks, and FIFO queues. There are many minimal implementations, so each method lists the prerequisites for its default implementation. Most implementations will implement , ( and ) or , ( and ) or , and  . JInserts a single element into the queue. The default implementation uses  and . JInserts several elements into the queue. The default implementation uses O. (In some cases, it may be advantageous to override this implementation with xs `` q = q ``   xs.) xAttempts to extract an element from the queue; if the queue is empty, returns Nothing. The default implementation uses  and . €Gets the element that will next be extracted from the queue, if there is an element available. The default implementation uses . ^Deletes an element from the queue, if the queue is nonempty. The default implementation uses . <Constructs an empty queue. The default implementation uses  . KConstructs a queue with a single element. The default implementation uses  and . ZConstructs a queue with all of the elements in the list. The default implementation uses  and . =Gets the size of the queue. The default implementation uses  . ?Checks if the queue is empty. The default implementation uses . HExtracts every element from the queue. The default implementation uses . gExtracts every element from the queue, with no guarantees upon order. The default implementation uses  . “Merges two queues so that the contents of the second queue are inserted into the first queue in extraction order. The default implementation uses   and . Type that only orders on the key, ignoring the value completely; frequently useful in priority queues, so made available here.   KWrapper around a generic queue that reverses the ordering on its elements. A  type with &QueueKey (IntAssocQueue e) ~ e :-> Int. A  type with QueueKey IntQueue ~ Int.     ZTypeclass abstraction of a monad with access to a mutable queue. Minimal implementation:   or  , # , !  or " , % .  !"#$%  !"#$% 'NMonad transformer based on an array implementation of a standard binary heap. (BMonad based on an array implementation of a standard binary heap. )Runs an ( * computation starting with an empty heap. -Runs an ( ¾ computation starting with a heap initialized to hold the specified list. (Since this can be done with linear preprocessing, this is more efficient than inserting the elements one by one.) &'()*+,-(')*+-&, 67A monad controlling single-threaded access to a queue. 92A monad transformer granting the underlying monad m/ access to single-threaded actions on a queue. <BUnwraps a queue transformer, initializing it with an empty queue. =WUnwraps a queue transformer, initializing it with a queue with the specified contents. >GExecutes a computation in a queue monad, starting with an empty queue. ?\Executes a computation in a queue monad, starting with a queue with the specified contents. ./0123456789:;<=>?./0123456789:;<=>?&'()*+,-./0123456789:;<=>?# !"#$%&'()*+,-./0123456789:;<=>?@  !"#$$%&'()* + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D D E F F G H I J KLpqueue-mtl-1.0.7Data.Queue.ClassData.Queue.StackData.Queue.QueueData.Queue.ReverseQueueData.Queue.SkewQueueData.Queue.IntQueueData.Queue.FibQueueData.Queue.PQueueControl.Monad.Queue.ClassControl.Monad.Queue.HeapControl.Monad.Queue.QueueTData.Queue.Instances Data.QueueControl.Monad.Queue.InstancesControl.Monad.Queue QueuelikeQueueKeyinsert insertAllextractpeekdeleteempty singletonfromListsizeisEmptytoListtoList_mergemergeAll:->StackQueue ReverseQueueDownunDown SkewQueue IntAssocQueueIntQueueFQueuePQueue MonadQueueQKey queueInsertqueueInsertAll queueExtract queueDelete queuePeek queueEmpty queueSizeUHeapTHeapTHeapMrunHeapM runHeapMOnrunHeapT runUHeapT runHeapTOn IntQueueM IntQueueT SkewQueueM SkewQueueT FibQueueM FibQueueTPQueueMPQueueTQueueMrunQMQueueTrunQT runQueueT runQueueTOn runQueueM runQueueMOn