Module
Sparrow.Client.Queue
- Package
- purescript-sparrow-queue
- Repository
- athanclark/purescript-sparrow-queue
#SparrowStaticClientQueues Source
type SparrowStaticClientQueues initIn initOut = IOQueues initIn (Maybe initOut)#newSparrowStaticClientQueues Source
newSparrowStaticClientQueues :: forall initOut initIn. Effect (SparrowStaticClientQueues initIn initOut)#newSparrowClientQueues Source
newSparrowClientQueues :: forall deltaOut deltaIn initOut initIn. Effect (SparrowClientQueues initIn initOut deltaIn deltaOut)#sparrowStaticClientQueues Source
sparrowStaticClientQueues :: forall initOut initIn. SparrowStaticClientQueues initIn initOut -> Client initIn initOut JSONVoid JSONVoid#sparrowClientQueues Source
sparrowClientQueues :: forall deltaOut deltaIn initOut initIn. SparrowClientQueues initIn initOut deltaIn deltaOut -> Client initIn initOut deltaIn deltaOut#callSparrowClientQueues Source
callSparrowClientQueues :: forall deltaOut deltaIn initOut initIn. SparrowClientQueues initIn initOut deltaIn deltaOut -> (deltaOut -> Effect Unit) -> initIn -> Aff (Maybe { deltaIn :: deltaIn -> Effect Unit, initOut :: initOut, unsubscribe :: Effect Unit })Simplified version of calling queues, which doesn't care about unsubscribing
#mountSparrowClientQueuesSingleton Source
mountSparrowClientQueuesSingleton :: forall deltaOut deltaIn initOut initIn. SparrowClientQueues initIn initOut deltaIn deltaOut -> Queue (write :: WRITE) deltaIn -> Queue (write :: WRITE) initIn -> (deltaOut -> Effect Unit) -> (Maybe initOut -> Effect Unit) -> Effect (Effect Unit)Be open as long as possible, while disallowing multiple init invocations while a subscription is open. The only way to dismantle is through killing the sub, via the result action