-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | Data construction abstractions including Constructor, Destructor, Maker, Destroyer, Producer and Consumer. -- -- Data construction abstractions including Constructor, Destructor, -- Maker, Destroyer, Producer and Consumer. @package data-construction @version 1.1 module Data.Construction class Constructor m a construct :: Constructor m a => Destructed a -> m a class Destructor m a destruct :: Destructor m a => a -> m (Destructed a) class Producer m a produce :: Producer m a => m a class Consumer m a consume :: Consumer m a => a -> m () class Maker m a make :: Maker m a => m a class Destroyer m a destroy :: Destroyer m a => a -> m ()