Module Js_of_ocaml_compiler__Flow
type def=|Phi of Js_of_ocaml_compiler.Code.Var.Set.t|Expr of Js_of_ocaml_compiler.Code.expr|Paramtype info={info_defs : def array;info_known_origins : Js_of_ocaml_compiler.Code.Var.Set.t Js_of_ocaml_compiler.Code.Var.Tbl.t;info_maybe_unknown : bool Js_of_ocaml_compiler.Code.Var.Tbl.t;info_possibly_mutable : bool array;}
val get_approx : info -> (Js_of_ocaml_compiler.Code.Var.Set.elt -> 'b) -> 'b -> ('b -> 'b -> 'b) -> Js_of_ocaml_compiler.Code.Var.Tbl.key -> 'bval the_def_of : info -> Js_of_ocaml_compiler.Code.prim_arg -> Js_of_ocaml_compiler.Code.expr optionval the_const_of : info -> Js_of_ocaml_compiler.Code.prim_arg -> Js_of_ocaml_compiler.Code.constant optionval the_string_of : info -> Js_of_ocaml_compiler.Code.prim_arg -> string optionval the_int : info -> Js_of_ocaml_compiler.Code.prim_arg -> int32 optionval update_def : info -> Js_of_ocaml_compiler.Code.Var.t -> Js_of_ocaml_compiler.Code.expr -> unitval f : ?skip_param:bool -> Js_of_ocaml_compiler.Code.program -> Js_of_ocaml_compiler.Code.program * info