module Ctypes:sig..end
type c_int =
| |
UInt8 |
| |
SInt8 |
| |
UInt16 |
| |
SInt16 |
| |
UInt32 |
| |
SInt32 |
| |
UInt64 |
| |
SInt64 |
val c_int_all : c_int list
type c_float =
| |
Float32 |
| |
Float64 |
type arrayflat = {
|
arr_size : |
(* |
number of elements in the array
| *) |
|
arr_dim : |
(* |
number of dimensions in the array
| *) |
|
arr_cell : |
(* |
type of elementary cells of the flatten array. Never an array.
| *) |
|
arr_cell_nbr : |
(* |
number of elementary cells in the flatten array
| *) |
type arrayinfo = {
|
arr_element : |
(* |
type of the elements of the array
| *) |
|
arr_flat : |
type c_object =
| |
C_int of |
| |
C_float of |
| |
C_pointer of |
| |
C_comp of |
| |
C_array of |
val object_of_pointed : c_object -> c_object
val object_of_array_elem : c_object -> c_object
val object_of_logic_type : Cil_types.logic_type -> c_object
val object_of_logic_pointed : Cil_types.logic_type -> c_objectval imemo : (c_int -> 'a) -> c_int -> 'a
val fmemo : (c_float -> 'a) -> c_float -> 'a
val is_char : c_int -> bool
val c_char : unit -> c_intcharval c_bool : unit -> c_intintval c_ptr : unit -> c_intval c_int : Cil_types.ikind -> c_intval c_float : Cil_types.fkind -> c_floatval object_of : Cil_types.typ -> c_object
val is_void : Cil_types.typ -> bool
val is_pointer : c_object -> bool
val char : char -> int64
val constant : Cil_types.exp -> int64
val get_int : Cil_types.exp -> int64 option
val i_bits : c_int -> intval i_bytes : c_int -> intval signed : c_int -> booltrue if signedval c_int_bounds : c_int -> Integer.t * Integer.tval sub_c_int : c_int -> c_int -> bool
val sub_c_float : c_float -> c_float -> bool
val sizeof_defined : c_object -> bool
val sizeof_object : c_object -> int
val field_offset : Cil_types.fieldinfo -> int
val no_infinite_array : c_object -> bool
val array_dim : arrayinfo -> c_object * int
val array_size : Cil_types.typ -> int option
val array_dimensions : arrayinfo -> c_object * int option listval dimension_of_object : c_object -> (int * int) optionval i_convert : c_int -> c_int -> c_int
val f_convert : c_float -> c_float -> c_float
val promote : c_object -> c_object -> c_object
val pp_int : Format.formatter -> c_int -> unit
val pp_float : Format.formatter -> c_float -> unit
val pp_object : Format.formatter -> c_object -> unit
val basename : c_object -> string
val compare : c_object -> c_object -> int
val equal : c_object -> c_object -> bool
val merge : c_object -> c_object -> c_object
val hash : c_object -> int
val pretty : Format.formatter -> c_object -> unit
module C_object:Datatype.Swith type t = c_object
module AinfoComparable:sig..end
val compare_ptr_conflated : c_object -> c_object -> intCtypes.compare but all PTR are considered the same