module BE = BrgEnvironment
module BR = BrgReduction
module BT = BrgType
+module BV = BrgValidity
(* Interface functions ******************************************************)
in
L.loc := U.string_of_uri uri; BT.type_of err f st BR.empty_kam t
| _, _, E.Void -> assert false
+
+let validate err f st e =
+ let uri, t = match e with
+ | _, uri, E.Abst (_, t) -> uri, t
+ | _, uri, E.Abbr t -> uri, t
+ | _, _, E.Void -> assert false
+ in
+ let f () = let _ = BE.set_entity e in f () in
+ L.loc := U.string_of_uri uri; BV.validate err f st BR.empty_kam t