diff options
author | 2008-08-22 18:22:33 +0000 | |
---|---|---|
committer | 2008-08-22 18:22:33 +0000 | |
commit | 7e3160a5b94c86d7c9ba7beae9a9464b5ddf9019 (patch) | |
tree | 62ac5b8b1016d1cc0cd4627a88716c0c393856aa /parsing | |
parent | ef9f42afe284dae1794acd2f27d6e82f8c941c7b (diff) |
- New auto hints for transparency/opacity control, not bound to
syntax yet. Doesn't change the auto/eauto behavior either.
- Typeclass resolution now considers everything transparent by
default and does it consistently for "open" and closed terms.
- Correctly declare singleton classes definition as opaque for proof
search.
- Add a few initial declarations to make iff, id, compose... opaque
- Add definition of dependent signatures for dependent function types
and remove corresponding exception code in class_tactics. The
instance requires higher-order unification and is not really usable yet.
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11333 85f007b7-540e-0410-9357-904b9bb8a0f7
Diffstat (limited to 'parsing')
-rw-r--r-- | parsing/ppvernac.ml | 3 | ||||
-rw-r--r-- | parsing/prettyp.ml | 5 | ||||
-rw-r--r-- | parsing/prettyp.mli | 2 |
3 files changed, 9 insertions, 1 deletions
diff --git a/parsing/ppvernac.ml b/parsing/ppvernac.ml index 99d8e3c4a..bfcaf9916 100644 --- a/parsing/ppvernac.ml +++ b/parsing/ppvernac.ml @@ -199,6 +199,9 @@ let pr_hints local db h pr_c pr_pat = str"Immediate" ++ spc() ++ prlist_with_sep sep pr_c l | HintsUnfold l -> str "Unfold " ++ prlist_with_sep sep pr_reference l + | HintsTransparency (l, b) -> + str (if b then "Transparent " else "Opaque ") ++ prlist_with_sep sep + pr_reference l | HintsConstructors c -> str"Constructors" ++ spc() ++ prlist_with_sep spc pr_reference c | HintsExtern (n,c,tac) -> diff --git a/parsing/prettyp.ml b/parsing/prettyp.ml index 7e10264ef..3624fe792 100644 --- a/parsing/prettyp.ml +++ b/parsing/prettyp.ml @@ -784,6 +784,11 @@ let pr_instance env i = (* lighter *) print_ref false (ConstRef (instance_impl i)) +let print_all_instances () = + let env = Global.env () in + let inst = all_instances () in + prlist_with_sep fnl (pr_instance env) inst + let print_instances r = let env = Global.env () in let inst = instances r in diff --git a/parsing/prettyp.mli b/parsing/prettyp.mli index db1d8bb10..88b0a80ec 100644 --- a/parsing/prettyp.mli +++ b/parsing/prettyp.mli @@ -61,7 +61,7 @@ val print_canonical_projections : unit -> std_ppcmds (* Pretty-printing functions for type classes and instances *) val print_typeclasses : unit -> std_ppcmds val print_instances : global_reference -> std_ppcmds - +val print_all_instances : unit -> std_ppcmds val inspect : int -> std_ppcmds |