1 (**************************************************************************)
2 (* *)
3 (* OCaml *)
4 (* *)
5 (* Xavier Leroy, projet Cristal, INRIA Rocquencourt *)
6 (* Mark Shinwell and Leo White, Jane Street Europe *)
7 (* *)
8 (* Copyright 1996 Institut National de Recherche en Informatique et *)
9 (* en Automatique. *)
10 (* Copyright 2017--2018 Jane Street Group LLC *)
11 (* *)
12 (* All rights reserved. This file is distributed under the terms of *)
13 (* the GNU Lesser General Public License version 2.1, with the *)
14 (* special exception on linking described in the file LICENSE. *)
15 (* *)
16 (**************************************************************************)
17
18 [@@@ocaml.warning "+a-4-30-40-41-42"]
19
20 (** Construction of dynlink functionality given the platform-specific code. *)
21
22 module Make (_ : Dynlink_platform_intf.S) : sig
23 val is_native : bool
24 val loadfile : string -> unit
25 val loadfile_private : string -> unit
26 val unsafe_get_global_value : bytecode_or_asm_symbol:string -> Obj.t option
27 val adapt_filename : string -> string
28 val set_allowed_units : string list -> unit
29 val allow_only: string list -> unit
30 val prohibit : string list -> unit
31 val main_program_units : unit -> string list
32 val public_dynamically_loaded_units : unit -> string list
33 val all_units : unit -> string list
34 val allow_unsafe_modules : bool -> unit
35 end
36