in-other-words-0.2.0.0: A higher-order effect system where the sky's the limit
Safe HaskellNone
LanguageHaskell2010

Control.Effect.Internal.Conc

Synopsis

Documentation

newtype Conc m a Source #

An effect for concurrent execution.

Constructors

Conc (Unlift IO m a) 

Instances

Instances details
EffNewtype Conc Source # 
Instance details

Defined in Control.Effect.Internal.Conc

Associated Types

type UnwrappedEff Conc :: Effect Source #

Methods

unwrapped :: forall (z :: Type -> Type) x. Conc z x -> UnwrappedEff Conc z x Source #

type UnwrappedEff Conc Source # 
Instance details

Defined in Control.Effect.Internal.Conc

unliftConc :: Eff Conc m => ((forall x. m x -> IO x) -> IO a) -> m a Source #

newtype ConcToIOC m a Source #

Constructors

ConcToIOC 

Instances

Instances details
MonadTrans ConcToIOC Source # 
Instance details

Defined in Control.Effect.Internal.Conc

Methods

lift :: Monad m => m a -> ConcToIOC m a #

MonadBase b m => MonadBase b (ConcToIOC m) Source # 
Instance details

Defined in Control.Effect.Internal.Conc

Methods

liftBase :: b α -> ConcToIOC m α #

MonadBaseControl b m => MonadBaseControl b (ConcToIOC m) Source # 
Instance details

Defined in Control.Effect.Internal.Conc

Associated Types

type StM (ConcToIOC m) a #

Methods

liftBaseWith :: (RunInBase (ConcToIOC m) b -> b a) -> ConcToIOC m a #

restoreM :: StM (ConcToIOC m) a -> ConcToIOC m a #

Monad m => Monad (ConcToIOC m) Source # 
Instance details

Defined in Control.Effect.Internal.Conc

Methods

(>>=) :: ConcToIOC m a -> (a -> ConcToIOC m b) -> ConcToIOC m b #

(>>) :: ConcToIOC m a -> ConcToIOC m b -> ConcToIOC m b #

return :: a -> ConcToIOC m a #

Functor m => Functor (ConcToIOC m) Source # 
Instance details

Defined in Control.Effect.Internal.Conc

Methods

fmap :: (a -> b) -> ConcToIOC m a -> ConcToIOC m b #

(<$) :: a -> ConcToIOC m b -> ConcToIOC m a #

MonadFix m => MonadFix (ConcToIOC m) Source # 
Instance details

Defined in Control.Effect.Internal.Conc

Methods

mfix :: (a -> ConcToIOC m a) -> ConcToIOC m a #

MonadFail m => MonadFail (ConcToIOC m) Source # 
Instance details

Defined in Control.Effect.Internal.Conc

Methods

fail :: String -> ConcToIOC m a #

Applicative m => Applicative (ConcToIOC m) Source # 
Instance details

Defined in Control.Effect.Internal.Conc

Methods

pure :: a -> ConcToIOC m a #

(<*>) :: ConcToIOC m (a -> b) -> ConcToIOC m a -> ConcToIOC m b #

liftA2 :: (a -> b -> c) -> ConcToIOC m a -> ConcToIOC m b -> ConcToIOC m c #

(*>) :: ConcToIOC m a -> ConcToIOC m b -> ConcToIOC m b #

(<*) :: ConcToIOC m a -> ConcToIOC m b -> ConcToIOC m a #

MonadIO m => MonadIO (ConcToIOC m) Source # 
Instance details

Defined in Control.Effect.Internal.Conc

Methods

liftIO :: IO a -> ConcToIOC m a #

Alternative m => Alternative (ConcToIOC m) Source # 
Instance details

Defined in Control.Effect.Internal.Conc

Methods

empty :: ConcToIOC m a #

(<|>) :: ConcToIOC m a -> ConcToIOC m a -> ConcToIOC m a #

some :: ConcToIOC m a -> ConcToIOC m [a] #

many :: ConcToIOC m a -> ConcToIOC m [a] #

MonadPlus m => MonadPlus (ConcToIOC m) Source # 
Instance details

Defined in Control.Effect.Internal.Conc

Methods

mzero :: ConcToIOC m a #

mplus :: ConcToIOC m a -> ConcToIOC m a -> ConcToIOC m a #

MonadThrow m => MonadThrow (ConcToIOC m) Source # 
Instance details

Defined in Control.Effect.Internal.Conc

Methods

throwM :: Exception e => e -> ConcToIOC m a #

MonadCatch m => MonadCatch (ConcToIOC m) Source # 
Instance details

Defined in Control.Effect.Internal.Conc

Methods

catch :: Exception e => ConcToIOC m a -> (e -> ConcToIOC m a) -> ConcToIOC m a #

MonadMask m => MonadMask (ConcToIOC m) Source # 
Instance details

Defined in Control.Effect.Internal.Conc

Methods

mask :: ((forall a. ConcToIOC m a -> ConcToIOC m a) -> ConcToIOC m b) -> ConcToIOC m b #

uninterruptibleMask :: ((forall a. ConcToIOC m a -> ConcToIOC m a) -> ConcToIOC m b) -> ConcToIOC m b #

generalBracket :: ConcToIOC m a -> (a -> ExitCase b -> ConcToIOC m c) -> (a -> ConcToIOC m b) -> ConcToIOC m (b, c) #

(Carrier m, MonadBaseControlPure IO m) => Carrier (ConcToIOC m) Source # 
Instance details

Defined in Control.Effect.Internal.Conc

Associated Types

type Derivs (ConcToIOC m) :: [Effect] Source #

type Prims (ConcToIOC m) :: [Effect] Source #

type Derivs (ConcToIOC m) Source # 
Instance details

Defined in Control.Effect.Internal.Conc

type Prims (ConcToIOC m) Source # 
Instance details

Defined in Control.Effect.Internal.Conc

type StM (ConcToIOC m) a Source # 
Instance details

Defined in Control.Effect.Internal.Conc