Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
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 CCalciumStream Source #
Instances
Storable CCalciumStream Source # | |
Defined in Data.Number.Flint.Calcium.FFI 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 #
Instances
Show CCalciumFunctionCode Source # | |
Defined in Data.Number.Flint.Calcium.FFI showsPrec :: Int -> CCalciumFunctionCode -> ShowS # show :: CCalciumFunctionCode -> String # showList :: [CCalciumFunctionCode] -> ShowS # | |
Eq CCalciumFunctionCode Source # | |
Defined in Data.Number.Flint.Calcium.FFI (==) :: 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
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()
.