Copyright | (c) David Janin, Simon Archipoff, 2016 |
---|---|
License | see the LICENSE file in the distribution |
Maintainer | janin@labri.fr |
Stability | experimental |
Safe Haskell | Safe |
Language | Haskell2010 |
The key class to allow on-the-fly updates of recursive tile definitions. No possible realtime tile programming without it.
- type UpdateData d iv = (d -> d, InQList d iv -> InQList d iv)
- class Updatable p d iv where
Class Updatable
type UpdateData d iv = (d -> d, InQList d iv -> InQList d iv) Source #
Type of updates
class Updatable p d iv where Source #
Type p can be update via type v
update :: UpdateData d iv -> p -> p Source #
Updatable Bool d iv Source # | No update needed |
Updatable Char d iv Source # | No update needed |
Updatable Int d iv Source # | No update needed |
Updatable Integer d iv Source # | No update needed |
Updatable Rational d iv Source # | No update needed |
Updatable () d iv Source # | No update needed |
Updatable ScaleType d iv Source # | |
Updatable Midi d iv Source # | No update needed |
Updatable PitchClass d iv Source # | No update needed |
Updatable p d iv => Updatable [p] d iv Source # | Closure under list functor |
Updatable p d iv => Updatable (Maybe p) d iv Source # | Closure under Maybe |
Updatable p d iv => Updatable (p -> q) d iv Source # | Closure under exponentiation |
(Updatable p1 d iv, Updatable p2 d iv) => Updatable (Either p1 p2) d iv Source # | Closure under binary disjoint sum |
(Updatable p1 d iv, Updatable p2 d iv) => Updatable (p1, p2) d iv Source # | Closure under binary Cartesian product |
Updatable (InQList d iv) d iv Source # | On-the fly updates of inputs |
(Updatable p1 d iv, Updatable p2 d iv, Updatable p3 d iv) => Updatable (p1, p2, p3) d iv Source # | Closure under ternary Cartesian product |
Updatable (Atom d iv v) d iv Source # | On-the fly updates of atoms |
Updatable (DQ d iv v) d iv Source # | For on-the fly updates of outputs |
Updatable (QList d iv v) d iv Source # | For on-the fly updates of outputs |
Updatable (Tile d iv v) d iv Source # | For on-the fly updates |
(Updatable p1 d iv, Updatable p2 d iv, Updatable p3 d iv, Updatable p4 d iv) => Updatable (p1, p2, p3, p4) d iv Source # | Closure under fourary Cartesian product |