fadno-1.1.9.1: Minimal library for music generation and notation
Safe HaskellSafe-Inferred
LanguageHaskell2010

Fadno.Notation

Synopsis

Documentation

data Quanta Source #

Constructors

Q2 
Q4 
Q8 
Q16 
Q32 
Q64 

Instances

Instances details
Bounded Quanta Source # 
Instance details

Defined in Fadno.Notation

Enum Quanta Source # 
Instance details

Defined in Fadno.Notation

Show Quanta Source # 
Instance details

Defined in Fadno.Notation

Methods

showsPrec :: Int -> Quanta -> ShowS

show :: Quanta -> String

showList :: [Quanta] -> ShowS

Eq Quanta Source # 
Instance details

Defined in Fadno.Notation

Methods

(==) :: Quanta -> Quanta -> Bool

(/=) :: Quanta -> Quanta -> Bool

Ord Quanta Source # 
Instance details

Defined in Fadno.Notation

Methods

compare :: Quanta -> Quanta -> Ordering

(<) :: Quanta -> Quanta -> Bool

(<=) :: Quanta -> Quanta -> Bool

(>) :: Quanta -> Quanta -> Bool

(>=) :: Quanta -> Quanta -> Bool

max :: Quanta -> Quanta -> Quanta

min :: Quanta -> Quanta -> Quanta

qToInt :: Quanta -> Int Source #

qFromInt :: Integral i => i -> Maybe Quanta Source #

data TimeSignature Source #

Constructors

TimeSignature 

Fields

Instances

Instances details
Show TimeSignature Source # 
Instance details

Defined in Fadno.Notation

Methods

showsPrec :: Int -> TimeSignature -> ShowS

show :: TimeSignature -> String

showList :: [TimeSignature] -> ShowS

Eq TimeSignature Source # 
Instance details

Defined in Fadno.Notation

Ord TimeSignature Source # 
Instance details

Defined in Fadno.Notation

class HasTimeSignature a where Source #

Methods

timeSignature :: Lens' a (Maybe TimeSignature) Source #

Instances

Instances details
HasTimeSignature (Bar n) Source # 
Instance details

Defined in Fadno.Notation

Methods

timeSignature :: Lens' (Bar n) (Maybe TimeSignature) Source #

data PPQ Source #

Constructors

PQ4 
PQ8 
PQ16 
PQ32 
PQ64 
PQ128 
PQ256 

Instances

Instances details
Bounded PPQ Source # 
Instance details

Defined in Fadno.Notation

Methods

minBound :: PPQ

maxBound :: PPQ

Enum PPQ Source # 
Instance details

Defined in Fadno.Notation

Methods

succ :: PPQ -> PPQ

pred :: PPQ -> PPQ

toEnum :: Int -> PPQ

fromEnum :: PPQ -> Int

enumFrom :: PPQ -> [PPQ]

enumFromThen :: PPQ -> PPQ -> [PPQ]

enumFromTo :: PPQ -> PPQ -> [PPQ]

enumFromThenTo :: PPQ -> PPQ -> PPQ -> [PPQ]

Show PPQ Source # 
Instance details

Defined in Fadno.Notation

Methods

showsPrec :: Int -> PPQ -> ShowS

show :: PPQ -> String

showList :: [PPQ] -> ShowS

Eq PPQ Source # 
Instance details

Defined in Fadno.Notation

Methods

(==) :: PPQ -> PPQ -> Bool

(/=) :: PPQ -> PPQ -> Bool

Ord PPQ Source # 
Instance details

Defined in Fadno.Notation

Methods

compare :: PPQ -> PPQ -> Ordering

(<) :: PPQ -> PPQ -> Bool

(<=) :: PPQ -> PPQ -> Bool

(>) :: PPQ -> PPQ -> Bool

(>=) :: PPQ -> PPQ -> Bool

max :: PPQ -> PPQ -> PPQ

min :: PPQ -> PPQ -> PPQ

ppqDiv :: Integral a => PPQ -> a Source #

tsFromRatio :: Rational -> Maybe TimeSignature Source #

ratioPPQ :: forall a. Integral a => PPQ -> Iso' a Rational Source #

Duration iso, from Integral to Rational, given PPQ

adaptHas :: Lens' a (Maybe a) Source #

Adapt a type to its HasXXX "Maybe Lens'"

adaptHasLens :: Lens' s a -> Lens' s (Maybe a) Source #

Adapt a non-Maybe lens to the HasXXX "Maybe Lens'"

adaptHasNot :: Lens' s (Maybe a) Source #

Adapt a type that does NOT support the HasXXX feature.

data Tie Source #

Tied notes.

Constructors

TStart 
TStop 
TBoth 

Instances

Instances details
Bounded Tie Source # 
Instance details

Defined in Fadno.Notation

Methods

minBound :: Tie

maxBound :: Tie

Enum Tie Source # 
Instance details

