package melange

  1. Overview
  2. Docs
Legend:
Library
Module
Module type
Parameter
Class
Class type
val new_object_tag_block : int -> Obj.t
val set_id : 'a -> 'a
val copy : 'a -> 'b
module Sys : sig ... end
type params = {
  1. mutable compact_table : bool;
  2. mutable copy_parent : bool;
  3. mutable clean_when_copying : bool;
  4. mutable retry_count : int;
  5. mutable bucket_small_size : int;
}
val params : params
val initial_object_size : int
type item =
  1. | DummyA
  2. | DummyB
  3. | DummyC of int
val dummy_item : item
type tag
type label = int
type closure = item
type t =
  1. | DummyA
  2. | DummyB
  3. | DummyC of int
type obj = t array
val ret : (obj -> 'a) -> closure
val public_method_label : string -> tag
module Vars : sig ... end
type vars = int Vars.t
module Meths : sig ... end
type meths = label Meths.t
module Labs : sig ... end
type labs = bool Labs.t
type table = {
  1. mutable size : int;
  2. mutable methods : closure array;
  3. mutable methods_by_name : meths;
  4. mutable methods_by_label : labs;
  5. mutable previous_states : (meths * labs * (label * item) list * vars * label list * string list) list;
  6. mutable hidden_meths : (label * item) list;
  7. mutable vars : vars;
  8. mutable initializers : (obj -> unit) list;
}
val dummy_table : table
val table_count : int ref
val dummy_met : item
val fit_size : int -> int
val new_table : 'a array -> table
val resize : table -> int -> unit
val put : table -> int -> closure -> unit
val method_count : int ref
val inst_var_count : int ref
type meth = item
val new_method : table -> int
val get_method_label : table -> Meths.key -> label
val get_method_labels : table -> Meths.key array -> label array
val set_method : table -> Labs.key -> closure -> unit
val get_method : table -> label -> closure
val to_list : 'a array -> 'b list
val narrow : table -> Vars.key array -> Meths.key array -> Meths.key array -> unit
val widen : table -> unit
val new_slot : table -> int
val new_variable : table -> Vars.key -> int
val to_array : 'a array -> 'a array
val new_methods_variables : table -> Meths.key array -> Vars.key array -> int array
val get_variable : table -> Vars.key -> int
val get_variables : table -> Vars.key array -> int array
val add_initializer : table -> (obj -> unit) -> unit
val create_table : Meths.key array -> table
val init_class : table -> unit
val inherits : table -> Vars.key array -> Meths.key array -> Meths.key array -> ('a * (table -> 'b -> Obj.t) * 'c * 'd) -> bool -> Obj.t array
val make_class : Meths.key array -> (table -> Obj.t -> 'a) -> 'b * (table -> Obj.t -> 'a) * (Obj.t -> 'a) * Obj.t
type init_table = {
  1. mutable env_init : t;
  2. mutable class_init : table -> t;
}
val make_class_store : Meths.key array -> (table -> t) -> init_table -> unit
val create_object : table -> 'a
val create_object_opt : 'a -> table -> 'b
val iter_f : 'a -> ('b -> unit) list -> unit
val run_initializers : obj -> table -> unit
val run_initializers_opt : 'a -> obj -> table -> obj
val create_object_and_run_initializers : 'a -> table -> 'b
val sendcache : obj -> tag -> t -> int -> 'a
val sendself : obj -> label -> 'a
val get_public_method : obj -> tag -> closure
type tables =
  1. | Empty
  2. | Cons of {
    1. key : closure;
    2. mutable data : tables;
    3. mutable next : tables;
    }
val set_data : tables -> tables -> unit
val set_next : tables -> tables -> unit
val get_key : tables -> closure
val get_data : tables -> tables
val get_next : tables -> tables
val build_path : int -> closure array -> tables -> tables
val lookup_keys : int -> closure array -> tables -> tables
val lookup_tables : tables -> closure array -> tables
val get_const : 'a -> closure
val get_var : int -> closure
val get_env : int -> int -> closure
val get_meth : label -> closure
val set_var : int -> closure
val app_const : ('a -> 'b) -> 'c -> closure
val app_var : (t -> 'a) -> int -> closure
val app_env : (t -> 'a) -> int -> int -> closure
val app_meth : ('a -> 'b) -> label -> closure
val app_const_const : ('a -> 'b -> 'c) -> 'd -> 'e -> closure
val app_const_var : ('a -> t -> 'b) -> 'c -> int -> closure
val app_const_meth : ('a -> 'b -> 'c) -> 'd -> label -> closure
val app_var_const : (t -> 'a -> 'b) -> int -> 'c -> closure
val app_meth_const : ('a -> 'b -> 'c) -> label -> 'd -> closure
val app_const_env : ('a -> t -> 'b) -> 'c -> int -> int -> closure
val app_env_const : (t -> 'a -> 'b) -> int -> int -> 'c -> closure
val meth_app_const : label -> 'a -> closure
val meth_app_var : label -> int -> closure
val meth_app_env : label -> int -> int -> closure
val meth_app_meth : label -> label -> closure
val send_const : tag -> obj -> int -> closure
val send_var : tag -> int -> int -> closure
val send_env : tag -> int -> int -> int -> closure
val send_meth : tag -> label -> int -> closure
val new_cache : table -> int
type impl =
  1. | GetConst
  2. | GetVar
  3. | GetEnv
  4. | GetMeth
  5. | SetVar
  6. | AppConst
  7. | AppVar
  8. | AppEnv
  9. | AppMeth
  10. | AppConstConst
  11. | AppConstVar
  12. | AppConstEnv
  13. | AppConstMeth
  14. | AppVarConst
  15. | AppEnvConst
  16. | AppMethConst
  17. | MethAppConst
  18. | MethAppVar
  19. | MethAppEnv
  20. | MethAppMeth
  21. | SendConst
  22. | SendVar
  23. | SendEnv
  24. | SendMeth
  25. | Closure of closure
val method_impl : table -> int ref -> 'a array -> closure
val set_methods : table -> Labs.key array -> unit
type stats = {
  1. classes : int;
  2. methods : int;
  3. inst_vars : int;
}
val stats : unit -> stats
OCaml

Innovation. Community. Security.