Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
Data.Number.Flint.Calcium
Description
Here we collect various utility methods for Flint, Arb and Antic types that are missing in those libraries. Some of these functions may be migrated upstream in the future.
Synopsis
- data CalciumStream = CalciumStream !(ForeignPtr CCalciumStream)
- data CCalciumStream = CCalciumStream (Ptr CFile) CString CLong CLong
- newCalciumStreamFile :: Ptr CFile -> IO CalciumStream
- newCalciumStreamStr :: p -> IO CalciumStream
- withCalciumStream :: CalciumStream -> (Ptr CCalciumStream -> IO a) -> IO (CalciumStream, a)
- newtype CCalciumFunctionCode = CCalciumFunctionCode {}
- calcium_version :: IO CString
- t_true :: CTruth
- t_false :: CTruth
- t_unknown :: CTruth
- newtype CTruth = CTruth {}
- calcium_func_name :: CCalciumFunctionCode -> IO CString
- calcium_stream_init_file :: Ptr CCalciumStream -> Ptr CFile -> IO ()
- calcium_stream_init_str :: Ptr CCalciumStream -> IO ()
- calcium_write :: Ptr CCalciumStream -> CString -> IO ()
- calcium_write_free :: Ptr CCalciumStream -> CString -> IO ()
- calcium_write_si :: Ptr CCalciumStream -> CLong -> IO ()
- calcium_write_fmpz :: Ptr CCalciumStream -> Ptr CFmpz -> IO ()
- calcium_write_arb :: Ptr CCalciumStream -> Ptr CArb -> CLong -> CULong -> IO ()
- calcium_write_acb :: Ptr CCalciumStream -> Ptr CAcb -> CLong -> CULong -> IO ()
- ca_QQBar :: CCalciumFunctionCode
- ca_Neg :: CCalciumFunctionCode
- ca_Add :: CCalciumFunctionCode
- ca_Sub :: CCalciumFunctionCode
- ca_Mul :: CCalciumFunctionCode
- ca_Div :: CCalciumFunctionCode
- ca_Sqrt :: CCalciumFunctionCode
- ca_Cbrt :: CCalciumFunctionCode
- ca_Root :: CCalciumFunctionCode
- ca_Floor :: CCalciumFunctionCode
- ca_Ceil :: CCalciumFunctionCode
- ca_Abs :: CCalciumFunctionCode
- ca_Sign :: CCalciumFunctionCode
- ca_Re :: CCalciumFunctionCode
- ca_Im :: CCalciumFunctionCode
- ca_Arg :: CCalciumFunctionCode
- ca_Conjugate :: CCalciumFunctionCode
- ca_Pi :: CCalciumFunctionCode
- ca_Sin :: CCalciumFunctionCode
- ca_Cos :: CCalciumFunctionCode
- ca_Exp :: CCalciumFunctionCode
- ca_Log :: CCalciumFunctionCode
- ca_Pow :: CCalciumFunctionCode
- ca_Tan :: CCalciumFunctionCode
- ca_Cot :: CCalciumFunctionCode
- ca_Cosh :: CCalciumFunctionCode
- ca_Sinh :: CCalciumFunctionCode
- ca_Tanh :: CCalciumFunctionCode
- ca_Coth :: CCalciumFunctionCode
- ca_Atan :: CCalciumFunctionCode
- ca_Acos :: CCalciumFunctionCode
- ca_Asin :: CCalciumFunctionCode
- ca_Acot :: CCalciumFunctionCode
- ca_Atanh :: CCalciumFunctionCode
- ca_Acosh :: CCalciumFunctionCode
- ca_Asinh :: CCalciumFunctionCode
- ca_Acoth :: CCalciumFunctionCode
- ca_Euler :: CCalciumFunctionCode
- ca_Gamma :: CCalciumFunctionCode
- ca_LogGamma :: CCalciumFunctionCode
- ca_Psi :: CCalciumFunctionCode
- ca_Erf :: CCalciumFunctionCode
- ca_Erfc :: CCalciumFunctionCode
- ca_Erfi :: CCalciumFunctionCode
- ca_RiemannZeta :: CCalciumFunctionCode
- ca_HurwitzZeta :: CCalciumFunctionCode
- ca_FUNC_CODE_LENGTH :: CCalciumFunctionCode
Calcium
data CalciumStream Source #
Constructors
CalciumStream !(ForeignPtr CCalciumStream) |
data CCalciumStream Source #
Instances
Storable CCalciumStream Source # | |
Defined in Data.Number.Flint.Calcium.FFI Methods sizeOf :: CCalciumStream -> Int # alignment :: CCalciumStream -> Int # peekElemOff :: Ptr CCalciumStream -> Int -> IO CCalciumStream # pokeElemOff :: Ptr CCalciumStream -> Int -> CCalciumStream -> IO () # peekByteOff :: Ptr b -> Int -> IO CCalciumStream # pokeByteOff :: Ptr b -> Int -> CCalciumStream -> IO () # peek :: Ptr CCalciumStream -> IO CCalciumStream # poke :: Ptr CCalciumStream -> CCalciumStream -> IO () # |
newCalciumStreamStr :: p -> IO CalciumStream Source #
withCalciumStream :: CalciumStream -> (Ptr CCalciumStream -> IO a) -> IO (CalciumStream, a) Source #
newtype CCalciumFunctionCode Source #
Constructors
CCalciumFunctionCode | |
Fields |
Instances
Show CCalciumFunctionCode Source # | |
Defined in Data.Number.Flint.Calcium.FFI Methods showsPrec :: Int -> CCalciumFunctionCode -> ShowS # show :: CCalciumFunctionCode -> String # showList :: [CCalciumFunctionCode] -> ShowS # | |
Eq CCalciumFunctionCode Source # | |
Defined in Data.Number.Flint.Calcium.FFI Methods (==) :: CCalciumFunctionCode -> CCalciumFunctionCode -> Bool # (/=) :: CCalciumFunctionCode -> CCalciumFunctionCode -> Bool # |
Version
calcium_version :: IO CString Source #
calcium_version
Returns a pointer to the version of the library as a string X.Y.Z
.
Triple-valued logic
Triple-valued logic
Instances
Flint, Arb and Antic extras
Input and output
calcium_stream_init_file :: Ptr CCalciumStream -> Ptr CFile -> IO () Source #
calcium_stream_init_str :: Ptr CCalciumStream -> IO () Source #
calcium_write :: Ptr CCalciumStream -> CString -> IO () Source #
calcium_write_free :: Ptr CCalciumStream -> CString -> IO () Source #
calcium_write_si :: Ptr CCalciumStream -> CLong -> IO () Source #
calcium_write_si out x
calcium_write_fmpz :: Ptr CCalciumStream -> Ptr CFmpz -> IO () Source #
calcium_write_fmpz out x
Writes the integer x to out.
calcium_write_arb :: Ptr CCalciumStream -> Ptr CArb -> CLong -> CULong -> IO () Source #
calcium_write_arb out z digits flags
calcium_write_acb :: Ptr CCalciumStream -> Ptr CAcb -> CLong -> CULong -> IO () Source #
calcium_write_acb out z digits flags
Writes the Arb number z to out, showing digits digits and with the
display style specified by flags (ARB_STR_NO_RADIUS
, etc.).
Function codes
ca_Acot :: CCalciumFunctionCode Source #
calcium_stream_init_file out fp
Initializes the stream out for writing to the file fp. The file can be stdout, stderr, or any file opened for writing by the user.
ca_Acoth :: CCalciumFunctionCode Source #
calcium_stream_init_str out
ca_Psi :: CCalciumFunctionCode Source #
calcium_write out s
Writes the string s to out.
ca_Erfi :: CCalciumFunctionCode Source #
calcium_write_free out s
Writes s to out and then frees s by calling flint_free()
.