| Copyright | (c) 2013 Ertugrul Soeylemez |
|---|---|
| License | BSD3 |
| Maintainer | Ertugrul Soeylemez <es@ertes.de> |
| Safe Haskell | Safe |
| Language | Haskell2010 |
Control.Wire.Session
Contents
Description
- class (Monoid s, Real t) => HasTime t s | s -> t where
- newtype Session m s = Session {
- stepSession :: m (s, Session m s)
- data Timed t s = Timed t s
- clockSession :: MonadIO m => Session m (s -> Timed NominalDiffTime s)
- clockSession_ :: (Applicative m, MonadIO m) => Session m (Timed NominalDiffTime ())
- countSession :: Applicative m => t -> Session m (s -> Timed t s)
- countSession_ :: Applicative m => t -> Session m (Timed t ())
State delta types
class (Monoid s, Real t) => HasTime t s | s -> t where Source #
State delta types with time deltas.
Minimal complete definition
State delta generators as required for wire sessions, most notably to generate time deltas. These are mini-wires with the sole purpose of generating these deltas.
Constructors
| Session | |
Fields
| |
Instances
| Functor m => Functor (Session m) Source # | |
| Applicative m => Applicative (Session m) Source # | |
Wires with time
This state delta type denotes time deltas. This is necessary for most FRP applications.
Constructors
| Timed t s |
Instances
| (Semigroup s, Monoid s, Real t) => HasTime t (Timed t s) Source # | |
| Functor (Timed t) Source # | |
| Foldable (Timed t) Source # | |
| Traversable (Timed t) Source # | |
| (Eq s, Eq t) => Eq (Timed t s) Source # | |
| (Data s, Data t) => Data (Timed t s) Source # | |
| (Ord s, Ord t) => Ord (Timed t s) Source # | |
| (Read s, Read t) => Read (Timed t s) Source # | |
| (Show s, Show t) => Show (Timed t s) Source # | |
| (Semigroup s, Num t) => Semigroup (Timed t s) Source # | |
| (Semigroup s, Monoid s, Num t) => Monoid (Timed t s) Source # | |
clockSession :: MonadIO m => Session m (s -> Timed NominalDiffTime s) Source #
State delta generator for a real time clock.
clockSession_ :: (Applicative m, MonadIO m) => Session m (Timed NominalDiffTime ()) Source #
Non-extending version of clockSession.
Arguments
| :: Applicative m | |
| => t | Increment size. |
| -> Session m (s -> Timed t s) |
State delta generator for a simple counting clock. Denotes a fixed framerate. This is likely more useful than clockSession for simulations and real-time games.
countSession_ :: Applicative m => t -> Session m (Timed t ()) Source #
Non-extending version of countSession.