V_______________________________________________________________ *)
type ('a, 'b) item = Term of 'a * 'b
- | Context of 'a
+ | LEnv of 'a
| Warn of string
| String of string
+ | Loc
+
+type ('a, 'b) message = ('a, 'b) item list
type ('a, 'b) specs = {
- pp_term : 'a -> Format.formatter -> 'b -> unit;
- pp_context: Format.formatter -> 'a -> unit
+ pp_term: 'a -> Format.formatter -> 'b -> unit;
+ pp_lenv: Format.formatter -> 'a -> unit
}
+val loc: string ref
+
val level: int ref
val warn: string -> unit
val flush_err: unit -> unit
-val log: ('a, 'b) specs -> int -> ('a, 'b) item list -> unit
+val log: ('a, 'b) specs -> int -> ('a, 'b) message -> unit
+
+val error: ('a, 'b) specs -> ('a, 'b) message -> unit
+
+val items1: string -> ('a, 'b) message
-val error: ('a, 'b) specs -> ('a, 'b) item list -> unit
+val t_items1: string -> 'a -> 'b -> ('a, 'b) message
-val items1: string -> ('a, 'b) item list
+val et_items1:
+ string -> 'a -> string -> 'b -> ('a, 'b) message
-val ct_items1: string -> 'a -> 'b -> ('a, 'b) item list
+val et_items2:
+ string -> 'a -> string -> 'b ->
+ ?sc2:string -> ?c2:'a -> string -> 'b ->
+ ('a, 'b) message
-val ct_items2: string -> 'a -> 'b -> string -> 'a -> 'b -> ('a, 'b) item list
+val et_items3:
+ string -> 'a -> string -> 'b ->
+ ?sc2:string -> ?c2:'a -> string -> 'b ->
+ ?sc3:string -> ?c3:'a -> string -> 'b ->
+ ('a, 'b) message