Frama-C API - Exp
include module type of Type
val of_ltyp : Cil_types.logic_type -> (unit, unit) typ
val integer : (unit, unit) typ
val real : (unit, unit) typ
val of_ctyp : Cil_types.typ -> ('v, 'v) typ
val void : ('v, 'v) typ
val bool : ('v, 'v) typ
val char : ('v, 'v) typ
val schar : ('v, 'v) typ
val uchar : ('v, 'v) typ
val int : ('v, 'v) typ
val uint : ('v, 'v) typ
val short : ('v, 'v) typ
val ushort : ('v, 'v) typ
val long : ('v, 'v) typ
val ulong : ('v, 'v) typ
val longlong : ('v, 'v) typ
val ulonglong : ('v, 'v) typ
val float : ('v, 'v) typ
val double : ('v, 'v) typ
val longdouble : ('v, 'v) typ
val structure : Cil_types.compinfo -> (Cil_types.fieldinfo -> 'a -> 'v) -> ('v, 'a) typ
val attribute : ('v, 's) typ -> string -> Cil_types.attrparam list -> ('v, 's) typ
val cil_typ : ('v, 's) typ -> Cil_types.typ
val cil_logic_type : ('v, 's) typ -> Cil_types.logic_type
val pretty : Stdlib.Format.formatter -> [ init | `none ] -> unit
val here : label
val old : label
val pre : label
val post : label
val loop_entry : label
val loop_current : label
val program_init : label
val of_int : int -> [> const ]
Implicitly converted to type int
when converted into C constant
Implicitly converted to type int
when converted into C constant
val of_cint : ?kind:Cil_types.ikind -> Integer.t -> [> const ]
Default kind is int
. Value is truncated if necessary.
val of_cfloat : ?kind:Cil_types.fkind -> float -> [> const ]
Default kind is double
. Value is rounded to simple precision if necessary.
val of_constant : Cil_types.constant -> [> const ]
val zero : [> const ]
val one : [> const ]
val var : Cil_types.varinfo -> [> var ]
val of_lval : Cil_types.lval -> [> lval ]
val of_exp : Cil_types.exp -> [> exp ]
val of_exp_copy : Cil_types.exp -> [> exp ]
val of_exp_list : Cil_types.exp list -> [> exp ] list
val unop : Cil_types.unop -> [< exp ] -> [> exp ]
val binop : Cil_types.binop -> [< exp ] -> [< exp ] -> [> exp ]
val cast' : Cil_types.typ -> [< exp ] -> [> exp ]
val field : [< lval ] -> Cil_types.fieldinfo -> [> lval ]
val result : [> lval ]
val term : Cil_types.term -> [> exp ]
val whole : [> exp ]
val whole_right : [> exp ]
val app : Cil_types.logic_info -> label list -> [< exp ] list -> [> exp ]
val of_init : Cil_types.init -> [> init ]
val compound : Cil_types.typ -> init list -> [> init ]
exception LogicInC of exp
exception CInLogic of exp
exception NotATerm of exp
exception NotAPredicate of exp
exception NotAFunction of Cil_types.logic_info
val cil_logic_label : label -> Cil_types.logic_label
val cil_constant : [< const ] -> Cil_types.constant
val cil_varinfo : [< var ] -> Cil_types.varinfo
val cil_lval : loc:Cil_types.location -> [< lval ] -> Cil_types.lval
val cil_exp : loc:Cil_types.location -> [< exp ] -> Cil_types.exp
val cil_term_lval : loc:Cil_types.location -> ?restyp:Cil_types.typ -> [< lval ] -> Cil_types.term_lval
val cil_term : loc:Cil_types.location -> ?restyp:Cil_types.typ -> [< exp ] -> Cil_types.term
val cil_iterm : loc:Cil_types.location -> ?restyp:Cil_types.typ -> [< exp ] -> Cil_types.identified_term
val cil_pred : loc:Cil_types.location -> ?restyp:Cil_types.typ -> [< exp ] -> Cil_types.predicate
val cil_ipred : loc:Cil_types.location -> ?restyp:Cil_types.typ -> [< exp ] -> Cil_types.identified_predicate
val cil_init : loc:Cil_types.location -> [< init ] -> Cil_types.init
val cil_typeof : [< var ] -> Cil_types.typ