* Added Array.{map2,fold_left2,fold_right2} (from stdlib2)
[ocaml.git] / typing / printtyp.mli
blob5e3402ff8f174495cd2afc4a2a1ab1a60e896583
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 (***********************************************************************)
13 (* $Id$ *)
15 (* Printing functions *)
17 open Format
18 open Types
19 open Outcometree
21 val longident: formatter -> Longident.t -> unit
22 val ident: formatter -> Ident.t -> unit
23 val tree_of_path: Path.t -> out_ident
24 val path: formatter -> Path.t -> unit
25 val raw_type_expr: formatter -> type_expr -> unit
26 val reset: unit -> unit
27 val mark_loops: type_expr -> unit
28 val reset_and_mark_loops: type_expr -> unit
29 val reset_and_mark_loops_list: type_expr list -> unit
30 val type_expr: formatter -> type_expr -> unit
31 val tree_of_type_scheme: type_expr -> out_type
32 val type_sch : formatter -> type_expr -> unit
33 val type_scheme: formatter -> type_expr -> unit
34 (* Maxence *)
35 val reset_names: unit -> unit
36 val type_scheme_max: ?b_reset_names: bool ->
37 formatter -> type_expr -> unit
38 (* Fin Maxence *)
39 val tree_of_value_description: Ident.t -> value_description -> out_sig_item
40 val value_description: Ident.t -> formatter -> value_description -> unit
41 val tree_of_type_declaration: Ident.t -> type_declaration -> rec_status -> out_sig_item
42 val type_declaration: Ident.t -> formatter -> type_declaration -> unit
43 val tree_of_exception_declaration: Ident.t -> exception_declaration -> out_sig_item
44 val exception_declaration: Ident.t -> formatter -> exception_declaration -> unit
45 val tree_of_module: Ident.t -> module_type -> rec_status -> out_sig_item
46 val modtype: formatter -> module_type -> unit
47 val signature: formatter -> signature -> unit
48 val tree_of_modtype_declaration: Ident.t -> modtype_declaration -> out_sig_item
49 val modtype_declaration: Ident.t -> formatter -> modtype_declaration -> unit
50 val class_type: formatter -> class_type -> unit
51 val tree_of_class_declaration: Ident.t -> class_declaration -> rec_status -> out_sig_item
52 val class_declaration: Ident.t -> formatter -> class_declaration -> unit
53 val tree_of_cltype_declaration: Ident.t -> cltype_declaration -> rec_status -> out_sig_item
54 val cltype_declaration: Ident.t -> formatter -> cltype_declaration -> unit
55 val type_expansion: type_expr -> Format.formatter -> type_expr -> unit
56 val prepare_expansion: type_expr * type_expr -> type_expr * type_expr
57 val trace: bool -> string -> formatter -> (type_expr * type_expr) list -> unit
58 val unification_error:
59 bool -> (type_expr * type_expr) list ->
60 (formatter -> unit) -> formatter -> (formatter -> unit) ->
61 unit
62 val report_unification_error:
63 formatter -> (type_expr * type_expr) list ->
64 (formatter -> unit) -> (formatter -> unit) ->
65 unit
66 val report_subtyping_error:
67 formatter -> (type_expr * type_expr) list ->
68 string -> (type_expr * type_expr) list -> unit