Module Mlsem_lang.MVariable

module SA = Mlsem_system.Ast
type kind =
  1. | Immut
  2. | AnnotMut of Mlsem_types.GTy.t
  3. | Mut
val create : kind -> string option -> t
val refresh : kind -> t -> t
val is_mutable : Mlsem_common.Variable.t -> bool
val kind_equal : kind -> kind -> bool
val kind_compat : kind -> kind -> bool
val ref_uninit : Mlsem_common.Variable.t -> SA.e
val ref_cons : Mlsem_common.Variable.t -> SA.t -> SA.e
val ref_get : Mlsem_common.Variable.t -> SA.e
val ref_assign : Mlsem_common.Variable.t -> SA.t -> SA.e