pqueue-mtl-1.0.6: Fully encapsulated monad transformers with queuelike functionality.
Source code
Contents
Index
Control.Monad.Queue.Class
Synopsis
class
Monad
m =>
MonadQueue
m
where
type
QKey
m
queueInsert
::
QKey
m -> m ()
queueInsertAll
:: [
QKey
m] -> m ()
queueExtract
:: m (
Maybe
(
QKey
m))
queueDelete
:: m ()
queuePeek
:: m (
Maybe
(
QKey
m))
queueEmpty
:: m
Bool
queueSize
:: m
Int
Documentation
class
Monad
m =>
MonadQueue
m
where
Source
Typeclass abstraction of a monad with access to a mutable queue. Minimal implementation:
queueInsert
or
queueInsertAll
,
queuePeek
,
queueExtract
or
queueDelete
,
queueSize
.
Associated Types
type
QKey
m
Source
Methods
queueInsert
::
QKey
m -> m ()
Source
queueInsertAll
:: [
QKey
m] -> m ()
Source
queueExtract
:: m (
Maybe
(
QKey
m))
Source
queueDelete
:: m ()
Source
queuePeek
:: m (
Maybe
(
QKey
m))
Source
queueEmpty
:: m
Bool
Source
queueSize
:: m
Int
Source
Instances
MonadQueue
m =>
MonadQueue
(
MaybeT
m)
MonadQueue
m =>
MonadQueue
(
ListT
m)
Queuelike
q =>
MonadQueue
(
QueueM
q)
(
Monoid
w,
MonadQueue
m) =>
MonadQueue
(
WriterT
w m)
(
Monoid
w,
MonadQueue
m) =>
MonadQueue
(
WriterT
w m)
MonadQueue
m =>
MonadQueue
(
StateT
s m)
MonadQueue
m =>
MonadQueue
(
StateT
s m)
MonadQueue
m =>
MonadQueue
(
ReaderT
r m)
MonadQueue
m =>
MonadQueue
(
ArrayT
f m)
MonadQueue
m =>
MonadQueue
(
IntMapT
f m)
(
MonadST
m,
Monad
m,
UA
e,
Ord
e) =>
MonadQueue
(
UHeapT
e m)
(
MonadST
m,
Monad
m,
Ord
e) =>
MonadQueue
(
HeapT
e m)
(
Monad
m,
Queuelike
q) =>
MonadQueue
(
QueueT
q m)
Produced by
Haddock
version 2.4.1