Revision 786012623dedd375982038aefabda0cc2621afcc authored by No author on 15 March 1996, 17:35:36 UTC, committed by No author on 15 March 1996, 17:35:36 UTC
git-svn-id: http://caml.inria.fr/svn/ocaml/release/csl-1.15@704 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
1 parent 3f8f3d6
Raw File
symtable.mli
(***********************************************************************)
(*                                                                     *)
(*                         Caml Special Light                          *)
(*                                                                     *)
(*            Xavier Leroy, projet Cristal, INRIA Rocquencourt         *)
(*                                                                     *)
(*  Copyright 1995 Institut National de Recherche en Informatique et   *)
(*  Automatique.  Distributed only by permission.                      *)
(*                                                                     *)
(***********************************************************************)

(* $Id$ *)

(* Assign locations and numbers to globals and primitives *)

open Emitcode

(* Functions for batch linking *)

val init: unit -> unit
val patch_object: string -> (reloc_info * int) list -> unit
val require_primitive: string -> unit
val initial_global_table: unit -> Obj.t array
val output_global_map: out_channel -> unit
val output_primitives: string -> unit

(* Functions for the toplevel *)

val init_toplevel: unit -> unit
val update_global_table: unit -> unit
val get_global_value: Ident.t -> Obj.t
val assign_global_value: Ident.t -> Obj.t -> unit

type global_map

val current_state: unit -> global_map
val restore_state: global_map -> unit
val filter_global_map: (Ident.t -> bool) -> global_map -> global_map

(* Error report *)

type error =
    Undefined_global of string
  | Unavailable_primitive of string

exception Error of error

val report_error: error -> unit
back to top