Safe Haskell | Safe |
---|---|
Language | Haskell2010 |
- type Time = Double
- type DTime = Double
- type SF m = MStreamF (ClockInfo m)
- type ClockInfo m = ReaderT DTime m
- identity :: Monad m => SF m a a
- constant :: Monad m => b -> SF m a b
- iPre :: Monad m => a -> SF m a a
- time :: Monad m => SF m () Time
- integral :: (Monad m, VectorSpace a s) => SF m a a
- integralFrom :: (Monad m, VectorSpace a s) => a -> SF m a a
- derivative :: (Monad m, VectorSpace a s) => SF m a a
- derivativeFrom :: (Monad m, VectorSpace a s) => a -> SF m a a
- data Event a
- noEvent :: Event a
- event :: a -> (b -> a) -> Event b -> a
- fromEvent :: Event t -> t
- isEvent :: Event t -> Bool
- tag :: Event a -> b -> Event b
- mergeBy :: (a -> a -> a) -> Event a -> Event a -> Event a
- lMerge :: Event a -> Event a -> Event a
- eventToMaybe :: Event a -> Maybe a
- maybeToEvent :: Maybe a -> Event a
- boolToEvent :: Bool -> Event ()
- edge :: Monad m => SF m Bool (Event ())
- edgeBy :: Monad m => (a -> a -> Maybe b) -> a -> SF m a (Event b)
- edgeFrom :: Monad m => Bool -> SF m Bool (Event ())
- notYet :: Monad m => SF m (Event a) (Event a)
- hold :: Monad m => a -> SF m (Event a) a
- loopPre :: Monad m => c -> SF m (a, c) (b, c) -> SF m a b
- after :: Monad m => Time -> b -> SF m a (Event b)
- (-->) :: Monad m => b -> SF m a b -> SF m a b
- accumHoldBy :: Monad m => (b -> a -> b) -> b -> SF m (Event a) b
- dpSwitchB :: (Monad m, Traversable col) => col (SF m a b) -> SF m (a, col b) (Event c) -> (col (SF m a b) -> c -> SF m a (col b)) -> SF m a (col b)
- dSwitch :: Monad m => SF m a (b, Event c) -> (c -> SF m a b) -> SF m a b
- switch :: Monad m => SF m a (b, Event c) -> (c -> SF m a b) -> SF m a b
- parC :: Monad m => SF m a b -> SF m [a] [b]
- parC' :: Monad m => [SF m a b] -> SF m [a] [b]
- iterFrom :: Monad m => (a -> a -> DTime -> b -> b) -> b -> SF m a b
- reactimate :: IO a -> (Bool -> IO (DTime, Maybe a)) -> (Bool -> b -> IO Bool) -> SF Identity a b -> IO ()
- dup :: t -> (t, t)
- swap :: (t1, t) -> (t, t1)
Documentation
Continuous time
integralFrom :: (Monad m, VectorSpace a s) => a -> SF m a a Source #
derivative :: (Monad m, VectorSpace a s) => SF m a a Source #
derivativeFrom :: (Monad m, VectorSpace a s) => a -> SF m a a Source #
Events
Relation to other types
eventToMaybe :: Event a -> Maybe a Source #
maybeToEvent :: Maybe a -> Event a Source #
boolToEvent :: Bool -> Event () Source #
Hybrid SF m combinators
notYet :: Monad m => SF m (Event a) (Event a) Source #
Suppression of initial (at local time 0) event.
dpSwitchB :: (Monad m, Traversable col) => col (SF m a b) -> SF m (a, col b) (Event c) -> (col (SF m a b) -> c -> SF m a (col b)) -> SF m a (col b) Source #
reactimate :: IO a -> (Bool -> IO (DTime, Maybe a)) -> (Bool -> b -> IO Bool) -> SF Identity a b -> IO () Source #