-- Hoogle documentation, generated by Haddock
-- See Hoogle, http://www.haskell.org/hoogle/
-- | Helper modules for FFI 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-ffi and lapack-ffi.
@package netlib-ffi
@version 0.1
module Numeric.Netlib.Class
class (Floating a, RealFloat a) => Real a
switchReal :: Real a => f Float -> f Double -> f a
class (Storable a, Fractional a) => Floating a
switchFloating :: Floating a => f Float -> f Double -> f (Complex Float) -> f (Complex Double) -> f a
instance Numeric.Netlib.Class.Real GHC.Types.Float
instance Numeric.Netlib.Class.Real GHC.Types.Double
instance Numeric.Netlib.Class.Real a => Numeric.Netlib.Class.Floating (Data.Complex.Complex a)
instance Numeric.Netlib.Class.Floating GHC.Types.Float
instance Numeric.Netlib.Class.Floating GHC.Types.Double
module Numeric.Netlib.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)