netlib-carray 0.0.1.1 → 0.1
raw patch · 2 files changed
+15/−16 lines, 2 filesdep +arraydep ~transformersPVP ok
version bump matches the API change (PVP)
Dependencies added: array
Dependency ranges changed: transformers
API changes (from Hackage documentation)
+ Numeric.Netlib.CArray.Utility: freezeArray :: (Ix i, Storable e) => IOCArray i e -> IO (CArray i e)
- Numeric.Netlib.CArray.Utility: (^!) :: (Num a) => a -> Int -> a
+ Numeric.Netlib.CArray.Utility: (^!) :: Num a => a -> Int -> a
- Numeric.Netlib.CArray.Utility: alloca :: Storable a => FortranIO r Ptr a
+ Numeric.Netlib.CArray.Utility: alloca :: Storable a => FortranIO r (Ptr a)
- Numeric.Netlib.CArray.Utility: allocaArray :: Storable a => Int -> FortranIO r Ptr a
+ Numeric.Netlib.CArray.Utility: allocaArray :: Storable a => Int -> FortranIO r (Ptr a)
- Numeric.Netlib.CArray.Utility: array :: (Storable a) => CArray i a -> FortranIO r (Ptr a)
+ Numeric.Netlib.CArray.Utility: array :: Storable a => CArray i a -> FortranIO r (Ptr a)
- Numeric.Netlib.CArray.Utility: bool :: () => Bool -> FortranIO r Ptr Bool
+ Numeric.Netlib.CArray.Utility: bool :: () => Bool -> FortranIO r (Ptr Bool)
- Numeric.Netlib.CArray.Utility: char :: () => Char -> FortranIO r Ptr CChar
+ Numeric.Netlib.CArray.Utility: char :: () => Char -> FortranIO r (Ptr CChar)
- Numeric.Netlib.CArray.Utility: cint :: () => Int -> FortranIO r Ptr CInt
+ Numeric.Netlib.CArray.Utility: cint :: () => Int -> FortranIO r (Ptr CInt)
- Numeric.Netlib.CArray.Utility: complex :: Real a => Complex a -> FortranIO r Ptr Complex a
+ Numeric.Netlib.CArray.Utility: complex :: Real a => Complex a -> FortranIO r (Ptr (Complex a))
- Numeric.Netlib.CArray.Utility: complexDouble :: () => Complex Double -> FortranIO r Ptr Complex Double
+ Numeric.Netlib.CArray.Utility: complexDouble :: () => Complex Double -> FortranIO r (Ptr (Complex Double))
- Numeric.Netlib.CArray.Utility: complexFloat :: () => Complex Float -> FortranIO r Ptr Complex Float
+ Numeric.Netlib.CArray.Utility: complexFloat :: () => Complex Float -> FortranIO r (Ptr (Complex Float))
- Numeric.Netlib.CArray.Utility: double :: () => Double -> FortranIO r Ptr Double
+ Numeric.Netlib.CArray.Utility: double :: () => Double -> FortranIO r (Ptr Double)
- Numeric.Netlib.CArray.Utility: float :: () => Float -> FortranIO r Ptr Float
+ Numeric.Netlib.CArray.Utility: float :: () => Float -> FortranIO r (Ptr Float)
- Numeric.Netlib.CArray.Utility: ioarray :: (Storable a) => IOCArray i a -> FortranIO r (Ptr a)
+ Numeric.Netlib.CArray.Utility: ioarray :: Storable a => IOCArray i a -> FortranIO r (Ptr a)
- Numeric.Netlib.CArray.Utility: newArray :: (Ix i, Storable e) => (i, i) -> IO (CArray i e)
+ Numeric.Netlib.CArray.Utility: newArray :: (Ix i, Storable e) => (i, i) -> IO (IOCArray i e)
- Numeric.Netlib.CArray.Utility: newArray1 :: (Storable e) => Int -> IO (CArray Int e)
+ Numeric.Netlib.CArray.Utility: newArray1 :: Storable e => Int -> IO (IOCArray Int e)
- Numeric.Netlib.CArray.Utility: newArray2 :: (Storable e) => Int -> Int -> IO (CArray (Int, Int) e)
+ Numeric.Netlib.CArray.Utility: newArray2 :: Storable e => Int -> Int -> IO (IOCArray (Int, Int) e)
- Numeric.Netlib.CArray.Utility: newArray3 :: (Storable e) => Int -> Int -> Int -> IO (CArray (Int, Int, Int) e)
+ Numeric.Netlib.CArray.Utility: newArray3 :: Storable e => Int -> Int -> Int -> IO (IOCArray (Int, Int, Int) e)
- Numeric.Netlib.CArray.Utility: number :: Floating a => a -> FortranIO r Ptr a
+ Numeric.Netlib.CArray.Utility: number :: Floating a => a -> FortranIO r (Ptr a)
- Numeric.Netlib.CArray.Utility: real :: Real a => a -> FortranIO r Ptr a
+ Numeric.Netlib.CArray.Utility: real :: Real a => a -> FortranIO r (Ptr a)
- Numeric.Netlib.CArray.Utility: run :: () => FortranIO r IO a -> FortranIO r a
+ Numeric.Netlib.CArray.Utility: run :: () => FortranIO r (IO a) -> FortranIO r a
- Numeric.Netlib.CArray.Utility: sizes1 :: (Ix i) => (i, i) -> Int
+ Numeric.Netlib.CArray.Utility: sizes1 :: Ix i => (i, i) -> Int
- Numeric.Netlib.CArray.Utility: string :: () => String -> FortranIO r Ptr CChar
+ Numeric.Netlib.CArray.Utility: string :: () => String -> FortranIO r (Ptr CChar)
- Numeric.Netlib.CArray.Utility: type FortranIO r = ContT * r IO
+ Numeric.Netlib.CArray.Utility: type FortranIO r = ContT r IO
Files
- netlib-carray.cabal +3/−2
- src/Numeric/Netlib/CArray/Utility.hs +12/−14
netlib-carray.cabal view
@@ -1,5 +1,5 @@ Name: netlib-carray-Version: 0.0.1.1+Version: 0.1 License: BSD3 License-File: LICENSE Author: Henning Thielemann <haskell@henning-thielemann.de>@@ -20,7 +20,7 @@ Build-Type: Simple Source-Repository this- Tag: 0.0.1.1+ Tag: 0.1 Type: darcs Location: http://hub.darcs.net/thielema/netlib-carray/ @@ -32,6 +32,7 @@ Build-Depends: netlib-ffi >=0.0.1 && <0.2, carray >=0.1.5 && <0.2,+ array >=0.4 && <0.6, transformers >=0.4 && <0.6, base >=4.5 && <5
src/Numeric/Netlib/CArray/Utility.hs view
@@ -23,6 +23,7 @@ newArray1, newArray2, newArray3,+ freezeArray, sizes1, sizes2, sizes3,@@ -37,7 +38,9 @@ import qualified Numeric.Netlib.Utility as Util import Numeric.Netlib.Utility (FortranIO) +import qualified Data.Array.IOCArray as IOCArray import qualified Data.Array.CArray as CArray+import qualified Data.Array.Unsafe as UnsafeArray import Data.Array.IOCArray (IOCArray, withIOCArray) import Data.Array.CArray (CArray, withCArray, Ix) @@ -49,27 +52,22 @@ import Control.Applicative ((<$>)) -_match :: (Show a, Eq a) => String -> String -> a -> [a] -> a-_match func name a as =- case filter (a/=) as of- [] -> a- adiff:_ ->- error $- func ++ ": mismatching " ++ name ++ ": " ++- show a ++ " /= " ++ show adiff --newArray :: (Ix i, Storable e) => (i, i) -> IO (CArray i e)-newArray bnds = CArray.createCArray bnds (\_ -> return ())+newArray :: (Ix i, Storable e) => (i, i) -> IO (IOCArray i e)+newArray bnds = IOCArray.newArray_ bnds -newArray1 :: (Storable e) => Int -> IO (CArray Int e)+newArray1 :: (Storable e) => Int -> IO (IOCArray Int e) newArray1 m = newArray (0, m-1) -newArray2 :: (Storable e) => Int -> Int -> IO (CArray (Int,Int) e)+newArray2 :: (Storable e) => Int -> Int -> IO (IOCArray (Int,Int) e) newArray2 m n = newArray ((0,0), (m-1,n-1)) -newArray3 :: (Storable e) => Int -> Int -> Int -> IO (CArray (Int,Int,Int) e)+newArray3 :: (Storable e) => Int -> Int -> Int -> IO (IOCArray (Int,Int,Int) e) newArray3 m n k = newArray ((0,0,0), (m-1,n-1,k-1))+++freezeArray :: (Ix i, Storable e) => IOCArray i e -> IO (CArray i e)+freezeArray = UnsafeArray.unsafeFreeze sizes1 :: (Ix i) => (i,i) -> Int