35 lines | 1655 chars
1 | (**************************************************************************) |
2 | (* *) |
3 | (* OCaml *) |
4 | (* *) |
5 | (* Pierre Chambart, OCamlPro *) |
6 | (* Mark Shinwell and Leo White, Jane Street Europe *) |
7 | (* *) |
8 | (* Copyright 2013--2016 OCamlPro SAS *) |
9 | (* Copyright 2014--2016 Jane Street Group LLC *) |
10 | (* *) |
11 | (* All rights reserved. This file is distributed under the terms of *) |
12 | (* the GNU Lesser General Public License version 2.1, with the *) |
13 | (* special exception on linking described in the file LICENSE. *) |
14 | (* *) |
15 | (**************************************************************************) |
16 | |
17 | [@@@ocaml.warning "+a-4-9-30-40-41-42"] |
18 | |
19 | include Identifiable.S |
20 | |
21 | (* The [Ident.t] must be persistent. This function raises an exception |
22 | if that is not the case. *) |
23 | val create : Ident.t -> Linkage_name.t -> t |
24 | |
25 | val get_persistent_ident : t -> Ident.t |
26 | val get_linkage_name : t -> Linkage_name.t |
27 | |
28 | val is_current : t -> bool |
29 | val set_current : t -> unit |
30 | val get_current : unit -> t option |
31 | val get_current_exn : unit -> t |
32 | val get_current_id_exn : unit -> Ident.t |
33 | |
34 | val string_for_printing : t -> string |
35 |