1995-08-09 08:06:35 -07:00
|
|
|
(***********************************************************************)
|
|
|
|
(* *)
|
2011-07-27 07:17:02 -07:00
|
|
|
(* OCaml *)
|
1995-08-09 08:06:35 -07:00
|
|
|
(* *)
|
|
|
|
(* Xavier Leroy, projet Cristal, INRIA Rocquencourt *)
|
|
|
|
(* *)
|
1996-04-30 07:53:58 -07:00
|
|
|
(* Copyright 1996 Institut National de Recherche en Informatique et *)
|
1999-11-17 10:59:06 -08:00
|
|
|
(* en Automatique. All rights reserved. This file is distributed *)
|
|
|
|
(* under the terms of the Q Public License version 1.0. *)
|
1995-08-09 08:06:35 -07:00
|
|
|
(* *)
|
|
|
|
(***********************************************************************)
|
|
|
|
|
1995-05-04 03:15:53 -07:00
|
|
|
(* Inclusion checks for the core language *)
|
|
|
|
|
|
|
|
open Typedtree
|
2012-05-30 07:52:37 -07:00
|
|
|
open Types
|
1995-05-04 03:15:53 -07:00
|
|
|
|
1995-10-23 09:59:41 -07:00
|
|
|
exception Dont_match
|
|
|
|
|
2010-05-20 20:36:52 -07:00
|
|
|
type type_mismatch =
|
|
|
|
Arity
|
|
|
|
| Privacy
|
|
|
|
| Kind
|
|
|
|
| Constraint
|
|
|
|
| Manifest
|
|
|
|
| Variance
|
2012-05-30 07:52:37 -07:00
|
|
|
| Field_type of Ident.t
|
|
|
|
| Field_mutable of Ident.t
|
|
|
|
| Field_arity of Ident.t
|
|
|
|
| Field_names of int * Ident.t * Ident.t
|
|
|
|
| Field_missing of bool * Ident.t
|
2010-05-21 08:13:47 -07:00
|
|
|
| Record_representation of bool
|
2010-05-20 20:36:52 -07:00
|
|
|
|
1995-05-04 03:15:53 -07:00
|
|
|
val value_descriptions:
|
2010-05-20 20:36:52 -07:00
|
|
|
Env.t -> value_description -> value_description -> module_coercion
|
1995-05-04 03:15:53 -07:00
|
|
|
val type_declarations:
|
2012-04-25 00:34:41 -07:00
|
|
|
?equality:bool ->
|
|
|
|
Env.t -> string ->
|
|
|
|
type_declaration -> Ident.t -> type_declaration -> type_mismatch list
|
2014-05-04 16:08:45 -07:00
|
|
|
val extension_constructors:
|
|
|
|
Env.t -> Ident.t -> extension_constructor -> extension_constructor -> bool
|
1998-06-24 12:22:26 -07:00
|
|
|
(*
|
1997-03-09 16:23:13 -08:00
|
|
|
val class_types:
|
1997-05-19 08:42:21 -07:00
|
|
|
Env.t -> class_type -> class_type -> bool
|
1998-06-24 12:22:26 -07:00
|
|
|
*)
|
2010-05-20 20:36:52 -07:00
|
|
|
|
2010-05-21 08:13:47 -07:00
|
|
|
val report_type_mismatch:
|
|
|
|
string -> string -> string -> Format.formatter -> type_mismatch list -> unit
|