Defined in Fadno.Notation

Methods

succ :: Tie -> Tie

pred :: Tie -> Tie

toEnum :: Int -> Tie

fromEnum :: Tie -> Int

enumFrom :: Tie -> [Tie]

enumFromThen :: Tie -> Tie -> [Tie]

enumFromTo :: Tie -> Tie -> [Tie]

enumFromThenTo :: Tie -> Tie -> Tie -> [Tie]

Show Tie Source # 
Instance details

Defined in Fadno.Notation

Methods

showsPrec :: Int -> Tie -> ShowS

show :: Tie -> String

showList :: [Tie] -> ShowS

HasTie Tie Source # 
Instance details

Defined in Fadno.Notation

Methods

tie :: Lens' Tie (Maybe Tie) Source #

Eq Tie Source # 
Instance details

Defined in Fadno.Notation

Methods

(==) :: Tie -> Tie -> Bool

(/=) :: Tie -> Tie -> Bool

Ord Tie Source # 
Instance details

Defined in Fadno.Notation

Methods

compare :: Tie -> Tie -> Ordering

(<) :: Tie -> Tie -> Bool

(<=) :: Tie -> Tie -> Bool

(>) :: Tie -> Tie -> Bool

(>=) :: Tie -> Tie -> Bool

max :: Tie -> Tie -> Tie

min :: Tie -> Tie -> Tie

class HasTie a where Source #

Methods

tie :: Lens' a (Maybe Tie) Source #

Instances

Instances details
HasTie Tie Source # 
Instance details

Defined in Fadno.Notation

Methods

tie :: Lens' Tie (Maybe Tie) Source #

HasTie (Noted n) Source # 
Instance details

Defined in Fadno.Notation

Methods

tie :: Lens' (Noted n) (Maybe Tie) Source #

HasTie (Note p d) Source # 
Instance details

Defined in Fadno.Notation

Methods

tie :: Lens' (Note p d) (Maybe Tie) Source #

data Slur Source #

Slurred notes.

Constructors

SStart 
SStop 

Instances

Instances details
Bounded Slur Source # 
Instance details

Defined in Fadno.Notation

Enum Slur Source # 
Instance details

Defined in Fadno.Notation

Methods

succ :: Slur -> Slur

pred :: Slur -> Slur

toEnum :: Int -> Slur

fromEnum :: Slur -> Int

enumFrom :: Slur -> [Slur]

enumFromThen :: Slur -> Slur -> [Slur]

enumFromTo :: Slur -> Slur -> [Slur]

enumFromThenTo :: Slur -> Slur -> Slur -> [Slur]

Show Slur Source # 
Instance details

Defined in Fadno.Notation

Methods

showsPrec :: Int -> Slur -> ShowS

show :: Slur -> String

showList :: [Slur] -> ShowS

HasSlur Slur Source # 
Instance details

Defined in Fadno.Notation

Methods

slur :: Lens' Slur (Maybe Slur) Source #

Eq Slur Source # 
Instance details

Defined in Fadno.Notation

Methods

(==) :: Slur -> Slur -> Bool

(/=) :: Slur -> Slur -> Bool

Ord Slur Source # 
Instance details

Defined in Fadno.Notation

Methods

compare :: Slur -> Slur -> Ordering

(<) :: Slur -> Slur -> Bool

(<=) :: Slur -> Slur -> Bool

(>) :: Slur -> Slur -> Bool

(>=) :: Slur -> Slur -> Bool

max :: Slur -> Slur -> Slur

min :: Slur -> Slur -> Slur

class HasSlur a where Source #

Methods

slur :: Lens' a (Maybe Slur) Source #

Instances

Instances details
HasSlur Slur Source # 
Instance details

Defined in Fadno.Notation

Methods

slur :: Lens' Slur (Maybe Slur) Source #

HasSlur (Noted n) Source # 
Instance details

Defined in Fadno.Notation

Methods

slur :: Lens' (Noted n) (Maybe Slur) Source #

data Articulation Source #

Note articulations.

Constructors

Staccato 
Accent 
Tenuto

StrongAccent TODO implement after fixing fadno-xml #7

DetachedLegato 
Staccatissimo 
Spiccato 
Scoop 
Plop 
Doit 
Falloff 
BreathMark 
Caesura 
Stress 
Unstress 
SoftAccent 
OtherArticulation String 

Instances

Instances details
Show Articulation Source # 
Instance details

Defined in Fadno.Notation

Methods

showsPrec :: Int -> Articulation -> ShowS

show :: Articulation -> String

showList :: [Articulation] -> ShowS

HasArticulation Articulation Source # 
Instance details

Defined in Fadno.Notation

Eq Articulation Source # 
Instance details

Defined in Fadno.Notation

Methods

(==) :: Articulation -> Articulation -> Bool

(/=) :: Articulation -> Articulation -> Bool

