Frama-C API - Cil_datatype
Datatypes of some useful CIL types.
module UtilsFilepath = FilepathThis module should not be exported, but we need the alias and OCaml requires us to export it.
module type S_with_collections = sig ... endAll datatypes in this module include a dummy.
module type S = sig ... endAll datatypes in this module include a dummy.
module type S_with_pretty = sig ... endAuxiliary module for datatypes that can be pretty-printed. For those that do not have this signature, module Printer must be used.
module type S_with_collections_pretty = sig ... endLocalisations
module Position : sig ... endSingle position in a file.
module Location : sig ... endCil locations.
module Syntactic_scope : S_with_collections with type t = Cil_types.syntactic_scopeCabs types
module Cabs_file : S_with_pretty with type t = Cabs.fileC types
Sorted by alphabetic order.
module Block : S_with_pretty with type t = Cil_types.blockmodule Compinfo : S_with_collections_pretty with type t = Cil_types.compinfomodule Enuminfo : S_with_collections with type t = Cil_types.enuminfomodule Enumitem : S_with_collections with type t = Cil_types.enumitemmodule Wide_string : S_with_collections with type t = int64 listmodule Constant : S_with_collections_pretty with type t = Cil_types.constantmodule ConstantStrict : S_with_collections with type t = Cil_types.constantSame as Constant, but comparison is strict, in the sense that it will take into account textual representation if provided.
module Exp : S_with_collections_pretty with type t = Cil_types.expNote that the equality is based on eid. For structural equality, use ExpStructEq
module ExpStructEq : S_with_collections with type t = Cil_types.expmodule ExpStructEqStrict : S_with_collections with type t = Cil_types.expStructural equality, with strict constant comparison as in ConstantStrict
module ExpStructEqSized : S_with_collections with type t = Cil_types.expStructural equality, with structural comparison in case of sizeof (instead of id). Different expressions with the same size within sizeof are equal.
module ExpStructEqStrictSized : S_with_collections with type t = Cil_types.expStructural equality, with strict constant comparison as in ConstantStrict and with structural comparison in case of sizeof (instead of id). Different expressions with the same size within sizeof are equal.
module Fieldinfo : S_with_collections_pretty with type t = Cil_types.fieldinfomodule File : S with type t = Cil_types.filemodule Global : sig ... endmodule Initinfo : S_with_pretty with type t = Cil_types.initinfomodule Instr : sig ... endmodule Kinstr : sig ... endmodule Label : S_with_collections_pretty with type t = Cil_types.labelmodule Lval : S_with_collections_pretty with type t = Cil_types.lvalNote that the equality is based on eid (for sub-expressions). For structural equality, use LvalStructEq
module LvalStructEq : S_with_collections with type t = Cil_types.lvalmodule LvalStructEqStrict : S_with_collections with type t = Cil_types.lvalstructural equality, with strict constant comparison as in ConstantStrict
module Offset : S_with_collections_pretty with type t = Cil_types.offsetSame remark as for Lval. For structural equality, use OffsetStructEq.
module OffsetStructEq : S_with_collections with type t = Cil_types.offsetmodule OffsetStructEqStrict : S_with_collections with type t = Cil_types.offsetstructural equality, with strict constant comparison as in ConstantStrict
module Stmt_Id : Hptmap.Id_Datatype with type t = Cil_types.stmtmodule Stmt : sig ... endmodule Attribute : S_with_collections_pretty with type t = Cil_types.attributemodule Attributes : S_with_collections with type t = Cil_types.attributesmodule Typ : S_with_collections_pretty with type t = Cil_types.typTypes, with comparison over struct done by key and unrolling of typedefs.
module TypByName : S_with_collections_pretty with type t = Cil_types.typTypes, with comparison over struct done by name and no unrolling.
module TypNoUnroll : S_with_collections_pretty with type t = Cil_types.typTypes, with comparison over struct done by key and no unrolling
module TypNoAttrs : S_with_collections_pretty with type t = Cil_types.typTypes, with comparison over struct done by key and ignoring attributes.
module Typeinfo : S_with_collections with type t = Cil_types.typeinfomodule Varinfo_Id : Hptmap.Id_Datatype with type t = Cil_types.varinfomodule Varinfo : sig ... endmodule Kf : sig ... endACSL types
Sorted by alphabetic order.
module Builtin_logic_info : S_with_collections_pretty with type t = Cil_types.builtin_logic_infomodule Code_annotation : sig ... endmodule Funbehavior : S_with_pretty with type t = Cil_types.funbehaviormodule Funspec : S_with_pretty with type t = Cil_types.funspecmodule Fundec : S_with_collections_pretty with type t = Cil_types.fundecmodule Global_annotation : sig ... endmodule Identified_term : S_with_collections_pretty with type t = Cil_types.identified_termmodule Logic_ctor_info : S_with_collections_pretty with type t = Cil_types.logic_ctor_infomodule Logic_info : S_with_collections_pretty with type t = Cil_types.logic_infomodule Logic_info_structural : S_with_collections_pretty with type t = Cil_types.logic_infoLogic_info with structural comparison:
module Logic_constant : S_with_collections_pretty with type t = Cil_types.logic_constantmodule Logic_label : S_with_collections_pretty with type t = Cil_types.logic_labelmodule Logic_type : S_with_collections_pretty with type t = Cil_types.logic_typeLogic_type. See the various Typ* modules for the distinction between those modules
module Logic_type_ByName : S_with_collections_pretty with type t = Cil_types.logic_typemodule Logic_type_NoUnroll : S_with_collections_pretty with type t = Cil_types.logic_typemodule Logic_type_info : S_with_collections_pretty with type t = Cil_types.logic_type_infomodule Logic_var : S_with_collections_pretty with type t = Cil_types.logic_varmodule Model_info : S_with_collections_pretty with type t = Cil_types.model_infomodule Term : S_with_collections_pretty with type t = Cil_types.termmodule Term_lhost : S_with_collections_pretty with type t = Cil_types.term_lhostmodule Term_offset : S_with_collections_pretty with type t = Cil_types.term_offsetmodule Term_lval : S_with_collections_pretty with type t = Cil_types.term_lvalmodule Logic_real : S_with_collections with type t = Cil_types.logic_realmodule Predicate : S_with_pretty with type t = Cil_types.predicatemodule Toplevel_predicate : S_with_pretty with type t = Cil_types.toplevel_predicatemodule Identified_predicate : S_with_collections_pretty with type t = Cil_types.identified_predicatemodule PredicateStructEq : S_with_collections with type t = Cil_types.predicateLogic_ptree
Sorted by alphabetic order.
module Lexpr : S with type t = Logic_ptree.lexprBeware: no pretty-printer is available.
