Portability | non-portable (TF,GNTD) |
---|---|
Stability | experimental |
Maintainer | hans@hanshoglund.se |
Safe Haskell | None |
Provides functions for manipulating parts.
Part representation
Class of types with an associated part.
The part type can be any ordered type. A Show
instance is also
required from printing the name of the part in output.
Get the voice of the given note.
setPart :: Part a -> a -> aSource
Set the voice of the given note.
modifyPart :: (Part a -> Part a) -> a -> aSource
Modify the voice of the given note.
HasPart Double | |
HasPart Float | |
HasPart Int | |
HasPart Integer | |
HasPart () | |
Integral a => HasPart (Ratio a) | |
HasPart a => HasPart (Maybe a) | |
HasPart a => HasPart (Score a) | |
HasPart a => HasPart (TieT a) | |
HasPart a => HasPart (DynamicT a) | |
HasPart a => HasPart (ArticulationT a) | |
HasPart a => HasPart (SlideT a) | |
HasPart a => HasPart (HarmonicT a) | |
HasPart a => HasPart (TextT a) | |
HasPart a => HasPart (TremoloT a) | |
HasPart a => HasPart (ClefT a) | |
HasPart b => HasPart (a, b) | |
HasPart (PartT n a) |
type HasPart' a = (Show (Part a), Ord (Part a), Default (Part a), HasPart a)Source
Like HasPart
, but enforces the part to be ordered.
This is usually required for part separation and traversal.