module Conduit
(
module Data.Conduit
#if !MIN_VERSION_conduit(1,1,0)
, module Data.Conduit.Util
#endif
#if MIN_VERSION_conduit(1, 0, 11)
, module Data.Conduit.Lift
#endif
, module Data.Conduit.Combinators.Unqualified
, MonadIO (..)
, MonadTrans (..)
, MonadBase (..)
, MonadThrow (..)
, MonadBaseControl
, MonadResource
, ResourceT
, runResourceT
#if MIN_VERSION_resourcet(1,1,0)
, module Data.Acquire
, withAcquire
#endif
, Identity (..)
) where
import Data.Conduit
#if !MIN_VERSION_conduit(1,1,0)
import Data.Conduit.Util hiding (zip)
#endif
import Control.Monad.IO.Class (MonadIO (..))
import Control.Monad.Trans.Class (MonadTrans (..))
import Control.Monad.Trans.Control (MonadBaseControl)
import Control.Monad.Base (MonadBase (..))
#if MIN_VERSION_conduit(1, 0, 11)
import Data.Conduit.Lift
#endif
import Data.Conduit.Combinators.Unqualified
import Data.Functor.Identity (Identity (..))
import Control.Monad.Trans.Resource (MonadResource, MonadThrow (..), runResourceT, ResourceT)
#if MIN_VERSION_resourcet(1,1,0)
import Data.Acquire hiding (with)
import qualified Data.Acquire
withAcquire :: MonadBaseControl IO m => Acquire a -> (a -> m b) -> m b
withAcquire = Data.Acquire.with
#endif