jon.recoil.org

Module Symtable

module Predef : sig ... end
module Global : sig ... end
val init : unit -> unit
val patch_object : Misc.LongString.t -> (Cmo_format.reloc_info * int) list -> unit
val require_primitive : string -> unit
val initial_global_table : unit -> Stdlib.Obj.t array
val output_global_map : Stdlib.out_channel -> unit
val output_primitive_names : Stdlib.out_channel -> unit
val output_primitive_table : Stdlib.out_channel -> unit
val data_global_map : unit -> Stdlib.Obj.t
val data_primitive_names : unit -> string list
type global_map
type bytecode_sections = private {
  1. symb : Symtable.global_map;
  2. crcs : Import_info.t array;
  3. prim : string list;
  4. dlpt : string list;
}
val init_toplevel : get_bytecode_sections:(unit -> Symtable.bytecode_sections) -> Import_info.t array
val update_global_table : unit -> unit
val get_global_value : Symtable.Global.t -> Stdlib.Obj.t
val is_global_defined : Symtable.Global.t -> bool
val assign_global_value : Symtable.Global.t -> Stdlib.Obj.t -> unit
val get_global_position : Symtable.Global.t -> int
val check_global_initialized : (Cmo_format.reloc_info * int) list -> unit
val initialized_compunits : (Cmo_format.reloc_info * int) list -> Compilation_unit.t list
val required_compunits : (Cmo_format.reloc_info * int) list -> Compilation_unit.t list
val empty_global_map : Symtable.global_map
val current_state : unit -> Symtable.global_map
val restore_state : Symtable.global_map -> unit
val hide_additions : Symtable.global_map -> unit
val filter_global_map : (Symtable.Global.t -> bool) -> Symtable.global_map -> Symtable.global_map
val iter_global_map : (Symtable.Global.t -> int -> unit) -> Symtable.global_map -> unit
val is_defined_in_global_map : Symtable.global_map -> Symtable.Global.t -> bool
type error =
  1. | Undefined_global of Symtable.Global.t
  2. | Unavailable_primitive of string
  3. | Wrong_vm of string
  4. | Uninitialized_global of Symtable.Global.t
exception Error of Symtable.error
val report_error : Stdlib.Format.formatter -> Symtable.error -> unit
val reset : unit -> unit