diff options
author | msozeau <msozeau@85f007b7-540e-0410-9357-904b9bb8a0f7> | 2011-11-18 14:02:22 +0000 |
---|---|---|
committer | msozeau <msozeau@85f007b7-540e-0410-9357-904b9bb8a0f7> | 2011-11-18 14:02:22 +0000 |
commit | ec0c502f5c6920c2fd59a926c9de050cdf7780e1 (patch) | |
tree | 1bd8392352aeeaa235ffd1941a1fb903acd3144b /pretyping/typeclasses.mli | |
parent | 70e59380e6a6fb6cc5b4685159c2311929bb7b14 (diff) |
Restore backward compatibility. ":>" declares subinstances in Class declarations, in the usual backward mode,
the new token ":>>" declares the subinstance as a forward hint.
Both declare a coercion in other contexts. Cleanup the code for declarations for less confusion between
coercions and subinstance hints.
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@14679 85f007b7-540e-0410-9357-904b9bb8a0f7
Diffstat (limited to 'pretyping/typeclasses.mli')
-rw-r--r-- | pretyping/typeclasses.mli | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/pretyping/typeclasses.mli b/pretyping/typeclasses.mli index a00d23a9b..74ccaf834 100644 --- a/pretyping/typeclasses.mli +++ b/pretyping/typeclasses.mli @@ -18,6 +18,8 @@ open Mod_subst open Topconstr open Util +type direction = Forward | Backward + (** This module defines type-classes *) type typeclass = { (** The class implementation: a record parameterized by the context with defs in it or a definition if @@ -36,7 +38,7 @@ type typeclass = { Some may be undefinable due to sorting restrictions or simply undefined if no name is provided. The [int option option] indicates subclasses whose hint has the given priority. *) - cl_projs : (name * int option option * constant option) list; + cl_projs : (name * (direction * int option) option * constant option) list; } type instance |