pipes-3.2.0: Control/Proxy.hs
{-| Recommended entry import for this library
Read "Control.Proxy.Tutorial" for an extended proxy tutorial.
-}
module Control.Proxy (
-- * Modules
-- $default
module Control.Proxy.Core,
module Control.Proxy.Core.Fast
) where
import Control.Proxy.Core
import Control.Proxy.Core.Fast hiding (Request, Respond, M, Pure)
{- $default
"Control.Proxy.Core" exports everything except 'runProxy'.
This library provides two base proxy implementations, each of which export
their own 'runProxy' function:
* "Control.Proxy.Core.Fast": This runs faster for code that is not
'IO'-bound, but it only obeys the monad transformer laws modulo safe
observation functions.
* "Control.Proxy.Core.Correct": This trades speed on pure code segments, but
strictly preserves the monad transformer laws.
This module selects the currently recommended implementation (Fast).
You can switch to the correct implementation by importing
"Control.Proxy.Core" and "Control.Proxy.Core.Correct".
You can lock in the fast implementation (in case I change the recommended
default) by importing "Control.Proxy.Core" and "Control.Proxy.Core.Fast".
-}