X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=helm%2Fsoftware%2Flambda-delta%2Fbasic_rg%2FbrgUntrusted.ml;h=311061aaac2866061008041d6507b00ee182855c;hb=cacd19eb7ce2395301b31ed3932b4cd7c23ca90e;hp=f9c23d73fb94c9426539292c0f6497d9f8ef0c9a;hpb=f983656c56d37a50536e50a319114dbfa592c9a0;p=helm.git diff --git a/helm/software/lambda-delta/basic_rg/brgUntrusted.ml b/helm/software/lambda-delta/basic_rg/brgUntrusted.ml index f9c23d73f..311061aaa 100644 --- a/helm/software/lambda-delta/basic_rg/brgUntrusted.ml +++ b/helm/software/lambda-delta/basic_rg/brgUntrusted.ml @@ -9,7 +9,9 @@ \ / This software is distributed as is, NO WARRANTY. V_______________________________________________________________ *) +module U = NUri module L = Log +module Y = Entity module B = Brg module E = BrgEnvironment module R = BrgReduction @@ -18,16 +20,15 @@ module T = BrgType (* Interface functions ******************************************************) (* to share *) -let type_check f ?(si=false) g = function - | None -> f None None - | Some (e, uri, B.Abst t) -> - let f tt obj = f (Some tt) (Some obj) in - let f xt tt = E.set_obj (f tt) (e, uri, B.Abst xt) in - L.loc := e; T.type_of f ~si g R.empty_machine t - | Some (e, uri, B.Abbr t) -> - let f tt obj = f (Some tt) (Some obj) in - let f xt tt = E.set_obj (f tt) (e, uri, B.Abbr xt) in - L.loc := e; T.type_of f ~si g R.empty_machine t - | Some (e, uri, B.Void) -> - let f obj = f None (Some obj) in - L.loc := e; E.set_obj f (e, uri, B.Void) +let type_check err f st = function + | a, uri, Y.Abst t -> + let f xt tt = + let e = E.set_entity (a, uri, Y.Abst xt) in f tt e + in + L.loc := U.string_of_uri uri; T.type_of err f st R.empty_kam t + | a, uri, Y.Abbr t -> + let f xt tt = + let e = E.set_entity (a, uri, Y.Abbr xt) in f tt e + in + L.loc := U.string_of_uri uri; T.type_of err f st R.empty_kam t + | _, _, Y.Void -> assert false