Batteries user guide : BatOo

`sig val copy : (< .. > as 'a) -> 'a external id : < .. > -> int = "%field1" val new_method : string -> CamlinternalOO.tag val public_method_label : string -> CamlinternalOO.tag module Internal : sig type tag = CamlinternalOO.tag type label = CamlinternalOO.label type table = CamlinternalOO.table type meth = CamlinternalOO.meth type t = CamlinternalOO.t type obj = CamlinternalOO.obj type closure = CamlinternalOO.closure val public_method_label : string -> BatOo.Internal.tag val new_method : BatOo.Internal.table -> BatOo.Internal.label val new_variable : BatOo.Internal.table -> string -> int val new_methods_variables : BatOo.Internal.table -> string array -> string array -> BatOo.Internal.label array val get_variable : BatOo.Internal.table -> string -> int val get_variables : BatOo.Internal.table -> string array -> int array val get_method_label : BatOo.Internal.table -> string -> BatOo.Internal.label val get_method_labels : BatOo.Internal.table -> string array -> BatOo.Internal.label array val get_method : BatOo.Internal.table -> BatOo.Internal.label -> BatOo.Internal.meth val set_method : BatOo.Internal.table -> BatOo.Internal.label -> BatOo.Internal.meth -> unit val set_methods : BatOo.Internal.table -> BatOo.Internal.label array -> unit val narrow : BatOo.Internal.table -> string array -> string array -> string array -> unit val widen : BatOo.Internal.table -> unit val add_initializer : BatOo.Internal.table -> (BatOo.Internal.obj -> unit) -> unit val dummy_table : BatOo.Internal.table val create_table : string array -> BatOo.Internal.table val init_class : BatOo.Internal.table -> unit val inherits : BatOo.Internal.table -> string array -> string array -> string array -> BatOo.Internal.t * (BatOo.Internal.table -> BatOo.Internal.obj -> Obj.t) * BatOo.Internal.t * BatOo.Internal.obj -> bool -> Obj.t array val make_class : string array -> (BatOo.Internal.table -> Obj.t -> BatOo.Internal.t) -> BatOo.Internal.t * (BatOo.Internal.table -> Obj.t -> BatOo.Internal.t) * (Obj.t -> BatOo.Internal.t) * Obj.t type init_table = CamlinternalOO.init_table val make_class_store : string array -> (BatOo.Internal.table -> BatOo.Internal.t) -> BatOo.Internal.init_table -> unit val dummy_class : string * int * int -> BatOo.Internal.t * (BatOo.Internal.table -> Obj.t -> BatOo.Internal.t) * (Obj.t -> BatOo.Internal.t) * Obj.t val copy : (< .. > as 'a) -> 'a val create_object : BatOo.Internal.table -> BatOo.Internal.obj val create_object_opt : BatOo.Internal.obj -> BatOo.Internal.table -> BatOo.Internal.obj val run_initializers : BatOo.Internal.obj -> BatOo.Internal.table -> unit val run_initializers_opt : BatOo.Internal.obj -> BatOo.Internal.obj -> BatOo.Internal.table -> BatOo.Internal.obj val create_object_and_run_initializers : BatOo.Internal.obj -> BatOo.Internal.table -> BatOo.Internal.obj external send : BatOo.Internal.obj -> BatOo.Internal.tag -> BatOo.Internal.t = "%send" external sendcache : BatOo.Internal.obj -> BatOo.Internal.tag -> BatOo.Internal.t -> int -> BatOo.Internal.t = "%sendcache" external sendself : BatOo.Internal.obj -> BatOo.Internal.label -> BatOo.Internal.t = "%sendself" external get_public_method : BatOo.Internal.obj -> BatOo.Internal.tag -> BatOo.Internal.closure = "caml_get_public_method" [@@noalloc] type tables = CamlinternalOO.tables val lookup_tables : BatOo.Internal.tables -> BatOo.Internal.closure array -> BatOo.Internal.tables type impl = CamlinternalOO.impl = GetConst | GetVar | GetEnv | GetMeth | SetVar | AppConst | AppVar | AppEnv | AppMeth | AppConstConst | AppConstVar | AppConstEnv | AppConstMeth | AppVarConst | AppEnvConst | AppMethConst | MethAppConst | MethAppVar | MethAppEnv | MethAppMeth | SendConst | SendVar | SendEnv | SendMeth | Closure of BatOo.Internal.closure type params = CamlinternalOO.params = { mutable compact_table : bool; mutable copy_parent : bool; mutable clean_when_copying : bool; mutable retry_count : int; mutable bucket_small_size : int; } val params : BatOo.Internal.params type stats = CamlinternalOO.stats = { classes : int; methods : int; inst_vars : int; } val stats : unit -> BatOo.Internal.stats end end`