1 (***********************************************************************)
5 (* Xavier Leroy, projet Cristal, INRIA Rocquencourt *)
7 (* Copyright 1996 Institut National de Recherche en Informatique et *)
8 (* en Automatique. All rights reserved. This file is distributed *)
9 (* under the terms of the Q Public License version 1.0. *)
11 (***********************************************************************)
13 (* $Id: predef.mli 7702 2006-10-24 20:54:58Z weis $ *)
15 (* Predefined type constructors (with special typing rules in typecore) *)
19 val type_int: type_expr
20 val type_char: type_expr
21 val type_string: type_expr
22 val type_float: type_expr
23 val type_bool: type_expr
24 val type_unit: type_expr
25 val type_exn: type_expr
26 val type_array: type_expr -> type_expr
27 val type_list: type_expr -> type_expr
28 val type_option: type_expr -> type_expr
29 val type_nativeint: type_expr
30 val type_int32: type_expr
31 val type_int64: type_expr
32 val type_lazy_t: type_expr -> type_expr
36 val path_string: Path.t
37 val path_float: Path.t
41 val path_array: Path.t
43 val path_format6: Path.t
44 val path_option: Path.t
45 val path_nativeint: Path.t
46 val path_int32: Path.t
47 val path_int64: Path.t
48 val path_lazy_t: Path.t
50 val path_match_failure: Path.t
51 val path_assert_failure : Path.t
52 val path_undefined_recursive_module : Path.t
54 (* To build the initial environment. Since there is a nasty mutual
55 recursion between predef and env, we break it by parameterizing
56 over Env.t, Env.add_type and Env.add_exception. *)
58 val build_initial_env:
59 (Ident.t -> type_declaration -> 'a -> 'a) ->
60 (Ident.t -> exception_declaration -> 'a -> 'a) ->
63 (* To initialize linker tables *)
65 val builtin_values: (string * Ident.t) list