Module Cstubs_internals
type voidp= Ctypes_ptr.voidptype managed_buffer= Ctypes_memory_stubs.managed_buffertype 'a fatptr= 'a Ctypes.typ Ctypes_ptr.Fat.ttype 'a fatfunptr= 'a Ctypes.fn Ctypes_ptr.Fat.t
val make_structured : ('a, 's) Ctypes.structured Ctypes.typ -> managed_buffer -> ('a, 's) Ctypes.structuredval make_ptr : 'a Ctypes.typ -> voidp -> 'a Ctypes.ptrval make_fun_ptr : 'a Ctypes.fn -> voidp -> 'a Ctypes_static.static_funptrval cptr : 'a Ctypes.ptr -> 'a Ctypes.typ Ctypes_ptr.Fat.tval fptr : 'a Ctypes_static.static_funptr -> 'a Ctypes.fn Ctypes_ptr.Fat.t
type 'a ocaml_type= 'a Ctypes_static.ocaml_type=|String : string ocaml_type|Bytes : Stdlib.Bytes.t ocaml_type|FloatArray : float array ocaml_typetype 'a typ= 'a Ctypes_static.typ=|Void : unit typ|Primitive : 'a0 Ctypes_primitive_types.prim -> 'a0 typ|Pointer : 'a1 typ -> 'a1 ptr typ|Funptr : 'a2 Ctypes.fn -> 'a2 static_funptr typ|Struct : 'a3 Ctypes_static.structure_type -> 'a3 Ctypes_static.structure typ|Union : 'a4 Ctypes_static.union_type -> 'a4 Ctypes_static.union typ|Abstract : Ctypes_static.abstract_type -> 'a5 Ctypes_static.abstract typ|View : ('a6, 'b) view -> 'a6 typ|Array : 'a7 typ * int -> 'a7 Ctypes_static.carray typ|Bigarray : ('c, 'a8, 'd) Ctypes_bigarray.t -> 'a8 typ|OCaml : 'a9 ocaml_type -> 'a9 ocaml typand ('a, 'b) pointer= ('a, 'b) Ctypes_static.pointer=|CPointer : 'a0 typ Ctypes_ptr.Fat.t -> ('a0, [ `C ]) pointer|OCamlRef : int * 'a1 * 'a1 ocaml_type -> ('a1, [ `OCaml ]) pointerand 'a ptr= ('a, [ `C ]) pointerand 'a ocaml= ('a, [ `OCaml ]) pointerand 'a static_funptr= 'a Ctypes_static.static_funptr=|Static_funptr of 'a Ctypes.fn Ctypes_ptr.Fat.tand ('a, 'b) view= ('a, 'b) Ctypes_static.view={read : 'b -> 'a;write : 'a -> 'b;format_typ : ((Stdlib.Format.formatter -> unit) -> Stdlib.Format.formatter -> unit) option;format : (Stdlib.Format.formatter -> 'a -> unit) option;ty : 'b typ;}type 'a fn= 'a Ctypes_static.fn=|Returns : 'a0 typ -> 'a0 fn|Function : 'a1 typ * 'b fn -> ('a1 -> 'b) fntype 'a prim= 'a Ctypes_primitive_types.prim=|Char : char prim|Schar : int prim|Uchar : Unsigned.uchar prim|Bool : bool prim|Short : int prim|Int : int prim|Long : Signed.long prim|Llong : Signed.llong prim|Ushort : Unsigned.ushort prim|Sint : Signed.sint prim|Uint : Unsigned.uint prim|Ulong : Unsigned.ulong prim|Ullong : Unsigned.ullong prim|Size_t : Unsigned.size_t prim|Int8_t : int prim|Int16_t : int prim|Int32_t : int32 prim|Int64_t : int64 prim|Uint8_t : Unsigned.uint8 prim|Uint16_t : Unsigned.uint16 prim|Uint32_t : Unsigned.uint32 prim|Uint64_t : Unsigned.uint64 prim|Camlint : int prim|Nativeint : nativeint prim|Float : float prim|Double : float prim|LDouble : LDouble.t prim|Complex32 : Stdlib.Complex.t prim|Complex64 : Stdlib.Complex.t prim|Complexld : ComplexL.t prim
val build_enum_type : string -> Ctypes_static.arithmetic -> ?typedef:bool -> ?unexpected:(int64 -> 'a) -> ('a * int64) list -> 'a typval use_value : 'a -> unit