Safe Haskell | Safe-Inferred |
---|
Shared types for TScore.
Synopsis
- newtype Time = Time Rational
- newtype Score = Score [(Pos, Toplevel)]
- data Toplevel
- data Block tracks = Block {
- block_id :: !Id.BlockId
- block_directives :: ![Directive]
- block_title :: !Text
- block_tracks :: !tracks
- data WrappedTracks = WrappedTracks !Pos ![Tracks Call]
- newtype Tracks call = Tracks [Track call]
- untracks :: Tracks call -> [Track call]
- data Track call = Track {
- track_key :: !Text
- track_title :: !Text
- track_directives :: ![Directive]
- track_tokens :: ![Token call (NPitch Pitch) NDuration Duration]
- track_pos :: !Pos
- data Directive = Directive !Pos !Text !(Maybe Text)
- data Token call pitch ndur rdur
- token_pos :: Token call pitch ndur rdur -> Pos
- token_name :: Token call pitch ndur rdur -> Text
- map_call :: (call1 -> call2) -> Token call1 pitch ndur rdur -> Token call2 pitch ndur rdur
- map_pitch :: Applicative m => (pitch1 -> m pitch2) -> Token call pitch1 ndur rdur -> m (Token call pitch2 ndur rdur)
- map_note_duration :: Applicative m => (dur1 -> m dur2) -> Token call pitch dur1 rdur -> m (Token call pitch dur2 rdur)
- map_note :: Applicative m => (Note call1 pitch1 ndur -> m (Note call2 pitch2 ndur)) -> Token call1 pitch1 ndur rdur -> m (Token call2 pitch2 ndur rdur)
- type Rank = Int
- data Barline
- data Note call pitch dur = Note {
- note_call :: !call
- note_pitch :: !pitch
- note_zero_duration :: !Bool
- note_duration :: !dur
- note_pos :: !Pos
- data Call
- type CallText = Text
- newtype Rest dur = Rest dur
- data NPitch pitch
- data Pitch = Pitch {
- pitch_octave :: !Octave
- pitch_call :: !Text
- type PitchText = Text
- data Octave
- data NDuration
- data Duration = Duration {}
- newtype Pos = Pos Int
- data Error = Error !Pos !Text
- show_error :: Text -> Error -> Text
- find_pos :: Text -> Pos -> Maybe (Int, Int, Text)
Documentation
This is the default "beat".
Instances
Enum Time Source # | |
Num Time Source # | |
Fractional Time Source # | |
Real Time Source # | |
Defined in Derive.TScore.T toRational :: Time -> Rational # | |
RealFrac Time Source # | |
Show Time Source # | |
Eq Time Source # | |
Ord Time Source # | |
Pretty Time Source # | |
Pretty (Note CallText (Maybe Text) Time) Source # | This is the output from Check.check. |
Score
Block | |
|
data WrappedTracks Source #
WrappedTracks !Pos ![Tracks Call] |
Instances
Show WrappedTracks Source # | |
Defined in Derive.TScore.T showsPrec :: Int -> WrappedTracks -> ShowS # show :: WrappedTracks -> String.String # showList :: [WrappedTracks] -> ShowS # | |
Eq WrappedTracks Source # | |
Defined in Derive.TScore.T (==) :: WrappedTracks -> WrappedTracks -> Bool # (/=) :: WrappedTracks -> WrappedTracks -> Bool # |
Track | |
|
Instances
data Token call pitch ndur rdur Source #
TBarline !Pos !Barline | Higher count for larger divisions, e.g. anga vs. avartanam. |
TNote !Pos !(Note call pitch ndur) | |
TRest !Pos !(Rest rdur) |
token_name :: Token call pitch ndur rdur -> Text Source #
map_pitch :: Applicative m => (pitch1 -> m pitch2) -> Token call pitch1 ndur rdur -> m (Token call pitch2 ndur rdur) Source #
map_note_duration :: Applicative m => (dur1 -> m dur2) -> Token call pitch dur1 rdur -> m (Token call pitch dur2 rdur) Source #
map_note :: Applicative m => (Note call1 pitch1 ndur -> m (Note call2 pitch2 ndur)) -> Token call1 pitch1 ndur rdur -> m (Token call2 pitch2 ndur rdur) Source #
data Note call pitch dur Source #
Note | |
|
Call !CallText | |
SubBlock !CallText ![Tracks Call] | A call can take multiple |
Rest dur |
Pitch | |
|