unix-effectful-0.1: Unix-compat effects
Safe HaskellNone
LanguageGHC2021

Effectful.Posix.Signals.Dynamic

Description

Provides a dynamic effect for System.Posix.Signals.

Since: 0.1

Synopsis

Effect

data PosixSignals (a :: Type -> Type) b where Source #

Dynamic effect for System.Posix.Files.

Since: 0.1

Constructors

RaiseSignal :: forall (a :: Type -> Type). Signal -> PosixSignals a () 
SignalProcess :: forall (a :: Type -> Type). Signal -> ProcessID -> PosixSignals a () 
SignalProcessGroup :: forall (a :: Type -> Type). Signal -> ProcessGroupID -> PosixSignals a () 
InstallHandler :: forall (a :: Type -> Type). Signal -> Handler a -> Maybe SignalSet -> PosixSignals a (Handler a) 
GetSignalMask :: forall (a :: Type -> Type). PosixSignals a SignalSet 
SetSignalMask :: forall (a :: Type -> Type). SignalSet -> PosixSignals a () 
BlockSignals :: forall (a :: Type -> Type). SignalSet -> PosixSignals a () 
UnblockSignals :: forall (a :: Type -> Type). SignalSet -> PosixSignals a () 
ScheduleAlarm :: forall (a :: Type -> Type). Int -> PosixSignals a Int 
GetPendingSignals :: forall (a :: Type -> Type). PosixSignals a SignalSet 
AwaitSignal :: forall (a :: Type -> Type). Maybe SignalSet -> PosixSignals a () 
SetStoppedChildFlag :: forall (a :: Type -> Type). Bool -> PosixSignals a Bool 
QueryStoppedChildFlag :: forall (a :: Type -> Type). PosixSignals a Bool 

Instances

Instances details
ShowEffect PosixSignals Source #

Since: 0.1

Instance details

Defined in Effectful.Posix.Signals.Dynamic

Methods

showEffectCons :: forall (m :: Type -> Type) a. PosixSignals m a -> String Source #

type DispatchOf PosixSignals Source #

Since: 0.1

Instance details

Defined in Effectful.Posix.Signals.Dynamic

raiseSignal :: forall (es :: [Effect]). (HasCallStack, PosixSignals :> es) => Signal -> Eff es () Source #

Lifted raiseSignal.

Since: 0.1

signalProcess :: forall (es :: [Effect]). (HasCallStack, PosixSignals :> es) => Signal -> ProcessID -> Eff es () Source #

Lifted signalProcess.

Since: 0.1

signalProcessGroup :: forall (es :: [Effect]). (HasCallStack, PosixSignals :> es) => Signal -> ProcessGroupID -> Eff es () Source #

Lifted signalProcessGroup.

Since: 0.1

installHandler :: forall (es :: [Effect]). (HasCallStack, PosixSignals :> es) => Signal -> Handler (Eff es) -> Maybe SignalSet -> Eff es (Handler (Eff es)) Source #

Lifted installHandler.

Since: 0.1

getSignalMask :: forall (es :: [Effect]). (HasCallStack, PosixSignals :> es) => Eff es SignalSet Source #

Lifted getSignalMask.

Since: 0.1

setSignalMask :: forall (es :: [Effect]). (HasCallStack, PosixSignals :> es) => SignalSet -> Eff es () Source #

Lifted setSignalMask.

Since: 0.1

blockSignals :: forall (es :: [Effect]). (HasCallStack, PosixSignals :> es) => SignalSet -> Eff es () Source #

Lifted blockSignals.

Since: 0.1

unblockSignals :: forall (es :: [Effect]). (HasCallStack, PosixSignals :> es) => SignalSet -> Eff es () Source #

Lifted unblockSignals.

Since: 0.1

scheduleAlarm :: forall (es :: [Effect]). (HasCallStack, PosixSignals :> es) => Int -> Eff es Int Source #

Lifted scheduleAlarm.

Since: 0.1

getPendingSignals :: forall (es :: [Effect]). (HasCallStack, PosixSignals :> es) => Eff es SignalSet Source #

Lifted getPendingSignals.

Since: 0.1

awaitSignal :: forall (es :: [Effect]). (HasCallStack, PosixSignals :> es) => Maybe SignalSet -> Eff es () Source #

Lifted awaitSignal.

Since: 0.1

setStoppedChildFlag :: forall (es :: [Effect]). (HasCallStack, PosixSignals :> es) => Bool -> Eff es Bool Source #

Lifted setStoppedChildFlag.

Since: 0.1

queryStoppedChildFlag :: forall (es :: [Effect]). (HasCallStack, PosixSignals :> es) => Eff es Bool Source #

Lifted queryStoppedChildFlag.

Since: 0.1

Handler

runPosixSignals :: forall (es :: [Effect]) a. (HasCallStack, IOE :> es) => Eff (PosixSignals ': es) a -> Eff es a Source #

Runs PosixSignals in IO.

Since: 0.1