diff options
author | Stephane Glondu <steph@glondu.net> | 2009-07-04 13:28:35 +0200 |
---|---|---|
committer | Stephane Glondu <steph@glondu.net> | 2009-07-04 13:28:35 +0200 |
commit | e4282ea99c664d8d58067bee199cbbcf881b60d5 (patch) | |
tree | d4c4a873eb055c728666f367469fa26c3417793a /parsing/printer.ml | |
parent | a0a94c1340a63cdb824507b973393882666ba52a (diff) |
Imported Upstream version 8.2.pl1+dfsgupstream/8.2.pl1+dfsg
Diffstat (limited to 'parsing/printer.ml')
-rw-r--r-- | parsing/printer.ml | 42 |
1 files changed, 28 insertions, 14 deletions
diff --git a/parsing/printer.ml b/parsing/printer.ml index 10034dd9..0c673fbd 100644 --- a/parsing/printer.ml +++ b/parsing/printer.ml @@ -6,7 +6,7 @@ (* * GNU Lesser General Public License Version 2.1 *) (************************************************************************) -(* $Id: printer.ml 11739 2009-01-02 19:33:19Z herbelin $ *) +(* $Id: printer.ml 12187 2009-06-13 19:36:59Z msozeau $ *) open Pp open Util @@ -431,10 +431,11 @@ let pr_prim_rule = function (str"cut " ++ pr_constr t ++ str ";[" ++ cl ++ str"intro " ++ pr_id id ++ str"|idtac]") - | FixRule (f,n,[]) -> + | FixRule (f,n,[],_) -> (str"fix " ++ pr_id f ++ str"/" ++ int n) - | FixRule (f,n,others) -> + | FixRule (f,n,others,j) -> + if j<>0 then warning "Unsupported printing of \"fix\""; let rec print_mut = function | (f,n,ar)::oth -> pr_id f ++ str"/" ++ int n ++ str" : " ++ pr_lconstr ar ++ print_mut oth @@ -442,10 +443,11 @@ let pr_prim_rule = function (str"fix " ++ pr_id f ++ str"/" ++ int n ++ str" with " ++ print_mut others) - | Cofix (f,[]) -> + | Cofix (f,[],_) -> (str"cofix " ++ pr_id f) - | Cofix (f,others) -> + | Cofix (f,others,j) -> + if j<>0 then warning "Unsupported printing of \"fix\""; let rec print_mut = function | (f,ar)::oth -> (pr_id f ++ str" : " ++ pr_lconstr ar ++ print_mut oth) @@ -499,10 +501,10 @@ let pr_assumptionset env s = if (Environ.ContextObjectMap.is_empty s) then str "Closed under the global context" else - let (vars,axioms) = - Environ.ContextObjectMap.fold (fun o typ r -> - let (v,a) = r in - match o with + let (vars,axioms,opaque) = + Environ.ContextObjectMap.fold (fun t typ r -> + let (v,a,o) = r in + match t with | Variable id -> ( Some ( Option.default (fnl ()) v ++ str (string_of_id id) @@ -511,7 +513,7 @@ let pr_assumptionset env s = ++ fnl () ) , - a ) + a, o) | Axiom kn -> ( v , Some ( Option.default (fnl ()) a @@ -520,16 +522,28 @@ let pr_assumptionset env s = ++ pr_ltype typ ++ fnl () ) + , o ) - ) - s (None,None) + | Opaque kn -> ( v , a , + Some ( + Option.default (fnl ()) o + ++ (pr_constant env kn) + ++ str " : " + ++ pr_ltype typ + ++ fnl () + ) + ) + ) + s (None,None,None) in - let (vars,axioms) = + let (vars,axioms,opaque) = ( Option.map (fun p -> str "Section Variables:" ++ p) vars , - Option.map (fun p -> str "Axioms:" ++ p) axioms + Option.map (fun p -> str "Axioms:" ++ p) axioms , + Option.map (fun p -> str "Opaque constants:" ++ p) opaque ) in (Option.default (mt ()) vars) ++ (Option.default (mt ()) axioms) + ++ (Option.default (mt ()) opaque) let cmap_to_list m = Cmap.fold (fun k v acc -> v :: acc) m [] |