Safe Haskell | None |
---|
- listenTrans :: Event a -> (a -> Reactive ()) -> Reactive (IO ())
- schedulePrioritized :: Maybe (MVar Node) -> Reactive () -> Reactive ()
- scheduleLast :: Reactive () -> Reactive ()
- data Listen a = Listen {}
- getListen :: Event a -> Reactive (Listen a)
- runListen :: Listen a -> Maybe (MVar Node) -> Bool -> (a -> Reactive ()) -> Reactive (IO ())
- linkedListen :: Event a -> Maybe (MVar Node) -> Bool -> (a -> Reactive ()) -> Reactive (IO ())
- data Node
- newEventLinked :: IO (Event a, a -> Reactive (), MVar Node)
- newEvent :: Reactive (Event a, a -> Reactive ())
- newEventImpl :: forall p a. IO (Listen a, a -> Reactive (), MVar Node)
- finalizeEvent :: Event a -> IO () -> Event a
- finalizeListen :: Listen a -> IO () -> IO (Listen a)
- ioReactive :: IO a -> Reactive a
- data Unlistener
- addCleanup_Listen :: Unlistener -> Listen a -> Reactive (Listen a)
- data Sample a = Sample {}
- unSample :: Sample a -> IO a
- addCleanup_Sample :: Unlistener -> Sample a -> IO (Sample a)
- unlistenize :: Reactive (IO ()) -> Reactive Unlistener
Documentation
listenTrans :: Event a -> (a -> Reactive ()) -> Reactive (IO ())Source
Variant of listen
that allows you to initiate more activity in the current
transaction. Useful for implementing new primitives.
schedulePrioritized :: Maybe (MVar Node) -> Reactive () -> Reactive ()Source
Queue the specified atomic to run at the end of the priority 2 queue
scheduleLast :: Reactive () -> Reactive ()Source
linkedListen :: Event a -> Maybe (MVar Node) -> Bool -> (a -> Reactive ()) -> Reactive (IO ())Source
Listen for firings of this event. The returned IO ()
is an IO action
that unregisters the listener. This is the observer pattern.
newEventLinked :: IO (Event a, a -> Reactive (), MVar Node)Source
Returns an event, and a push action for pushing a value into the event.
newEvent :: Reactive (Event a, a -> Reactive ())Source
Returns an event, and a push action for pushing a value into the event.
newEventImpl :: forall p a. IO (Listen a, a -> Reactive (), MVar Node)Source
Returns a Listen
for registering listeners, and a push action for pushing
a value into the event.
finalizeEvent :: Event a -> IO () -> Event aSource
Add a finalizer to an event.
ioReactive :: IO a -> Reactive aSource
data Unlistener Source
addCleanup_Listen :: Unlistener -> Listen a -> Reactive (Listen a)Source
Cause the things listened to with unlistenize to be unlistened when the specified listener is not referenced any more.
addCleanup_Sample :: Unlistener -> Sample a -> IO (Sample a)Source
unlistenize :: Reactive (IO ()) -> Reactive UnlistenerSource
Listen to an input event/behavior and return an Unlistener
that can be
attached to an output event using addCleanup_Listen
.