Module

Redux.Saga

Package
purescript-redux-saga
Repository
felixschl/purescript-redux-saga

#channel Source

channel :: forall input action state. String -> ((input -> IO Unit) -> IO Unit) -> Saga' input action state Unit -> Saga' action action state Unit

#take Source

take :: forall input output state. (input -> Maybe (Saga' input output state Unit)) -> Saga' input output state Unit

#put Source

put :: forall input action state. action -> Saga' input action state Unit

#joinTask Source

joinTask :: forall input output state. SagaTask -> Saga' input output state Unit

#cancelTask Source

cancelTask :: forall input output state. SagaTask -> Saga' input output state Unit

#select Source

select :: forall input output state. Saga' input output state state

#fork Source

fork :: forall input output state. Saga' input output state Unit -> Saga' input output state SagaTask

#forkNamed Source

forkNamed :: forall input output state. String -> Saga' input output state Unit -> Saga' input output state SagaTask

#Saga Source

type Saga action state a = Saga' action action state a

#SagaTask Source

newtype SagaTask

#Saga' Source

newtype Saga' input output state a

Instances

#SagaPipe Source

type SagaPipe input action state a = Pipe input action (ReaderT (SagaThread input action state) IO) a

#SagaProc Source

type SagaProc input = { id :: Int, output :: Output input, successVar :: AVar Unit }

#SagaThread Source

type SagaThread input action state = { procsRef :: Ref (Array (SagaProc input)), idSupply :: IdSupply, failureVar :: AVar Error, tag :: String, api :: MiddlewareAPI (infinity :: INFINITY) action state Unit }

#IdSupply Source

newtype IdSupply

#sagaMiddleware Source

sagaMiddleware :: forall action state eff. Saga' action action state Unit -> Middleware eff action state Unit
Modules
Redux.Saga