packages feed

music-score 1.3 → 1.3.1

raw patch · 2 files changed

+20/−6 lines, 2 filesPVP: major bump suggested

API removals or changes: PVP suggests a major version bump

API changes (from Hackage documentation)

+ Music.Score.Pitch: down :: (HasPitch a, Functor s, AffineSpace p, p ~ Pitch a) => Diff p -> s a -> s a
+ Music.Score.Pitch: up :: (HasPitch a, Functor s, AffineSpace p, p ~ Pitch a) => Diff p -> s a -> s a
- Music.Score.Pitch: getPitches :: (HasPitch a, Eq v, v ~ Pitch a, Foldable s) => s a -> [Pitch a]
+ Music.Score.Pitch: getPitches :: (HasPitch a, Eq v, v ~ Pitch a, Foldable s, p ~ Pitch a) => s a -> [p]
- Music.Score.Pitch: modifyPitches :: (HasPitch a, Functor s) => (Pitch a -> Pitch a) -> s a -> s a
+ Music.Score.Pitch: modifyPitches :: (HasPitch a, Functor s, p ~ Pitch a) => (p -> p) -> s a -> s a
- Music.Score.Pitch: setPitches :: (HasPitch a, Functor s) => Pitch a -> s a -> s a
+ Music.Score.Pitch: setPitches :: (HasPitch a, Functor s, p ~ Pitch a) => p -> s a -> s a

Files

music-score.cabal view
@@ -1,7 +1,7 @@  name:               music-score-version:            1.3-cabal-version:      >= 1.2+version:            1.3.1+cabal-version:      >= 1.10 author:             Hans Hoglund maintainer:         Hans Hoglund license:            BSD3@@ -16,6 +16,10 @@          This library is part of the Music Suite, see <http://musicsuite.github.com>. +source-repository head+  type:             git+  location:         git://github.com/hanshoglund/music-score.git+   library                         build-depends:          base >= 4 && < 5,@@ -43,6 +47,7 @@         reenact      hs-source-dirs: src+    default-language: Haskell2010     exposed-modules:         Music.Time         Music.Time.Time
src/Music/Score/Pitch.hs view
@@ -28,6 +28,8 @@         getPitches,         setPitches,         modifyPitches,+        up,+        down,   ) where  import Control.Monad (ap, mfilter, join, liftM, MonadPlus(..))@@ -91,7 +93,7 @@ -- -- > Score a -> [Pitch] ---getPitches :: (HasPitch a, Eq v, v ~ Pitch a, Foldable s) => s a -> [Pitch a]+getPitches :: (HasPitch a, Eq v, v ~ Pitch a, Foldable s, p ~ Pitch a) => s a -> [p] getPitches = List.nub . fmap getPitch . toList  -- |@@ -99,7 +101,7 @@ -- -- > Pitch -> Score a -> Score a ---setPitches :: (HasPitch a, Functor s) => Pitch a -> s a -> s a+setPitches :: (HasPitch a, Functor s, p ~ Pitch a) => p -> s a -> s a setPitches n = fmap (setPitch n)  -- |@@ -107,6 +109,13 @@ -- -- > (Pitch -> Pitch) -> Score a -> Score a ---modifyPitches :: (HasPitch a, Functor s) => (Pitch a -> Pitch a) -> s a -> s a-modifyPitches n = fmap (modifyPitch n)+modifyPitches :: (HasPitch a, Functor s, p ~ Pitch a) => (p -> p) -> s a -> s a+modifyPitches f = fmap (modifyPitch f)++up :: (HasPitch a, Functor s, AffineSpace p, p ~ Pitch a) => Diff p -> s a -> s a+up a = modifyPitches (.+^ a)++down :: (HasPitch a, Functor s, AffineSpace p, p ~ Pitch a) => Diff p -> s a -> s a+down a = modifyPitches (.-^ a)+