| Copyright | Copyright © 2015 PivotCloud, Inc. |
|---|---|
| License | Apache-2.0 |
| Maintainer | Lars Kuhtz <lkuhtz@pivotmail.com> |
| Stability | experimental |
| Safe Haskell | Safe-Inferred |
| Language | Haskell2010 |
System.Logger.Internal.Queue
Description
- class BoundedCloseableQueue q a | q -> a where
- newQueue :: Natural -> IO q
- closeQueue :: q -> IO ()
- writeQueue :: q -> a -> IO Bool
- tryWriteQueue :: q -> a -> IO (Maybe Bool)
- readQueue :: q -> IO (Maybe a)
- data FairTBMQueue α
- data TBMQueue a :: * -> *
- data TBMChan a :: * -> *
Documentation
class BoundedCloseableQueue q a | q -> a where Source
Methods
newQueue :: Natural -> IO q Source
closeQueue :: q -> IO () Source
writeQueue :: q -> a -> IO Bool Source
Returns False if and only if the queue
is closed. If the queue is full this function blocks.
tryWriteQueue :: q -> a -> IO (Maybe Bool) Source
Non-blocking version of writeQueue. Returns Nothing if the
queue was full. Otherwise it returns 'Just True' if the value
was successfully written and 'Just False' if the queue was closed.
readQueue :: q -> IO (Maybe a) Source
Returns Nothing if and only if the queue is
closed. If this queue is empty this function blocks.
Instances
| BoundedCloseableQueue (TBMChan a) a | |
| BoundedCloseableQueue (TBMQueue a) a | |
| BoundedCloseableQueue (FairTBMQueue a) a |
data FairTBMQueue α Source
Instances
data TBMQueue a :: * -> *
TBMQueue is an abstract type representing a bounded closeable
FIFO queue.
Instances
| BoundedCloseableQueue (TBMQueue a) a | |
| Typeable (* -> *) TBMQueue |
data TBMChan a :: * -> *
TBMChan is an abstract type representing a bounded closeable
FIFO channel.
Instances
| BoundedCloseableQueue (TBMChan a) a | |
| Typeable (* -> *) TBMChan |