package js_of_ocaml-compiler

  1. Overview
  2. Docs
Legend:
Page
Library
Module
Module type
Parameter
Class
Class type
Source

Module Js_of_ocaml_compiler.Global_flowSource

Sourcetype def =
  1. | Expr of Code.expr
  2. | Phi of {
    1. known : Code.Var.Set.t;
    2. others : bool;
    3. unit : bool;
    }
Sourcetype approx =
  1. | Top
  2. | Values of {
    1. known : Code.Var.Set.t;
    2. others : bool;
    }
Sourcetype escape_status =
  1. | Escape
  2. | Escape_constant
  3. | No
Sourcetype info = {
  1. info_defs : def array;
  2. info_approximation : approx Code.Var.Tbl.t;
  3. info_may_escape : Code.Var.ISet.t;
  4. info_variable_may_escape : escape_status array;
  5. info_return_vals : Code.Var.Set.t Code.Var.Map.t;
}
Sourcetype mutable_fields =
  1. | No_field
  2. | Some_fields of Stdlib.IntSet.t
  3. | All_fields
Sourcetype state = {
  1. vars : Code.Var.ISet.t;
  2. deps : Code.Var.t list Code.Var.Tbl.t;
  3. defs : def array;
  4. variable_may_escape : escape_status array;
  5. variable_mutable_fields : mutable_fields array;
  6. may_escape : escape_status array;
  7. mutable_fields : mutable_fields array;
  8. return_values : Code.Var.Set.t Code.Var.Map.t;
  9. functions_from_returned_value : Code.Var.t list Code.Var.Hashtbl.t;
  10. known_cases : int list Code.Var.Hashtbl.t;
  11. applied_functions : unit VarPairTbl.t;
  12. function_call_sites : Code.Var.t list Code.Var.Hashtbl.t;
  13. fast : bool;
}
Sourceval f : fast:bool -> Code.program -> state * info
Sourceval update_def : info -> Code.Var.t -> Code.expr -> unit
Sourceval exact_call : info -> Code.Var.t -> int -> bool
Sourceval get_unique_closure : info -> Code.Var.t -> Code.Var.t option
Sourceval function_arity : info -> Code.Var.t -> int option