Karya, built on 2023-08-29T07:47:28 (patch 7a412d5d6ba4968ca4155ef276a062ccdeb9109a)
Safe HaskellSafe-Inferred

Derive.C.Bali.Sekar

Description

Pattern based derivation.

Synopsis

Documentation

even subdivision

data DivNote a Source #

Constructors

DivNote !a 
DivRest 
DivContinue 

Instances

Instances details
Functor DivNote Source # 
Instance details

Defined in Derive.C.Bali.Sekar

Methods

fmap :: (a -> b) -> DivNote a -> DivNote b #

(<$) :: a -> DivNote b -> DivNote a #

Show a => Show (DivNote a) Source # 
Instance details

Defined in Derive.C.Bali.Sekar

Methods

showsPrec :: Int -> DivNote a -> ShowS #

show :: DivNote a -> String #

showList :: [DivNote a] -> ShowS #

Eq a => Eq (DivNote a) Source # 
Instance details

Defined in Derive.C.Bali.Sekar

Methods

(==) :: DivNote a -> DivNote a -> Bool #

(/=) :: DivNote a -> DivNote a -> Bool #

div_extract :: [SubT.EventT (Maybe a)] -> [ScoreTime.ScoreTime] -> [DivNote a] Source #

Convert SubT.EventTs to DivNotes at the given times.

drop_until_next :: (a -> Bool) -> [a] -> [a] Source #

Drop until the predicate is true for the next event. This is like dropWhile (not . f), but you get the element before the predicate becomes false.

direct substitution

sekar_direct_arrive :: (ScoreTime.ScoreTime, ScoreTime.ScoreTime) -> NonEmpty Pattern -> [Sub.RestEvent] -> NoteDeriver Source #

Like sekar_direct, but expect sub-events excluding the start and including the end, and align the last note to the end of the call.

sekar_direct :: (ScoreTime.ScoreTime, ScoreTime.ScoreTime) -> NonEmpty Pattern -> [Sub.RestEvent] -> NoteDeriver Source #

Sekaran derivation via direct substitution of the sub-events.

split_groups :: Int -> [a] -> [[a]] Source #

type Index = Int Source #

Index into melody notes.

data Element Source #

Constructors

Note 
Rest 

Instances

Instances details
Show Element Source # 
Instance details

Defined in Derive.C.Bali.Sekar

realize :: ScoreTime.ScoreTime -> [Sub.RestEvent] -> Pattern -> [Sub.RestEvent] Source #

Apply the pattern to the events.