IdrisDoc: FFI_C

FFI_C

data Raw : Type -> Type
MkRaw : (x : t) -> Raw t
FFI_C : FFI

A descriptor for the C FFI. See the constructors of C_Types
and C_IntTypes for the concrete types that are available.

data C_Types : Type -> Type

Supported C foreign types

C_Str : C_Types String
C_Float : C_Types Double
C_Ptr : C_Types Ptr
C_MPtr : C_Types ManagedPtr
C_Unit : C_Types ()
C_Any : C_Types (Raw a)
C_FnT : C_FnTypes t -> C_Types (CFnPtr t)
C_IntT : C_IntTypes i -> C_Types i
C_CData : C_Types CData
data C_IntTypes : Type -> Type

Supported C integer types

C_IntChar : C_IntTypes Char
C_IntNative : C_IntTypes Int
C_IntBits8 : C_IntTypes Bits8
C_IntBits16 : C_IntTypes Bits16
C_IntBits32 : C_IntTypes Bits32
C_IntBits64 : C_IntTypes Bits64
data C_FnTypes : Type -> Type
C_Fn : C_Types s -> C_FnTypes t -> C_FnTypes (s -> t)
C_FnIO : C_Types t -> C_FnTypes (IO' FFI_C t)
C_FnBase : C_Types t -> C_FnTypes t
data CFnPtr : Type -> Type
MkCFnPtr : (x : t) -> CFnPtr t