Frama-C API - S
include Datatype.S_with_collections
include Datatype.S
include Datatype.S_no_copy
val packed_descr : Structural_descr.pack
Packed version of the descriptor.
val reprs : t list
List of representants of the descriptor.
val hash : t -> int
Hash function: same spec than Hashtbl.hash
.
val pretty : Stdlib.Format.formatter -> t -> unit
Pretty print each value in an user-friendly way.
val mem_project : (Project_skeleton.t -> bool) -> t -> bool
mem_project f x
must return true
iff there is a value p
of type Project.t
in x
such that f p
returns true
.
module Set : Datatype.Set with type elt = t
module Map : Datatype.Map with type key = t
module Hashtbl : Datatype.Hashtbl with type key = t
type scalar = t
Useful constants in the field.
Two is provided for users that model floating point computations using abstractions over the field.
val zero : scalar
val one : scalar
val two : scalar
val pos_inf : scalar
val neg_inf : scalar
Constructors interacting with standard OCaml types.
val of_int : int -> scalar
val of_float : float -> scalar
val to_float : scalar -> float
val of_string : string -> scalar
Standard arithmetic unary operations.
Standard arithmetic binary operations.
Standard arithmetic relational operations.
Other arithmetic operations.
val pow2 : int -> scalar
pow2 e
computes the scalar 2 ^ e
.
log2 f
computes the integer l
and u
such as l = floor(log₂ f)
and u = ceiling(log₂ f)
.