-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | Helper modules for comfort-array wrappers to BLAS and LAPACK -- -- Netlib is a collection of packages for efficient numeric linear -- algebra. Most prominent parts of Netlib are BLAS and LAPACK. These -- packages contain functions for matrix computations, solution of -- simultaneous linear equations and eigenvalue problems. -- -- This package provides definitions shared by the packages -- blas-comfort-array and lapack-comfort-array. @package netlib-comfort-array @version 0.0 module Numeric.Netlib.ComfortArray.Utility type FortranIO r = ContT r IO run :: () => FortranIO r (IO a) -> FortranIO r a runChecked :: () => String -> FortranIO r (Ptr CInt -> IO a) -> FortranIO r a check :: String -> IO CInt -> IO () assert :: String -> Bool -> IO () ignore :: String -> Int -> IO () cint :: () => Int -> FortranIO r (Ptr CInt) alloca :: Storable a => FortranIO r (Ptr a) allocaArray :: Storable a => Int -> FortranIO r (Ptr a) bool :: () => Bool -> FortranIO r (Ptr Bool) char :: () => Char -> FortranIO r (Ptr CChar) string :: () => String -> FortranIO r (Ptr CChar) float :: () => Float -> FortranIO r (Ptr Float) double :: () => Double -> FortranIO r (Ptr Double) complexFloat :: () => Complex Float -> FortranIO r (Ptr (Complex Float)) complexDouble :: () => Complex Double -> FortranIO r (Ptr (Complex Double)) real :: Real a => a -> FortranIO r (Ptr a) complex :: Real a => Complex a -> FortranIO r (Ptr (Complex a)) number :: Floating a => a -> FortranIO r (Ptr a) type ZeroInt = ZeroBased Int newArray :: (C sh, Storable e) => sh -> IO (IOArray sh e) newArray1 :: Storable e => Int -> IO (IOArray ZeroInt e) newArray2 :: Storable e => Int -> Int -> IO (IOArray (ZeroInt, ZeroInt) e) newArray3 :: Storable e => Int -> Int -> Int -> IO (IOArray (ZeroInt, ZeroInt, ZeroInt) e) freezeArray :: (C sh, Storable e) => IOArray sh e -> IO (Array sh e) sizes1 :: C sh0 => sh0 -> Int sizes2 :: (C sh0, C sh1) => (sh0, sh1) -> (Int, Int) sizes3 :: (C sh0, C sh1, C sh2) => (sh0, sh1, sh2) -> (Int, Int, Int) shapeSize :: C sh => sh -> FortranIO r (Ptr CInt) array :: Storable a => Array i a -> FortranIO r (Ptr a) ioarray :: Storable a => IOArray i a -> FortranIO r (Ptr a) (^!) :: Num a => a -> Int -> a