Module VarUsage.Occur

module Occur: sig .. end

type t = {
   mutable valid : bool;
   mutable value : VarUsage.Usage.domain;
   mutable param : VarUsage.Usage.domain;
   mutable calls : (bool * VarUsage.Root.t * VarUsage.Context.delta list) list;
}
val empty : unit -> t
val merge_with : VarUsage.Usage.domain -> VarUsage.Context.delta list -> VarUsage.Usage.domain
val update : t ->
bool -> VarUsage.Context.target -> VarUsage.Context.delta list -> unit
val propagate : bool Pervasives.ref ->
t -> (VarUsage.Root.t -> VarUsage.Usage.domain) -> unit