event-list-0.1.2: Event lists with relative or absolute time stamps

Copyright(c) Henning Thielemann 2007
Maintainerhaskell@henning-thielemann.de
Stabilitystable
PortabilityHaskell 98
Safe HaskellSafe
LanguageHaskell98

Data.EventList.Relative.TimeMixed

Description

Event lists starting with a time difference and ending with either a data body or a time difference.

Synopsis

Documentation

snocBody :: T time body -> body -> T time body Source #

snocTime :: T time body -> time -> T time body Source #

viewTimeR :: T time body -> (T time body, time) Source #

viewBodyR :: T time body -> Maybe (T time body, body) Source #

switchTimeR :: (T time body -> time -> a) -> T time body -> a Source #

switchBodyR :: a -> (T time body -> body -> a) -> T time body -> a Source #

mapTimeR :: (T time body0 -> T time body1, time -> time) -> T time body0 -> T time body1 Source #

mapTimeLast :: (time -> time) -> T time body -> T time body Source #

mapTimeInit :: (T time body0 -> T time body1) -> T time body0 -> T time body1 Source #

mapBodyR :: (T time0 body -> T time1 body, body -> body) -> T time0 body -> T time1 body Source #

mapBodyLast :: (body -> body) -> T time body -> T time body Source #

mapBodyInit :: (T time0 body -> T time1 body) -> T time0 body -> T time1 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.

takeTime :: C time => time -> T time body -> T time body Source #

dropTime :: C time => time -> T time body -> T time body Source #

splitAfterTime :: C time => time -> T time body -> (T time body, T time body) Source #

At the division time move all zero time differences to the prefix part, that is we will always split after a group of events.

takeAfterTime :: C time => time -> T time body -> T time body Source #

dropAfterTime :: C time => time -> T time body -> T time body Source #