Ord Articulation Source # 
Instance details

Defined in Fadno.Notation

class HasArticulation a where Source #

Methods

articulation :: Lens' a (Maybe Articulation) Source #

Instances

Instances details
HasArticulation Articulation Source # 
Instance details

Defined in Fadno.Notation

HasArticulation (Noted n) Source # 
Instance details

Defined in Fadno.Notation

Methods

articulation :: Lens' (Noted n) (Maybe Articulation) Source #

newtype RehearsalMark Source #

Bar rehearsal mark.

Constructors

RehearsalMark 

Fields

Instances

Instances details
IsString RehearsalMark Source # 
Instance details

Defined in Fadno.Notation

Methods

fromString :: String -> RehearsalMark

Monoid RehearsalMark Source # 
Instance details

Defined in Fadno.Notation

Semigroup RehearsalMark Source # 
Instance details

Defined in Fadno.Notation

Generic RehearsalMark Source # 
Instance details

Defined in Fadno.Notation

Associated Types

type Rep RehearsalMark :: Type -> Type

Show RehearsalMark Source # 
Instance details

Defined in Fadno.Notation

Methods

showsPrec :: Int -> RehearsalMark -> ShowS

show :: RehearsalMark -> String

showList :: [RehearsalMark] -> ShowS

Default RehearsalMark Source # 
Instance details

Defined in Fadno.Notation

Methods

def :: RehearsalMark

HasRehearsalMark RehearsalMark Source # 
Instance details

Defined in Fadno.Notation

Eq RehearsalMark Source # 
Instance details

Defined in Fadno.Notation

Ord RehearsalMark Source # 
Instance details

Defined in Fadno.Notation

type Rep RehearsalMark Source # 
Instance details

Defined in Fadno.Notation

