friday-devil 0.1.0.1 → 0.1.1.0
raw patch · 2 files changed
+11/−33 lines, 2 filesdep ~bytestringPVP: major bump suggested
API removals or changes: PVP suggests a major version bump
Dependency ranges changed: bytestring
API changes (from Hackage documentation)
- Vision.Image.Storage.DevIL: instance Convertible StorageImage Grey
- Vision.Image.Storage.DevIL: instance Convertible StorageImage GreyDelayed
- Vision.Image.Storage.DevIL: instance Convertible StorageImage RGB
- Vision.Image.Storage.DevIL: instance Convertible StorageImage RGBA
- Vision.Image.Storage.DevIL: instance Convertible StorageImage RGBADelayed
- Vision.Image.Storage.DevIL: instance Convertible StorageImage RGBDelayed
+ Vision.Image.Storage.DevIL: instance (Convertible Grey i, Convertible RGB i, Convertible RGBA i) => Convertible StorageImage i
Files
- friday-devil.cabal +3/−2
- src/Vision/Image/Storage/DevIL.hsc +8/−31
friday-devil.cabal view
@@ -2,7 +2,7 @@ -- +-+------- breaking API changes -- | | +----- non-breaking API additions -- | | | +--- code changes with no API change-version: 0.1.0.1+version: 0.1.1.0 synopsis: Uses the DevIL C library to read and write images from and to files and memory buffers. homepage: https://github.com/RaphaelJ/friday-devil@@ -35,9 +35,10 @@ ghc-options: -Wall -O2 hs-source-dirs: src/ default-language: Haskell2010+ default-extensions: UndecidableInstances build-depends: base >= 4 && < 5- , bytestring >= 0.10 && < 1+ , bytestring >= 0.10.2.0 && < 1 , convertible >= 1 && < 2 , deepseq >= 1.3 && < 2 , friday >= 0.2 && < 0.3
src/Vision/Image/Storage/DevIL.hsc view
@@ -53,11 +53,7 @@ import qualified Data.ByteString as BS import qualified Data.ByteString.Unsafe as BS -import Vision.Image.Class (nChannels)-import Vision.Image.Grey (Grey, GreyDelayed)-import Vision.Image.RGBA (RGBA, RGBADelayed)-import Vision.Image.RGB (RGB, RGBDelayed)-import Vision.Image.Type (Manifest (..), delay)+import Vision.Image (Manifest (..), Grey, RGB, RGBA, nChannels) import Vision.Primitive (Z (..), (:.) (..), ix2) import Vision.Image.Storage.DevIL.ImageType@@ -90,45 +86,26 @@ instance Convertible StorageImage StorageImage where safeConvert = Right+ {-# INLINE safeConvert #-} instance Convertible Grey StorageImage where safeConvert = Right . GreyStorage+ {-# INLINE safeConvert #-} instance Convertible RGBA StorageImage where safeConvert = Right . RGBAStorage+ {-# INLINE safeConvert #-} instance Convertible RGB StorageImage where safeConvert = Right . RGBStorage--instance Convertible StorageImage Grey where- safeConvert (GreyStorage img) = Right img- safeConvert (RGBAStorage img) = Right $ convert img- safeConvert (RGBStorage img) = Right $ convert img--instance Convertible StorageImage RGBA where- safeConvert (GreyStorage img) = Right $ convert img- safeConvert (RGBAStorage img) = Right img- safeConvert (RGBStorage img) = Right $ convert img+ {-# INLINE safeConvert #-} -instance Convertible StorageImage RGB where+instance (Convertible Grey i, Convertible RGB i, Convertible RGBA i)+ => Convertible StorageImage i where safeConvert (GreyStorage img) = Right $ convert img safeConvert (RGBAStorage img) = Right $ convert img- safeConvert (RGBStorage img) = Right img--instance Convertible StorageImage GreyDelayed where- safeConvert (GreyStorage img) = Right $ delay img- safeConvert (RGBAStorage img) = Right $ convert img safeConvert (RGBStorage img) = Right $ convert img--instance Convertible StorageImage RGBADelayed where- safeConvert (GreyStorage img) = Right $ convert img- safeConvert (RGBAStorage img) = Right $ delay img- safeConvert (RGBStorage img) = Right $ convert img--instance Convertible StorageImage RGBDelayed where- safeConvert (GreyStorage img) = Right $ convert img- safeConvert (RGBAStorage img) = Right $ convert img- safeConvert (RGBStorage img) = Right $ delay img+ {-# INLINE safeConvert #-} instance NFData StorageImage where rnf !(GreyStorage img) = rnf img