X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=helm%2Fsoftware%2Fcomponents%2Fgrafite_engine%2FgrafiteTypes.ml;h=66da43c8f36259edc8111f14014a658a42755f4b;hb=a9c8d96d47a5895c99bca2fe93decf464bca62c3;hp=fe872c128283332a31d83037693e9e9027b89bda;hpb=61a2faa2694907757dd617175e0144705e79d65a;p=helm.git diff --git a/helm/software/components/grafite_engine/grafiteTypes.ml b/helm/software/components/grafite_engine/grafiteTypes.ml index fe872c128..66da43c8f 100644 --- a/helm/software/components/grafite_engine/grafiteTypes.ml +++ b/helm/software/components/grafite_engine/grafiteTypes.ml @@ -44,20 +44,18 @@ type proof_status = (* Status in which the proof could be while it is being processed by the * engine. No status entering/exiting the engine could be in it. *) -module StringMap = Map.Make (String) -type option_value = - | String of string - | Int of int -type options = option_value StringMap.t -let no_options = StringMap.empty +type ng_status = + | ProofMode of NTacStatus.tac_status + | CommandMode of LexiconEngine.status type status = { moo_content_rev: GrafiteMarshal.moo; proof_status: proof_status; - options: options; objects: UriManager.uri list; - coercions: UriManager.uri list; - universe:Universe.universe; + coercions: CoercDb.coerc_db; + automation_cache:AutomationCache.cache; + baseuri: string; + ng_status: ng_status; } let get_current_proof status = @@ -69,8 +67,8 @@ let get_current_proof status = let get_proof_metasenv status = match status.proof_status with | No_proof -> [] - | Proof (_, metasenv, _, _, _) - | Incomplete_proof { proof = (_, metasenv, _, _, _) } + | Proof (_, metasenv, _, _, _, _) + | Incomplete_proof { proof = (_, metasenv, _, _, _, _) } | Intermediate metasenv -> metasenv @@ -93,11 +91,11 @@ let set_metasenv metasenv status = let proof_status = match status.proof_status with | No_proof -> Intermediate metasenv - | Incomplete_proof ({ proof = (uri, _, proof, ty, attrs) } as incomplete_proof) -> + | Incomplete_proof ({ proof = (uri, _, subst, proof, ty, attrs) } as incomplete_proof) -> Incomplete_proof - { incomplete_proof with proof = (uri, metasenv, proof, ty, attrs) } + { incomplete_proof with proof = (uri, metasenv, subst, proof, ty, attrs) } | Intermediate _ -> Intermediate metasenv - | Proof (_, metasenv', _, _, _) -> + | Proof (_, metasenv', _, _, _, _) -> assert (metasenv = metasenv'); status.proof_status in @@ -105,14 +103,14 @@ let set_metasenv metasenv status = let get_proof_context status goal = match status.proof_status with - | Incomplete_proof { proof = (_, metasenv, _, _, _) } -> + | Incomplete_proof { proof = (_, metasenv, _, _, _, _) } -> let (_, context, _) = CicUtil.lookup_meta goal metasenv in context | _ -> [] let get_proof_conclusion status goal = match status.proof_status with - | Incomplete_proof { proof = (_, metasenv, _, _, _) } -> + | Incomplete_proof { proof = (_, metasenv, _, _, _, _) } -> let (_, _, conclusion) = CicUtil.lookup_meta goal metasenv in conclusion | _ -> raise (Statement_error "no ongoing proof") @@ -136,21 +134,18 @@ let add_moo_content cmds status = GrafiteAstPp.pp_command content')); *) { status with moo_content_rev = content' } +let get_baseuri status = status.baseuri;; + +(* let get_option status name = try StringMap.find name status.options with Not_found -> raise (Option_error (name, "not found")) - + let set_option status name value = - let mangle_dir s = - let s = Str.global_replace (Str.regexp "//+") "/" s in - let s = Str.global_replace (Str.regexp "/$") "" s in - s - in - let types = [ "baseuri", (`String, mangle_dir); ] in + let types = [ (* no set options defined! *) ] in let ty_and_mangler = - try - List.assoc name types + try List.assoc name types with Not_found -> command_error (Printf.sprintf "Unknown option \"%s\"" name) in @@ -163,9 +158,6 @@ let set_option status name value = with Failure _ -> command_error (Printf.sprintf "Not an integer value \"%s\"" value)) in - if StringMap.mem name status.options && name = "baseuri" then - command_error "Redefinition of 'baseuri' is forbidden." - else { status with options = StringMap.add name value status.options } @@ -173,8 +165,7 @@ let get_string_option status name = match get_option status name with | String s -> s | _ -> raise (Option_error (name, "not a string value")) - -let qualify status name = get_string_option status "baseuri" ^ "/" ^ name +*) let dump_status status = HLog.message "status.aliases:\n"; @@ -186,6 +177,7 @@ let dump_status status = | Proof _ -> "proof\n" | Intermediate _ -> "Intermediate\n"); HLog.message "status.options\n"; +(* REMOVEME StringMap.iter (fun k v -> let v = match v with @@ -193,7 +185,9 @@ let dump_status status = | Int i -> string_of_int i in HLog.message (k ^ "::=" ^ v)) status.options; +*) HLog.message "status.coercions\n"; HLog.message "status.objects:\n"; List.iter (fun u -> HLog.message (UriManager.string_of_uri u)) status.objects +