type Rep RehearsalMark = D1 ('MetaData "RehearsalMark" "Fadno.Notation" "fadno-1.1.9.1-6k9IpCQmMqwBhBnZDrvdnw" 'True) (C1 ('MetaCons "RehearsalMark" 'PrefixI 'True) (S1 ('MetaSel ('Just "_rehearsalText") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 String)))

class HasRehearsalMark a where Source #

Methods

rehearsalMark :: Lens' a (Maybe RehearsalMark) Source #

Instances

Instances details
HasRehearsalMark RehearsalMark Source # 
Instance details

Defined in Fadno.Notation

HasRehearsalMark (Bar n) Source # 
Instance details

Defined in Fadno.Notation

Methods

rehearsalMark :: Lens' (Bar n) (Maybe RehearsalMark) Source #

newtype Direction Source #

Musical direction.

Constructors

Direction 

Fields

Instances

Instances details
IsString Direction Source # 
Instance details

Defined in Fadno.Notation

Methods

fromString :: String -> Direction

Monoid Direction Source # 
Instance details

Defined in Fadno.Notation

Semigroup Direction Source # 
Instance details

Defined in Fadno.Notation

Methods

(<>) :: Direction -> Direction -> Direction

sconcat :: NonEmpty Direction -> Direction

stimes :: Integral b => b -> Direction -> Direction

Generic Direction Source # 
Instance details

Defined in Fadno.Notation

Associated Types

type Rep Direction :: Type -> Type

Methods

from :: Direction -> Rep Direction x

to :: Rep Direction x -> Direction

Show Direction Source # 
Instance details

Defined in Fadno.Notation

Methods

showsPrec :: Int -> Direction -> ShowS

show :: Direction -> String

showList :: [Direction] -> ShowS

Default Direction Source # 
Instance details

Defined in Fadno.Notation

Methods

def :: Direction

HasDirection Direction Source # 
Instance details

Defined in Fadno.Notation

Methods

direction :: Lens' Direction (Maybe Direction) Source #

Eq Direction Source # 
Instance details

Defined in Fadno.Notation

Methods

(==) :: Direction -> Direction -> Bool

(/=) :: Direction -> Direction -> Bool

Ord Direction Source # 
Instance details

Defined in Fadno.Notation

Methods

compare :: Direction -> Direction -> Ordering

(<) :: Direction -> Direction -> Bool

(<=) :: Direction -> Direction -> Bool

(>) :: Direction -> Direction -> Bool

(>=) :: Direction -> Direction -> Bool

max :: Direction -> Direction -> Direction

min :: Direction -> Direction -> Direction

type Rep Direction Source # 
Instance details

Defined in Fadno.Notation

type Rep Direction = D1 ('MetaData "Direction" "Fadno.Notation" "fadno-1.1.9.1-6k9IpCQmMqwBhBnZDrvdnw" 'True) (C1 ('MetaCons "Direction" 'PrefixI 'True) (S1 ('MetaSel ('Just "_directionText") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 String)))

class HasDirection a where Source #

Methods

direction :: Lens' a (Maybe Direction) Source #

Instances

Instances details
HasDirection Direction Source # 
Instance details

Defined in Fadno.Notation

Methods

direction :: Lens' Direction (Maybe Direction) Source #

HasDirection (Bar n) Source # 
Instance details

Defined in Fadno.Notation

Methods

direction :: Lens' (Bar n) (Maybe Direction) Source #

data Barline Source #

Barline.

Constructors

Double 
Final 

Instances

Instances details
Generic Barline Source # 
Instance details

Defined in Fadno.Notation

Associated Types

type Rep Barline :: Type -> Type

Methods

from :: Barline -> Rep Barline x

to :: Rep Barline x -> Barline

Show Barline Source # 
Instance details

Defined in Fadno.Notation

Methods

showsPrec :: Int -> Barline -> ShowS

show :: Barline -> String

showList :: [Barline] -> ShowS

HasBarline Barline Source # 
Instance details

Defined in Fadno.Notation

Methods

barline :: Lens' Barline (Maybe Barline) Source #

Eq Barline Source # 
Instance details

Defined in Fadno.Notation

Methods

(==) :: Barline -> Barline -> Bool

(/=) :: Barline -> Barline -> Bool

Ord Barline Source # 
Instance details

Defined in Fadno.Notation

Methods

compare :: Barline -> Barline -> Ordering

(<) :: Barline -> Barline -> Bool

(<=) :: Barline -> Barline -> Bool

(>) :: Barline -> Barline -> Bool

(>=) :: Barline -> Barline -> Bool

max :: Barline -> Barline -> Barline

min :: Barline -> Barline -> Barline

type Rep Barline Source # 
Instance details

Defined in Fadno.Notation

type Rep Barline = D1 ('MetaData "Barline" "Fadno.Notation" "fadno-1.1.9.1-6k9IpCQmMqwBhBnZDrvdnw" 'False) (C1 ('MetaCons "Double" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Final" 'PrefixI 'False) (U1 :: Type -> Type))

class HasBarline a where Source #

Methods

barline :: Lens' a (Maybe Barline) Source #

Instances

Instances details
HasBarline Barline Source # 
Instance details

Defined in Fadno.Notation

Methods

barline :: Lens' Barline (Maybe Barline) Source #

HasBarline (Bar n) Source # 
Instance details

Defined in Fadno.Notation

Methods

barline :: Lens' (Bar n) (Maybe Barline) Source #

data Repeats Source #

Constructors

RStart 
REnd 
RBoth 

Instances

Instances details
Generic Repeats Source # 
Instance details

Defined in Fadno.Notation

Associated Types

type Rep Repeats :: Type -> Type

Methods

from :: Repeats -> Rep Repeats x

to :: Rep Repeats x -> Repeats

Show Repeats Source # 
Instance details

Defined in Fadno.Notation

Methods

showsPrec :: Int -> Repeats -> ShowS

show :: Repeats -> String

showList :: [Repeats] -> ShowS

HasRepeats Repeats Source # 
Instance details

Defined in Fadno.Notation

Methods

repeats :: Lens' Repeats (Maybe Repeats) Source #

Eq Repeats Source # 
Instance details

Defined in Fadno.Notation

Methods

(==) :: Repeats -> Repeats -> Bool

(/=) :: Repeats -> Repeats -> Bool

Ord Repeats Source # 
Instance details

Defined in Fadno.Notation

Methods

compare :: Repeats -> Repeats -> Ordering

(<) :: Repeats -> Repeats -> Bool

(<=) :: Repeats -> Repeats -> Bool

(>) :: Repeats -> Repeats -> Bool

(>=) :: Repeats -> Repeats -> Bool

max :: Repeats -> Repeats -> Repeats

min :: Repeats -> Repeats -> Repeats

type Rep Repeats Source # 
Instance details

Defined in Fadno.Notation

type Rep Repeats = D1 ('MetaData "Repeats" "Fadno.Notation" "fadno-1.1.9.1-6k9IpCQmMqwBhBnZDrvdnw" 'False) (C1 ('MetaCons "RStart" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "REnd" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "RBoth" 'PrefixI 'False) (U1 :: Type -> Type)))

class HasRepeats a where Source #

Methods

repeats :: Lens' a (Maybe Repeats) Source #

Instances

Instances details
HasRepeats Repeats Source # 
Instance details

Defined in Fadno.Notation

Methods

repeats :: Lens' Repeats (Maybe Repeats) Source #

HasRepeats (Bar n) Source # 
Instance details

Defined in Fadno.Notation

Methods

repeats :: Lens' (Bar n) (Maybe Repeats) Source #

data Clef Source #

Instances

Instances details
Generic Clef Source # 
Instance details

Defined in Fadno.Notation

Associated Types

type Rep Clef :: Type -> Type

Methods

from :: Clef -> Rep Clef x

to :: Rep Clef x -> Clef

Show Clef Source # 
Instance details

Defined in Fadno.Notation

Methods

showsPrec :: Int -> Clef -> ShowS

show :: Clef -> String

showList :: [Clef] -> ShowS

HasClef Clef Source # 
Instance details

Defined in Fadno.Notation

Methods

clef :: Lens' Clef (Maybe Clef) Source #

Eq Clef Source # 
Instance details

Defined in Fadno.Notation

Methods

(==) :: Clef -> Clef -> Bool

(/=) :: Clef -> Clef -> Bool

Ord Clef Source # 
Instance details

Defined in Fadno.Notation

Methods

compare :: Clef -> Clef -> Ordering

(<) :: Clef -> Clef -> Bool

(<=) :: Clef -> Clef -> Bool

(>) :: Clef -> Clef -> Bool

(>=) :: Clef -> Clef -> Bool

max :: Clef -> Clef -> Clef

min :: Clef -> Clef -> Clef

type Rep Clef Source # 
Instance details

Defined in Fadno.Notation

type Rep Clef = D1 ('MetaData "Clef" "Fadno.Notation" "fadno-1.1.9.1-6k9IpCQmMqwBhBnZDrvdnw" 'False) ((C1 ('MetaCons "TrebleClef" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BassClef" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "AltoClef" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "PercClef" 'PrefixI 'False) (U1 :: Type -> Type)))

class HasClef a where Source #

Methods

clef :: Lens' a (Maybe Clef) Source #

Instances

Instances details
HasClef Clef Source # 
Instance details

Defined in Fadno.Notation

Methods

clef :: Lens' Clef (Maybe Clef) Source #

HasClef (Bar n) Source # 
Instance details

Defined in Fadno.Notation

Methods

clef :: Lens' (Bar n) (Maybe Clef) Source #

data Beam Source #

Adapts musicxml Beams where beams are labeled "1" for eighth beam etc, where instead it is a list implying the first element is eighth etc.

Instances

Instances details
Bounded Beam Source # 
Instance details

Defined in Fadno.Notation

Enum Beam Source # 
Instance details

Defined in Fadno.Notation

Methods

succ :: Beam -> Beam

pred :: Beam -> Beam

toEnum :: Int -> Beam

fromEnum :: Beam -> Int

enumFrom :: Beam -> [Beam]

enumFromThen :: Beam -> Beam -> [Beam]

enumFromTo :: Beam -> Beam -> [Beam]

enumFromThenTo :: Beam -> Beam -> Beam -> [Beam]

Show Beam Source # 
Instance details

Defined in Fadno.Notation

Methods

showsPrec :: Int -> Beam -> ShowS

show :: Beam -> String

showList :: [Beam] -> ShowS

Eq Beam Source # 
Instance details

Defined in Fadno.Notation

Methods

(==) :: Beam -> Beam -> Bool

(/=) :: Beam -> Beam -> Bool

Ord Beam Source # 
Instance details

Defined in Fadno.Notation

Methods

compare :: Beam -> Beam -> Ordering

(<) :: Beam -> Beam -> Bool

(<=) :: Beam -> Beam -> Bool

(>) :: Beam -> Beam -> Bool

(>=) :: Beam -> Beam -> Bool

max :: Beam -> Beam -> Beam

min :: Beam -> Beam -> Beam

HasBeams [Beam] Source # 
Instance details

Defined in Fadno.Notation

Methods

beams :: Lens' [Beam] [Beam] Source #

class HasBeams a where Source #

Methods

beams :: Lens' a [Beam] Source #

Instances

Instances details
HasBeams (Noted n) Source # 
Instance details

Defined in Fadno.Notation

Methods

beams :: Lens' (Noted n) [Beam] Source #

HasBeams [Beam] Source # 
Instance details

Defined in Fadno.Notation

Methods

beams :: Lens' [Beam] [Beam] Source #

class HasVoice a where Source #

Methods

voice :: Lens' a (Maybe String) Source #

Instances

Instances details
HasVoice (Noted n) Source # 
Instance details

Defined in Fadno.Notation

Methods

voice :: Lens' (Noted n) (Maybe String) Source #

newtype Part a Source #

Part identifier, prefers Num or IsString values.

Constructors

Part 

Fields

Instances

Instances details
Foldable Part Source # 
Instance details

Defined in Fadno.Notation

Methods

fold :: Monoid m => Part m -> m

foldMap :: Monoid m => (a -> m) -> Part a -> m

foldMap' :: Monoid m => (a -> m) -> Part a -> m

foldr :: (a -> b -> b) -> b -> Part a -> b

foldr' :: (a -> b -> b) -> b -> Part a -> b

foldl :: (b -> a -> b) -> b -> Part a -> b

foldl' :: (b -> a -> b) -> b -> Part a -> b

foldr1 :: (a -> a -> a) -> Part a -> a

foldl1 :: (a -> a -> a) -> Part a -> a

toList :: Part a -> [a]

null :: Part a -> Bool

length :: Part a -> Int

elem :: Eq a => a -> Part a -> Bool

maximum :: Ord a => Part a -> a

minimum :: Ord a => Part a -> a

sum :: Num a => Part a -> a

product :: Num a => Part a -> a

Traversable Part Source # 
Instance details

Defined in Fadno.Notation

Methods

traverse :: Applicative f => (a -> f b) -> Part a -> f (Part b)

sequenceA :: Applicative f => Part (f a) -> f (Part a)

mapM :: Monad m => (a -> m b) -> Part a -> m (Part b)

sequence :: Monad m => Part (m a) -> m (Part a)

Functor Part Source # 
Instance details

Defined in Fadno.Notation

Methods

fmap :: (a -> b) -> Part a -> Part b

(<$) :: a -> Part b -> Part a

IsString a => IsString (Part a) Source # 
Instance details

Defined in Fadno.Notation

Methods

fromString :: String -> Part a

Bounded a => Bounded (Part a) Source # 
Instance details

Defined in Fadno.Notation

Methods

minBound :: Part a

maxBound :: Part a

Generic (Part a) Source # 
Instance details

Defined in Fadno.Notation

Associated Types

type Rep (Part a) :: Type -> Type

Methods

from :: Part a -> Rep (Part a) x

to :: Rep (Part a) x -> Part a

Num a => Num (Part a) Source # 
Instance details

Defined in Fadno.Notation

Methods

(+) :: Part a -> Part a -> Part a

(-) :: Part a -> Part a -> Part a

(*) :: Part a -> Part a -> Part a

negate :: Part a -> Part a

abs :: Part a -> Part a

signum :: Part a -> Part a

fromInteger :: Integer -> Part a

Real a => Real (Part a) Source # 
Instance details

Defined in Fadno.Notation

Methods

toRational :: Part a -> Rational

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

Defined in Fadno.Notation

Methods

showsPrec :: Int -> Part a -> ShowS

show :: Part a -> String

showList :: [Part a] -> ShowS

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

Defined in Fadno.Notation

Methods

(==) :: Part a -> Part a -> Bool

(/=) :: Part a -> Part a -> Bool

Ord a => Ord (Part a) Source # 
Instance details

Defined in Fadno.Notation

Methods

compare :: Part a -> Part a -> Ordering

(<) :: Part a -> Part a -> Bool

(<=) :: Part a -> Part a -> Bool

(>) :: Part a -> Part a -> Bool

(>=) :: Part a -> Part a -> Bool

max :: Part a -> Part a -> Part a

min :: Part a -> Part a -> Part a

type Rep (Part a) Source # 
Instance details

Defined in Fadno.Notation

type Rep (Part a) = D1 ('MetaData "Part" "Fadno.Notation" "fadno-1.1.9.1-6k9IpCQmMqwBhBnZDrvdnw" 'True) (C1 ('MetaCons "Part" 'PrefixI 'True) (S1 ('MetaSel ('Just "_partIdx") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a)))

partIdx :: forall a a. Iso (Part a) (Part a) a a Source #

class HasPart a b | a -> b where Source #

Methods

part :: Lens' a (Maybe (Part b)) Source #

mshow :: Show a => Getter s (Maybe a) -> String -> s -> String Source #

Lensy show of a Maybe field, given a Getter and its name.

mshows :: s -> String -> [s -> String] -> String Source #

concatMap show functions with a prelude.

type Note' p d = Noted (Note p d) Source #

Note with notations.

data Noted n Source #

Constructors

Noted 

Fields

Instances

Instances details
Foldable Noted Source # 
Instance details

Defined in Fadno.Notation

Methods

fold :: Monoid m => Noted m -> m

foldMap :: Monoid m => (a -> m) -> Noted a -> m

foldMap' :: Monoid m => (a -> m) -> Noted a -> m

foldr :: (a -> b -> b) -> b -> Noted a -> b

foldr' :: (a -> b -> b) -> b -> Noted a -> b

foldl :: (b -> a -> b) -> b -> Noted a -> b

foldl' :: (b -> a -> b) -> b -> Noted a -> b

foldr1 :: (a -> a -> a) -> Noted a -> a

foldl1 :: (a -> a -> a) -> Noted a -> a

toList :: Noted a -> [a]

null :: Noted a -> Bool

length :: Noted a -> Int

elem :: Eq a => a -> Noted a -> Bool

maximum :: Ord a => Noted a -> a

minimum :: Ord a => Noted a -> a

sum :: Num a => Noted a -> a

product :: Num a => Noted a -> a

Traversable Noted Source # 
Instance details

Defined in Fadno.Notation

Methods

traverse :: Applicative f => (a -> f b) -> Noted a -> f (Noted b)

sequenceA :: Applicative f => Noted (f a) -> f (Noted a)

mapM :: Monad m => (a -> m b) -> Noted a -> m (Noted b)

sequence :: Monad m => Noted (m a) -> m (Noted a)

Functor Noted Source # 
Instance details

Defined in Fadno.Notation

Methods

fmap :: (a -> b) -> Noted a -> Noted b

(<$) :: a -> Noted b -> Noted a

Generic (Noted n) Source # 
Instance details

Defined in Fadno.Notation

Associated Types

type Rep (Noted n) :: Type -> Type

Methods

from :: Noted n -> Rep (Noted n) x

to :: Rep (Noted n) x -> Noted n

Show n => Show (Noted n) Source # 
Instance details

Defined in Fadno.Notation

Methods

showsPrec :: Int -> Noted n -> ShowS

show :: Noted n -> String

showList :: [Noted n] -> ShowS

HasArticulation (Noted n) Source # 
Instance details

Defined in Fadno.Notation

Methods

articulation :: Lens' (Noted n) (Maybe Articulation) Source #

HasBeams (Noted n) Source # 
Instance details

Defined in Fadno.Notation

Methods

beams :: Lens' (Noted n) [Beam] Source #

HasSlur (Noted n) Source # 
Instance details

Defined in Fadno.Notation

Methods

slur :: Lens' (Noted n) (Maybe Slur) Source #

HasTie (Noted n) Source # 
Instance details

Defined in Fadno.Notation

Methods

tie :: Lens' (Noted n) (Maybe Tie) Source #

HasVoice (Noted n) Source # 
Instance details

Defined in Fadno.Notation

Methods

voice :: Lens' (Noted n) (Maybe String) Source #

Eq n => Eq (Noted n) Source # 
Instance details

Defined in Fadno.Notation

Methods

(==) :: Noted n -> Noted n -> Bool

(/=) :: Noted n -> Noted n -> Bool

HasNote (Note' p d) p d Source # 
Instance details

Defined in Fadno.Notation

Methods

note :: Lens' (Note' p d) (Note p d) Source #

fromNote :: HasNote n p d => n -> Note' p d Source #

notePitch :: Lens' (Note' p d) p Source #

noteDur :: Lens' (Note' p d) d Source #

type Rep (Noted n) Source # 
Instance details

Defined in Fadno.Notation

type Rep (Noted n) = D1 ('MetaData "Noted" "Fadno.Notation" "fadno-1.1.9.1-6k9IpCQmMqwBhBnZDrvdnw" 'False) (C1 ('MetaCons "Noted" 'PrefixI 'True) ((S1 ('MetaSel ('Just "_nNote") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 n) :*: (S1 ('MetaSel ('Just "_nTie") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Tie)) :*: S1 ('MetaSel ('Just "_nSlur") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Slur)))) :*: (S1 ('MetaSel ('Just "_nArticulation") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Articulation)) :*: (S1 ('MetaSel ('Just "_nBeams") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [Beam]) :*: S1 ('MetaSel ('Just "_nVoice") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe String))))))

nVoice :: forall n. Lens' (Noted n) (Maybe String) Source #

nTie :: forall n. Lens' (Noted n) (Maybe Tie) Source #

nSlur :: forall n. Lens' (Noted n) (Maybe Slur) Source #

nNote :: forall n n. Lens (Noted n) (Noted n) n n Source #

nBeams :: forall n. Lens' (Noted n) [Beam] Source #

nArticulation :: forall n. Lens' (Noted n) (Maybe Articulation) Source #

note' :: Note p d -> Note' p d Source #

Note smart ctor, used in Show.

noted :: n -> Noted n Source #

testNote :: Note' [Int] Int Source #

data Bar n Source #

Bar as list of notes, with notations.

Constructors

Bar 

Fields

Instances

Instances details
Foldable Bar Source # 
Instance details

Defined in Fadno.Notation

Methods

fold :: Monoid m => Bar m -> m

foldMap :: Monoid m => (a -> m) -> Bar a -> m

foldMap' :: Monoid m => (a -> m) -> Bar a -> m

foldr :: (a -> b -> b) -> b -> Bar a -> b

foldr' :: (a -> b -> b) -> b -> Bar a -> b

foldl :: (b -> a -> b) -> b -> Bar a -> b

foldl' :: (b -> a -> b) -> b -> Bar a -> b

foldr1 :: (a -> a -> a) -> Bar a -> a

foldl1 :: (a -> a -> a) -> Bar a -> a

toList :: Bar a -> [a]

null :: Bar a -> Bool

length :: Bar a -> Int

elem :: Eq a => a -> Bar a -> Bool

maximum :: Ord a => Bar a -> a

minimum :: Ord a => Bar a -> a

sum :: Num a => Bar a -> a

product :: Num a => Bar a -> a

Traversable Bar Source # 
Instance details

Defined in Fadno.Notation

Methods

traverse :: Applicative f => (a -> f b) -> Bar a -> f (Bar b)

sequenceA :: Applicative f => Bar (f a) -> f (Bar a)

mapM :: Monad m => (a -> m b) -> Bar a -> m (Bar b)

sequence :: Monad m => Bar (m a) -> m (Bar a)

Functor Bar Source # 
Instance details

Defined in Fadno.Notation

Methods

fmap :: (a -> b) -> Bar a -> Bar b

(<$) :: a -> Bar b -> Bar a

Monoid (Bar n) Source # 
Instance details

Defined in Fadno.Notation

Methods

mempty :: Bar n

mappend :: Bar n -> Bar n -> Bar n

mconcat :: [Bar n] -> Bar n

Semigroup (Bar n) Source # 
Instance details

Defined in Fadno.Notation

Methods

(<>) :: Bar n -> Bar n -> Bar n

sconcat :: NonEmpty (Bar n) -> Bar n

stimes :: Integral b => b -> Bar n -> Bar n

Generic (Bar n) Source # 
Instance details

Defined in Fadno.Notation

Associated Types

type Rep (Bar n) :: Type -> Type

Methods

from :: Bar n -> Rep (Bar n) x

to :: Rep (Bar n) x -> Bar n

Show n => Show (Bar n) Source # 
Instance details

Defined in Fadno.Notation

Methods

showsPrec :: Int -> Bar n -> ShowS

show :: Bar n -> String

showList :: [Bar n] -> ShowS

Default (Bar n) Source # 
Instance details

Defined in Fadno.Notation

Methods

def :: Bar n

HasBarline (Bar n) Source # 
Instance details

Defined in Fadno.Notation

Methods

barline :: Lens' (Bar n) (Maybe Barline) Source #

HasClef (Bar n) Source # 
Instance details

Defined in Fadno.Notation

Methods

clef :: Lens' (Bar n) (Maybe Clef) Source #

HasDirection (Bar n) Source # 
Instance details

Defined in Fadno.Notation

Methods

direction :: Lens' (Bar n) (Maybe Direction) Source #

HasRehearsalMark (Bar n) Source # 
Instance details

Defined in Fadno.Notation

Methods

rehearsalMark :: Lens' (Bar n) (Maybe RehearsalMark) Source #

HasRepeats (Bar n) Source # 
Instance details

Defined in Fadno.Notation

Methods

repeats :: Lens' (Bar n) (Maybe Repeats) Source #

HasTimeSignature (Bar n) Source # 
Instance details

Defined in Fadno.Notation

Methods

timeSignature :: Lens' (Bar n) (Maybe TimeSignature) Source #

Eq n => Eq (Bar n) Source # 
Instance details

Defined in Fadno.Notation

Methods

(==) :: Bar n -> Bar n -> Bool

(/=) :: Bar n -> Bar n -> Bool

Cons (Bar n) (Bar n) n n Source # 
Instance details

Defined in Fadno.Notation

Methods

_Cons :: Prism (Bar n) (Bar n) (n, Bar n) (n, Bar n)

Snoc (Bar n) (Bar n) n n Source # 
Instance details

Defined in Fadno.Notation

Methods

_Snoc :: Prism (Bar n) (Bar n) (Bar n, n) (Bar n, n)

type Rep (Bar n) Source # 
Instance details

Defined in Fadno.Notation

type Rep (Bar n) = D1 ('MetaData "Bar" "Fadno.Notation" "fadno-1.1.9.1-6k9IpCQmMqwBhBnZDrvdnw" 'False) (C1 ('MetaCons "Bar" 'PrefixI 'True) ((S1 ('MetaSel ('Just "_bNotes") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Seq n)) :*: (S1 ('MetaSel ('Just "_bRehearsalMark") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe RehearsalMark)) :*: S1 ('MetaSel ('Just "_bDirection") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Direction)))) :*: ((S1 ('MetaSel ('Just "_bBarline") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Barline)) :*: S1 ('MetaSel ('Just "_bRepeats") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Repeats))) :*: (S1 ('MetaSel ('Just "_bTimeSignature") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe TimeSignature)) :*: S1 ('MetaSel ('Just "_bClef") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Clef))))))

bTimeSignature :: forall n. Lens' (Bar n) (Maybe TimeSignature) Source #

bRepeats :: forall n. Lens' (Bar n) (Maybe Repeats) Source #

bRehearsalMark :: forall n. Lens' (Bar n) (Maybe RehearsalMark) Source #

bNotes :: forall n n. Lens (Bar n) (Bar n) (Seq n) (Seq n) Source #

bDirection :: forall n. Lens' (Bar n) (Maybe Direction) Source #

bClef :: forall n. Lens' (Bar n) (Maybe Clef) Source #

bBarline :: forall n. Lens' (Bar n) (Maybe Barline) Source #

bar :: [n] -> Bar n Source #

Bar smart ctor, used in Show.

testBar :: Bar (Note [Int] Int) Source #