Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
- data T label control content = Cons {}
- data Structure label control content
- class Label label where
- emptyLabel :: label
- foldLabelSerial :: [label] -> label
- foldLabelParallel :: [label] -> label
- serialLabel :: Label label => [T label control content] -> T label control content
- parallelLabel :: Label label => [T label control content] -> T label control content
- switchList :: (label -> b -> c) -> (a -> b) -> ([T label control a] -> b) -> ([T label control a] -> b) -> (control -> T label control a -> b) -> T label control a -> c
- foldList :: (label -> b -> c) -> (a -> b) -> ([c] -> b) -> ([c] -> b) -> (control -> c -> b) -> T label control a -> c
- fromControlledMediumList :: Label label => (a -> (label, b)) -> (control -> T label control b -> label) -> T control a -> T label control b
- mapLabel :: (i -> j) -> T i control a -> T j control a
- serialToList :: T label control a -> [T label control a]
- parallelToList :: T label control a -> [T label control a]
Documentation
data T label control content Source
Medium type with a label (e.g. the duration of the represented music), a controller constructor and direct support for rests.
Functor (T i control) | |
Foldable (T i control) | |
Traversable (T i control) | |
Label label => Construct (T label control) | |
(Eq label, Eq control, Eq content) => Eq (T label control content) | |
(Ord label, Ord control, Ord content) => Ord (T label control content) | |
(Show label, Show control, Show content) => Show (T label control content) |
class Label label where Source
emptyLabel :: label Source
foldLabelSerial :: [label] -> label Source
foldLabelParallel :: [label] -> label Source
serialLabel :: Label label => [T label control content] -> T label control content Source
parallelLabel :: Label label => [T label control content] -> T label control content Source
switchList :: (label -> b -> c) -> (a -> b) -> ([T label control a] -> b) -> ([T label control a] -> b) -> (control -> T label control a -> b) -> T label control a -> c Source
foldList :: (label -> b -> c) -> (a -> b) -> ([c] -> b) -> ([c] -> b) -> (control -> c -> b) -> T label control a -> c Source
fromControlledMediumList :: Label label => (a -> (label, b)) -> (control -> T label control b -> label) -> T control a -> T label control b Source
serialToList :: T label control a -> [T label control a] Source
parallelToList :: T label control a -> [T label control a] Source