Wp.CtypesC-Types
type arrayflat = {arr_size : int; | (* number of elements in the array *) |
arr_dim : int; | (* number of dimensions in the array *) |
arr_cell : Frama_c_kernel.Cil_types.typ; | (* type of elementary cells of the flatten array. Never an array. *) |
arr_cell_nbr : int64; | (* number of elementary cells in the flatten array *) |
}Array objects, with both the head view and the flatten view.
type arrayinfo = {arr_element : Frama_c_kernel.Cil_types.typ; | (* type of the elements of the array *) |
arr_flat : arrayflat option; |
}type c_object = | C_int of c_int |
| C_float of c_float |
| C_pointer of Frama_c_kernel.Cil_types.typ |
| C_comp of Frama_c_kernel.Cil_types.compinfo |
| C_array of arrayinfo |
Type of variable, inits, field or assignable values. Abstract view of unrolled C types without attribute.
val object_of_logic_type : Frama_c_kernel.Cil_types.logic_type -> c_objectval object_of_logic_pointed : Frama_c_kernel.Cil_types.logic_type -> c_objectval i_iter : ( c_int -> unit ) -> unitval f_iter : ( c_float -> unit ) -> unitval is_char : c_int -> boolval c_char : unit -> c_intReturns the type of char
val c_bool : unit -> c_intReturns the type of int
val c_ptr : unit -> c_intReturns the type of pointers
val c_int : Frama_c_kernel.Cil_types.ikind -> c_intConforms to Cil.theMachine
val c_float : Frama_c_kernel.Cil_types.fkind -> c_floatConforms to Cil.theMachine
val object_of : Frama_c_kernel.Cil_types.typ -> c_objectval is_pointer : c_object -> boolval constant : Frama_c_kernel.Cil_types.exp -> int64val get_int : Frama_c_kernel.Cil_types.exp -> int optionval get_int64 : Frama_c_kernel.Cil_types.exp -> int64 optionval signed : c_int -> booltrue if signed
val bounds : c_int -> Frama_c_kernel.Integer.t * Frama_c_kernel.Integer.tdomain, bounds included
val i_bits : c_int -> intsize in bits
val i_bytes : c_int -> intsize in bytes
val f_bits : c_float -> intsize in bits
val f_bytes : c_float -> intsize in bytes
val sizeof_defined : c_object -> boolval sizeof_object : c_object -> intval bits_sizeof_comp : Frama_c_kernel.Cil_types.compinfo -> intval bits_sizeof_array : arrayinfo -> intval bits_sizeof_object : c_object -> intval field_offset : Frama_c_kernel.Cil_types.fieldinfo -> intval no_infinite_array : c_object -> boolval is_compound : c_object -> boolval is_comp : c_object -> Frama_c_kernel.Cil_types.compinfo -> boolval get_array_size : c_object -> int optionval get_array_dim : c_object -> intval array_size : arrayinfo -> int optionReturns the list of dimensions the array consists of. None-dimension means undefined one.
val dimension_of_object : c_object -> (int * int64) optionReturns None for 1-dimension objects, and Some(d,N) for d-matrix with N cells
val pp_int : Stdlib.Format.formatter -> c_int -> unitval pp_float : Stdlib.Format.formatter -> c_float -> unitval pp_object : Stdlib.Format.formatter -> c_object -> unitval i_name : c_int -> stringval f_name : c_float -> stringval basename : c_object -> stringval hash : c_object -> intval pretty : Stdlib.Format.formatter -> c_object -> unitmodule C_object : Frama_c_kernel.Datatype.S with type t = c_objectmodule AinfoComparable : sig ... end