|
|
|
|
|
|
|
|
| data GuardedChannel guard value |
|
| type GQ guardQueue value = guardQueue (GuardInfo value) |
|
| type VQ valueQueue = valueQueue ValueInfo |
|
| newGuardedChannel :: (HasGuardedChannel guardQueue valueQueue guard value) => GQ guardQueue value -> VQ valueQueue -> IO (GuardedChannel guard value) |
|
| sneak :: (Guard guard) => GuardedChannel guard value -> GuardedEvent guard (Maybe value) |
|
| replace :: (Guard guard) => GuardedChannel guard value -> value -> GuardedEvent guard (Maybe value) |
|
| class HasEmpty xQueue where |
| | Methods | | newEmpty :: IO (xQueue xData) |
| | | Instances | |
|
|
| class HasRemove yQueue x y where |
| | Methods | | remove :: yQueue yData -> x -> IO (Maybe (y, yData, IO (yQueue yData)), yQueue yData) |
| | | Instances | |
|
|
| class HasAdd xQueue x where |
| | Methods | | add :: xQueue xData -> x -> xData -> IO (xQueue xData, IO ()) |
| | | Instances | |
|
|
| class (HasRemove yQueue x y, HasAdd xQueue x) => CanSendX xQueue yQueue x y |
|
|
| class (Guard guard, HasEmpty guardQueue, HasEmpty valueQueue, CanSendX guardQueue valueQueue guard value, CanSendX valueQueue guardQueue value guard) => HasGuardedChannel guardQueue valueQueue guard value |
|
|
| Produced by Haddock version 0.3 |