]> rtime.felk.cvut.cz Git - l4.git/blob - l4/pkg/ocaml/contrib/typing/includemod.mli
Inital import
[l4.git] / l4 / pkg / ocaml / contrib / typing / includemod.mli
1 (***********************************************************************)
2 (*                                                                     *)
3 (*                           Objective Caml                            *)
4 (*                                                                     *)
5 (*            Xavier Leroy, projet Cristal, INRIA Rocquencourt         *)
6 (*                                                                     *)
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.               *)
10 (*                                                                     *)
11 (***********************************************************************)
12
13 (* $Id: includemod.mli 7619 2006-09-20 11:14:37Z doligez $ *)
14
15 (* Inclusion checks for the module language *)
16
17 open Types
18 open Typedtree
19 open Format
20
21 val modtypes: Env.t -> module_type -> module_type -> module_coercion
22 val signatures: Env.t -> signature -> signature -> module_coercion
23 val compunit: string -> signature -> string -> signature -> module_coercion
24 val type_declarations:
25       Env.t -> Ident.t -> type_declaration -> type_declaration -> unit
26
27 type error =
28     Missing_field of Ident.t
29   | Value_descriptions of Ident.t * value_description * value_description
30   | Type_declarations of Ident.t * type_declaration * type_declaration
31   | Exception_declarations of
32       Ident.t * exception_declaration * exception_declaration
33   | Module_types of module_type * module_type
34   | Modtype_infos of Ident.t * modtype_declaration * modtype_declaration
35   | Modtype_permutation
36   | Interface_mismatch of string * string
37   | Class_type_declarations of
38       Ident.t * cltype_declaration * cltype_declaration *
39       Ctype.class_match_failure list
40   | Class_declarations of
41       Ident.t * class_declaration * class_declaration *
42       Ctype.class_match_failure list
43   | Unbound_modtype_path of Path.t
44
45 exception Error of error list
46
47 val report_error: formatter -> error list -> unit