Module

IxQueue

Package
purescript-queue
Repository
athanclark/purescript-queue

#IxQueue Source

newtype IxQueue k a

#newIxQueue Source

newIxQueue :: forall a k eff. Eff (channel :: CHANNEL, ref :: REF | eff) (IxQueue k a)

#putIxQueue Source

putIxQueue :: forall a k eff. Ord k => IxQueue k a -> k -> a -> Eff (channel :: CHANNEL, ref :: REF | eff) Unit

#putManyIxQueue Source

putManyIxQueue :: forall a k eff. Ord k => IxQueue k a -> k -> Array a -> Eff (channel :: CHANNEL, ref :: REF | eff) Unit

#broadcastIxQueue Source

broadcastIxQueue :: forall a k eff. Ord k => IxQueue k a -> a -> Eff (channel :: CHANNEL, ref :: REF | eff) Unit

#broadcastManyIxQueue Source

broadcastManyIxQueue :: forall a k eff. Ord k => IxQueue k a -> Array a -> Eff (channel :: CHANNEL, ref :: REF | eff) Unit

#injectIxQueue Source

injectIxQueue :: forall a k eff. Ord k => IxQueue k a -> k -> Queue a -> Eff (channel :: CHANNEL, ref :: REF | eff) Unit

Note: if a Queue already exists in the IxQueue, then it reads all of the values in the existing queue before replacing it with the new one, then inserts the read entities.

#touchIxQueue Source

touchIxQueue :: forall a k eff. Ord k => IxQueue k a -> k -> Eff (channel :: CHANNEL, ref :: REF | eff) Unit

#onIxQueue Source

onIxQueue :: forall a k eff. Ord k => IxQueue k a -> k -> (a -> Eff (channel :: CHANNEL, ref :: REF | eff) Unit) -> Eff (channel :: CHANNEL, ref :: REF | eff) Unit

#delIxQueue Source

delIxQueue :: forall a k eff. Ord k => IxQueue k a -> k -> Eff (channel :: CHANNEL, ref :: REF | eff) Unit