package pfff

  1. Overview
  2. Docs
Legend:
Library
Module
Module type
Parameter
Class
Class type
module F = Controlflow
type var = string
module VarMap : Map.S with type key = String.t
module VarSet : Set.S with type elt = String.t
type 'a mapping = 'a inout array
and 'a inout = {
  1. in_env : 'a env;
  2. out_env : 'a env;
}
and 'a env = 'a VarMap.t
val empty_env : unit -> 'a VarMap.t
val empty_inout : unit -> 'a inout
type 'a transfn = 'a mapping -> F.nodei -> 'a inout
val fixpoint : eq:('a -> 'a -> bool) -> init:'a mapping -> trans:'a transfn -> flow:F.flow -> forward:bool -> 'a mapping
val new_node_array : F.flow -> 'a -> 'a array
val varmap_union : ('a -> 'a -> 'a) -> 'a env -> 'a env -> 'a env
val varmap_diff : ('a -> 'a -> 'a) -> ('a -> bool) -> 'a env -> 'a env -> 'a env
val display_mapping : F.flow -> 'a mapping -> ('a -> string) -> unit
module NodeiSet : Set.S with type elt = Int.t
val union_env : NodeiSet.t env -> NodeiSet.t env -> NodeiSet.t env
val diff_env : NodeiSet.t env -> NodeiSet.t env -> NodeiSet.t env
val add_var_and_nodei_to_env : var -> F.nodei -> NodeiSet.t env -> NodeiSet.t env
val add_vars_and_nodei_to_env : VarSet.t -> F.nodei -> NodeiSet.t env -> NodeiSet.t env
val ns_to_str : NodeiSet.t -> string