X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=helm%2Fsoftware%2Fcomponents%2Facic_content%2FcicNotationPp.ml;h=f94891375fa7adddf8be10dc2d817692ae594270;hb=refs%2Fheads%2Fmatita-lablgtk3;hp=b2cb12f9280120e595e6c90948b5e47b28f75ac3;hpb=cfb41205e930ede65c1d19ec7ec6f252e0803d55;p=helm.git diff --git a/helm/software/components/acic_content/cicNotationPp.ml b/helm/software/components/acic_content/cicNotationPp.ml index b2cb12f92..f94891375 100644 --- a/helm/software/components/acic_content/cicNotationPp.ml +++ b/helm/software/components/acic_content/cicNotationPp.ml @@ -117,14 +117,14 @@ let rec pp_term ?(pp_parens = true) t = (pp_term ~pp_parens:true t3) | Ast.LetRec (kind, definitions, term) -> let rec get_guard i = function - | [] -> (*assert false*) Ast.Implicit + | [] -> (*assert false*) Ast.Implicit `JustOne | [term, _] when i = 1 -> term | _ :: tl -> get_guard (pred i) tl in let map (params, (id,typ), body, i) = let typ = match typ with - None -> Ast.Implicit + None -> Ast.Implicit `JustOne | Some typ -> typ in sprintf "%s %s on %s: %s \\def %s" @@ -138,12 +138,15 @@ let rec pp_term ?(pp_parens = true) t = (String.concat " and " (List.map map definitions)) (pp_term term) | Ast.Ident (name, Some []) | Ast.Ident (name, None) - | Ast.Uri (name, Some []) | Ast.Uri (name, None) -> - name + | Ast.Uri (name, Some []) | Ast.Uri (name, None) -> name + | Ast.NRef nref -> NReference.string_of_reference nref + | Ast.NCic cic -> NCicPp.ppterm ~metasenv:[] ~context:[] ~subst:[] cic | Ast.Ident (name, Some substs) | Ast.Uri (name, Some substs) -> sprintf "%s \\subst [%s]" name (pp_substs substs) - | Ast.Implicit -> "?" + | Ast.Implicit `Vector -> "…" + | Ast.Implicit `JustOne -> "?" + | Ast.Implicit (`Tagged name) -> "?"^name | Ast.Meta (index, substs) -> sprintf "%d[%s]" index (String.concat "; " @@ -157,7 +160,7 @@ let rec pp_term ?(pp_parens = true) t = | Ast.Sort (`NCProp s)-> "CProp[" ^ s ^ "]" | Ast.Symbol (name, _) -> "'" ^ name - | Ast.UserInput -> "" + | Ast.UserInput -> "%" | Ast.Literal l -> pp_literal l | Ast.Layout l -> pp_layout l @@ -166,7 +169,8 @@ let rec pp_term ?(pp_parens = true) t = in match pp_parens, t with | false, _ - | true, Ast.Implicit + | true, Ast.Implicit _ + | true, Ast.UserInput | true, Ast.Sort _ | true, Ast.Ident (_, Some []) | true, Ast.Ident (_, None) -> t_pp @@ -294,10 +298,12 @@ let pp_fields pp_term fields = (List.map (fun (name,ty,coercion,arity) -> " " ^ name ^ - if coercion then (":" ^ - if arity > 0 then string_of_int arity else "" ^ ">") else ": " ^ - pp_term ty) fields) - + (if coercion then + (":" ^ (if arity > 0 then string_of_int arity else "") ^ "> ") + else ": ") ^ + pp_term ty) + fields) + let pp_obj pp_term = function | Ast.Inductive (params, types) -> let pp_constructors constructors = @@ -318,9 +324,9 @@ let pp_obj pp_term = function (pp_term typ) (pp_constructors constructors) in fst_typ_pp ^ String.concat "" (List.map pp_type tl)) - | Ast.Theorem (`MutualDefinition, name, typ, body) -> + | Ast.Theorem (`MutualDefinition, name, typ, body,_) -> sprintf "<>" - | Ast.Theorem (flavour, name, typ, body) -> + | Ast.Theorem (flavour, name, typ, body,_) -> sprintf "%s %s:\n %s\n%s" (pp_flavour flavour) name @@ -357,6 +363,7 @@ let pp_env env = let rec pp_cic_appl_pattern = function | Ast.UriPattern uri -> UriManager.string_of_uri uri + | Ast.NRefPattern nref -> NReference.string_of_reference nref | Ast.VarPattern name -> name | Ast.ImplicitPattern -> "?" | Ast.ApplPattern aps ->