{-# LANGUAGE UnicodeSyntax #-}

-- | Short-circuiting monad transformer and the corresponding generalizing
-- monad type class.
module Control.Monad.Finish
  ( MonadFinish(..)

  , Finish
  , runFinish
  , runFinish'

  , FinishT(..)
  , runFinishT'

  , module Control.Monad
  , module Control.Monad.Fix
  , module Control.Monad.Trans
  ) where

import Control.Monad
import Control.Monad.Fix
import Control.Monad.Instances ()
import Control.Monad.Trans
import Control.Monad.Trans.Finish hiding (finish)
import Control.Monad.Finish.Class