packages feed

haskgame 0.0.5 → 0.0.6

raw patch · 3 files changed

+15/−4 lines, 3 filesPVP: major bump suggested

API removals or changes: PVP suggests a major version bump

API changes (from Hackage documentation)

- Graphics.UI.HaskGame.Vector2: instance (Eq a) => Eq (Vector2 a)
- Graphics.UI.HaskGame.Vector2: instance (Ord a) => Ord (Vector2 a)
- Graphics.UI.HaskGame.Vector2: instance (Read a) => Read (Vector2 a)
- Graphics.UI.HaskGame.Vector2: instance (Show a) => Show (Vector2 a)
+ Graphics.UI.HaskGame.Vector2: (***) :: Endo a -> Endo a -> Endo (Vector2 a)
+ Graphics.UI.HaskGame.Vector2: both :: Endo a -> Endo (Vector2 a)
+ Graphics.UI.HaskGame.Vector2: instance Eq a => Eq (Vector2 a)
+ Graphics.UI.HaskGame.Vector2: instance Ord a => Ord (Vector2 a)
+ Graphics.UI.HaskGame.Vector2: instance Read a => Read (Vector2 a)
+ Graphics.UI.HaskGame.Vector2: instance Show a => Show (Vector2 a)
+ Graphics.UI.HaskGame.Vector2: vector2 :: (a -> a -> b) -> Vector2 a -> b
- Graphics.UI.HaskGame: setVideoMode :: Int -> Int -> Int -> IO Surface
+ Graphics.UI.HaskGame: setVideoMode :: Vector2 Int -> Int -> IO Surface

Files

haskgame.cabal view
@@ -1,5 +1,5 @@ Name:                haskgame-Version:             0.0.5+Version:             0.0.6 Cabal-Version:       >= 1.2 Synopsis:            Haskell game library. Category:            graphics
src/Graphics/UI/HaskGame.hs view
@@ -77,5 +77,5 @@ surfaceSize surface = Vector2 (SDL.surfaceGetWidth surface)                               (SDL.surfaceGetHeight surface) -setVideoMode :: Int -> Int -> Int -> IO Surface-setVideoMode xres yres colorDepth = SDL.setVideoMode xres yres colorDepth [SDL.DoubleBuf]+setVideoMode :: Vector2 Int -> Int -> IO Surface+setVideoMode (Vector2 xres yres) colorDepth = SDL.setVideoMode xres yres colorDepth [SDL.DoubleBuf]
src/Graphics/UI/HaskGame/Vector2.hs view
@@ -2,12 +2,14 @@  module Graphics.UI.HaskGame.Vector2     (Vector2(Vector2)-    ,first,second+    ,vector2+    ,first,second,(***),both     ,fst,snd) where  import Prelude hiding (fst, snd) import Control.Applicative(Applicative(..), liftA2)+import Control.Monad(join)  data Vector2 a = Vector2 !a !a   -- Note the Ord instance is obviously not a mathematical one@@ -28,6 +30,15 @@  second :: Endo a -> Endo (Vector2 a) second f (Vector2 x y) = Vector2 x (f y)++(***) :: Endo a -> Endo a -> Endo (Vector2 a)+(f *** g) (Vector2 x y) = Vector2 (f x) (g y)++vector2 :: (a -> a -> b) -> Vector2 a -> b+vector2 f (Vector2 x y) = f x y++both :: Endo a -> Endo (Vector2 a)+both = join (***)  instance Functor Vector2 where   fmap f (Vector2 x y) = Vector2 (f x) (f y)