úÎ"R!,NoneThe  type class. This provides the ,  and  B functions, which are the main functionality of this package. The  main instance of this class is . AThe others instances are overlapping instances (in the spirit of  mtl-evil-instances6), which provide automatic pass-through instances for  5 for every monad transformer. This means that you don't have ' to provide a pass-through instance of  for every monad  transformer you write. FPerform some allocation, and automatically register a cleanup action. BRegister some action that will be run precisely once, either when   is called, or when the  is passed to  . @Call a release action early, and deregister it from the list of " cleanup actions to be performed. IThe Resource transformer. This transformer keeps track of all registered ( actions, and calls them upon exit (via ). Actions may be  registered via /, or resources may be allocated atomically via  . The ! function corresponds closely to bracket. These  functions are provided by  'ResourceT'\'s  instance. /Releasing may be performed before exit via the  function. This is L a highly recommended optimization, as it will ensure that scarce resources $ are freed early. Note that calling release will deregister the action, so 6 that a release action will only ever be called once. Pass-through instances for the mtl type classes are provided  automatically by the mtl-evil-instances package. FA lookup key for a specific release action. This value is returned by   and  and is passed to . Transform the monad a  ResourceT& lives in. This is most often used to 9 strip or add new transformers to a stack, e.g. to run a ReaderT.  Unwrap a . transformer, and call all registered release  actions. ?Note that there is some reference counting involved due to the  implementation of  used in the   instance. If multiple J threads are sharing the same collection of resources, only the last call  to  runResourceT will deallocate the resources.     resource-simple-0.2Control.Monad.Resource MonadResourcewithregisterrelease ResourceT ReleaseKey mapResourceT runResourceTmonad-fork-0.1Control.Monad.Fork.Classfork MonadFork$fMonadResourcem$fMonadResourcet$fMonadResourceResourceT$fMonadForkResourceT$fMonadBaseControlbResourceT$fMonadPlusResourceT$fMonadResourceT$fAlternativeResourceT$fApplicativeResourceT$fFunctorResourceT$fMonadTransControlResourceT$fMonadTransResourceT