chan-0.0.4.1: Some extra kit for Chans

Safe HaskellSafe
LanguageHaskell2010

Control.Concurrent.STM.TChan.Typed

Documentation

newtype TChanRW (scope :: Scope) a #

Constructors

TChanRW (TChan a) 
Instances
ChanScoped TChanRW # 
Instance details

Defined in Control.Concurrent.Chan.Extra

Methods

readOnly :: Readable scope => TChanRW scope a -> TChanRW Read a #

writeOnly :: Writable scope => TChanRW scope a -> TChanRW Write a #

allowReading :: Writable scope => TChanRW scope a -> TChanRW ReadWrite a #

allowWriting :: Readable scope => TChanRW scope a -> TChanRW ReadWrite a #

ChanExtra (TChanRW Write) (TChanRW Read) # 
Instance details

Defined in Control.Concurrent.Chan.Extra

writeTChanRW :: Writable scope => TChanRW scope a -> a -> STM () #

unGetTChanRW :: Writable scope => TChanRW scope a -> a -> STM () #

isEmptyTChanRW :: Readable scope => TChanRW scope a -> STM Bool #

readTChanRW :: Readable scope => TChanRW scope a -> STM a #

tryReadTChanRW :: Readable scope => TChanRW scope a -> STM (Maybe a) #

peekTChanRW :: Readable scope => TChanRW scope a -> STM a #

tryPeekTChanRW :: Readable scope => TChanRW scope a -> STM (Maybe a) #

dupTChanRW :: Writable scopeIn => Readable scopeOut => TChanRW scopeIn a -> STM (TChanRW scopeOut a) #

cloneTChanRW :: Writable scopeIn => Readable scopeOut => TChanRW scopeIn a -> STM (TChanRW scopeOut a) #