haskore-0.2.0.3: The Haskore Computer Music System

Safe Haskell | None

Medium.Controlled.List

Synopsis

- data T control content
  - = Primitive content
  - | Serial [T control content]
  - | Parallel [T control content]
  - | Control control (T control content)
- serialToList :: T control a -> [T control a]
- parallelToList :: T control a -> [T control a]
- prim :: a -> T control a
- serial :: [T control a] -> T control a
- parallel :: [T control a] -> T control a
- fromMedium :: C src => src a -> T control a
- toMediumList :: T control a -> T a
- mapList :: (a -> b) -> ([T control b] -> [T control b]) -> ([T control b] -> [T control b]) -> (control -> T control b -> T control b) -> T control a -> T control b
- mapListFlat :: (a -> b) -> ([T control a] -> [T control b]) -> ([T control a] -> [T control b]) -> (control -> T control a -> T control b) -> T control a -> T control b
- mapControl :: (c0 -> c1) -> T c0 a -> T c1 a

# Documentation

data T control content Source

Medium type with a controller constructor.

Constructors

Primitive content | primitive content
Serial [T control content] | sequential composition
Parallel [T control content] | parallel composition
Control control (T control content) | controller

Instances

C T |
Functor (T control) |
Foldable (T control) |
Traversable (T control) |
Construct (T control) |
(Eq control, Eq content) => Eq (T control content) |
(Ord control, Ord content) => Ord (T control content) |
(Show control, Show content) => Show (T control content) |
(C a, Control control) => C (T control a) |

serialToList :: T control a -> [T control a]Source

parallelToList :: T control a -> [T control a]Source

prim :: a -> T control aSource

serial :: [T control a] -> T control aSource

parallel :: [T control a] -> T control aSource

fromMedium :: C src => src a -> T control aSource

toMediumList :: T control a -> T aSource

mapList :: (a -> b) -> ([T control b] -> [T control b]) -> ([T control b] -> [T control b]) -> (control -> T control b -> T control b) -> T control a -> T control bSource

mapListFlat :: (a -> b) -> ([T control a] -> [T control b]) -> ([T control a] -> [T control b]) -> (control -> T control a -> T control b) -> T control a -> T control bSource

mapControl :: (c0 -> c1) -> T c0 a -> T c1 aSource