module Concurrency.Chan ( -- * Creating channels newChan , InChan , OutChan -- * Reading , readChan , readChanOnException , tryReadChan , Element(..) , estimatedLength -- * Writing , writeChan , tryWriteChan -- * Broadcasting , dupChan ) where import Control.Concurrent.Chan.Unagi.Bounded