Copyright | (c) Henning Thielemann 2007 |
---|---|
Maintainer | haskell@henning-thielemann.de |
Stability | stable |
Portability | Haskell 98 |
Safe Haskell | Safe |
Language | Haskell98 |
Event lists starting with a time difference and ending with either a data body or a time difference.
- snocBody :: T time body -> body -> T time body
- snocTime :: T time body -> time -> T time body
- viewTimeR :: T time body -> (T time body, time)
- viewBodyR :: T time body -> Maybe (T time body, body)
- switchTimeR :: (T time body -> time -> a) -> T time body -> a
- switchBodyR :: a -> (T time body -> body -> a) -> T time body -> a
- mapTimeR :: (T time body0 -> T time body1, time -> time) -> T time body0 -> T time body1
- mapTimeLast :: (time -> time) -> T time body -> T time body
- mapTimeInit :: (T time body0 -> T time body1) -> T time body0 -> T time body1
- mapBodyR :: (T time0 body -> T time1 body, body -> body) -> T time0 body -> T time1 body
- mapBodyLast :: (body -> body) -> T time body -> T time body
- mapBodyInit :: (T time0 body -> T time1 body) -> T time0 body -> T time1 body
- appendBodyEnd :: C time => T time body -> T time body -> T time body
- prependBodyEnd :: T time body -> T time body -> T time body
- splitAtTime :: C time => time -> T time body -> (T time body, T time body)
- takeTime :: C time => time -> T time body -> T time body
- dropTime :: C time => time -> T time body -> T time body
- splitAfterTime :: C time => time -> T time body -> (T time body, T time body)
- takeAfterTime :: C time => time -> T time body -> T time body
- dropAfterTime :: C time => time -> T time body -> T time body
Documentation
switchTimeR :: (T time body -> time -> a) -> T time body -> a Source #
switchBodyR :: a -> (T time body -> body -> a) -> T time body -> a Source #
mapTimeLast :: (time -> time) -> T time body -> T time body Source #
mapBodyLast :: (body -> body) -> T time body -> T time body Source #
appendBodyEnd :: C time => T time body -> T time body -> T time body Source #
This is not a good name, expect a change.
prependBodyEnd :: T time body -> T time body -> T time body Source #
This is not a good name, expect a change.
splitAtTime :: C time => time -> T time body -> (T time body, T time body) Source #
At the division time move all zero time differences to the suffix part, that is we will always split before a group of events.