- data Chan r w a
- class Channel r w where
- newChannel' :: MonadCHP m => ChanOpts a -> m (Chan r w a)
- sameChannel :: r a -> w a -> Bool
- newChannel :: (MonadCHP m, Channel r w) => m (Chan r w a)
- data ChanOpts a = ChanOpts {
- chanOptsPriority :: Int
- chanOptsShow :: a -> String
- chanOptsLabel :: Maybe String
- defaultChanOpts :: ChanOpts a
- chanLabel :: Show a => String -> ChanOpts a
- newChannelWR :: (Channel r w, MonadCHP m) => m (w a, r a)
- newChannelRW :: (Channel r w, MonadCHP m) => m (r a, w a)
- newChannelList :: (Channel r w, MonadCHP m) => Int -> m [Chan r w a]
- newChannelListWithLabels :: (Channel r w, MonadCHP m) => [String] -> m [Chan r w a]
- newChannelListWithStem :: (Channel r w, MonadCHP m) => Int -> String -> m [Chan r w a]
- labelChannel :: MonadCHP m => Chan r w a -> String -> m ()
Documentation
newChannel' :: MonadCHP m => ChanOpts a -> m (Chan r w a)Source
sameChannel :: r a -> w a -> BoolSource
newChannel :: (MonadCHP m, Channel r w) => m (Chan r w a)Source
Options for channel creation. The first two will be ignored, but the label (if present) will be used to label the channel in the specification.
ChanOpts | |
|
newChannelWR :: (Channel r w, MonadCHP m) => m (w a, r a)Source
newChannelRW :: (Channel r w, MonadCHP m) => m (r a, w a)Source