Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
Utilities to schedule actions per Tick
.
Synopsis
- newtype Schedule a = Schedule {
- getSchedule ∷ Map Tick [a]
- genSchedule ∷ [a] → Gen (Schedule a)
- joinSchedule ∷ Schedule a → [a]
- lastTick ∷ Schedule a → Tick
- shrinkSchedule ∷ Schedule a → [Schedule a]
Documentation
A schedule plans actions on certain times.
TODO Note that a schedule can't express delays between the actions within a single tick. Generating such delays may expose more (most likely concurrency-related) bugs.
Schedule | |
|
genSchedule ∷ [a] → Gen (Schedule a) Source #
Spread out elements over a schedule, i.e. schedule a number of elements to be processed on each tick. Most ticks will have no associated elements.
joinSchedule ∷ Schedule a → [a] Source #
Inverse of genSchedule