Skip to content
gillian » Gillian » Debugger » Utils » Variable

Module Utils.Variable

type scope = {
  1. name : string;
  2. id : int;
}

Describes a variable scope (e.g. store, heap, pure formulae)

val scope_to_yojson : scope -> Yojson.Safe.t
val scope_of_yojson :
  Yojson.Safe.t ->
  scope Ppx_deriving_yojson_runtime.error_or
type t = {
  1. name : string;
  2. value : string;
  3. type_ : string option;
  4. var_ref : int;
}

A variable

val make :
  ?name:string ->
  value:string ->
  ?type_:string ->
  ?var_ref:int ->
  unit ->
  t
val to_yojson : t -> Yojson.Safe.t
val of_yojson : Yojson.Safe.t -> t Ppx_deriving_yojson_runtime.error_or
type ts = (int, t list) Utils.Prelude.Hashtbl.t

A map of scope IDs to variables

val ts_to_yojson : ts -> Yojson.Safe.t
val ts_of_yojson : Yojson.Safe.t -> ts Ppx_deriving_yojson_runtime.error_or
val _ : Yojson.Safe.t -> ts Ppx_deriving_yojson_runtime.error_or
val create_leaf : string -> string -> ?type_:string option -> unit -> t
val create_node : string -> int -> ?value:string -> unit -> t
val compare_name : t -> t -> int
val compare_value : t -> t -> int