package goblint

  1. Overview
  2. Docs
Static analysis framework for C

Install

Dune Dependency

Authors

Maintainers

Sources

goblint-2.1.0.tbz
sha256=bfc412ec2e447eaef6f4f83892e3511ebf305593cb00561c1406be3ae8bf48e9
sha512=5f2a162e5f36bffafc9836b0d18b5b2808cecfa6bf68f83bb7d1e8b9947ac74cf07776eb09274b4b29d55c897a45a10768f0d9ed25810cf6ba2409c525e4cd4d

doc/goblint.lib/Goblint_lib/SymbLocksDomain/ILock/index.html

Module SymbLocksDomain.ILock

Index-based symbolic lock

module Idx : sig ... end

Index in index-based symbolic lock

include sig ... end
type field = GoblintCil.fieldinfo
type idx = Idx.t
module Offs : sig ... end
type t =
  1. | Addr of CilType.Varinfo.t * Offs.t
  2. | NullPtr
  3. | UnknownPtr
  4. | StrPtr of string option
val equal : t -> t -> Ppx_deriving_runtime.bool
val compare : t -> t -> Ppx_deriving_runtime.int
val hash : t -> int
val trace_enabled : bool
val tag : 'a -> 'b
val relift : 'a -> 'a
val name : unit -> string
val to_group : t -> Basetype.Variables.group option
val from_var : CilType.Varinfo.t -> t
val to_var : t -> CilType.Varinfo.t option
val to_var_may : t -> CilType.Varinfo.t option
val to_var_must : t -> CilType.Varinfo.t option
val to_var_offset : t -> (CilType.Varinfo.t * Offs.t) option
val from_string : string -> t
val to_string : t -> string option
val short_offs : [< `Field of GoblintCil.fieldinfo * 'a | `Index of Idx.t * 'a | `NoOffset ] as 'a -> string
val short_addr : (GoblintCil.varinfo * [< `Field of GoblintCil.fieldinfo * 'a | `Index of Idx.t * 'a | `NoOffset ] as 'a) -> string
val show : t -> string
val pretty : unit -> t -> Goblint_lib__Printable.Pretty.doc
val printXml : 'a BatInnerIO.output -> t -> unit
val to_yojson : t -> [> `String of string ]
exception Type_offset of GoblintCil.typ * string
val type_offset : GoblintCil.typ -> [ `Field of GoblintCil.fieldinfo * 'a | `Index of Idx.t * 'a | `NoOffset ] as 'a -> GoblintCil.typ
val get_type_addr : (GoblintCil.varinfo * [ `Field of GoblintCil.fieldinfo * 'a | `Index of Idx.t * 'a | `NoOffset ] as 'a) -> GoblintCil.typ
val get_type : t -> GoblintCil.typ
val is_zero_offset : Offs.t -> bool
val to_exp : (idx -> GoblintCil.exp) -> t -> GoblintCil.exp
val add_offsets : [< `Field of 'b * 'a | `Index of 'c * 'a | `NoOffset ] as 'a -> [> `Field of 'b * 'd | `Index of 'c * 'd ] as 'd -> 'd
val add_offset : t -> Offs.t -> t
val remove_offset : [< `Field of 'b * 'a | `Index of 'c * 'a | `NoOffset NoOffset ] as 'a -> [> `Field of 'b * 'd | `Index of 'c * 'd | `NoOffset ] as 'd
val arbitrary : unit -> t QCheck.arbitrary
val conv_const_offset : GoblintCil.offset -> [> `Field of GoblintCil.fieldinfo * 'a | `Index of Idx.t * 'a | `NoOffset ] as 'a
val from_var_offset : (CilType.Varinfo.t * GoblintCil.offset) -> t
OCaml

Innovation. Community. Security.