aboutsummaryrefslogtreecommitdiffhomepage
path: root/pretyping/classops.mli
diff options
context:
space:
mode:
authorGravatar letouzey <letouzey@85f007b7-540e-0410-9357-904b9bb8a0f7>2013-03-13 00:00:04 +0000
committerGravatar letouzey <letouzey@85f007b7-540e-0410-9357-904b9bb8a0f7>2013-03-13 00:00:04 +0000
commit108e88cafee662932c99a83230f674f648866613 (patch)
tree949ee9b405efe3c5d70a3efc2d51ff997a159b81 /pretyping/classops.mli
parent027618d5aa99613ffbe390371cda492690809cc7 (diff)
Restrict (try...with...) to avoid catching critical exn (part 5)
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@16281 85f007b7-540e-0410-9357-904b9bb8a0f7
Diffstat (limited to 'pretyping/classops.mli')
-rw-r--r--pretyping/classops.mli8
1 files changed, 7 insertions, 1 deletions
diff --git a/pretyping/classops.mli b/pretyping/classops.mli
index 8f36e95e6..d0c7793ae 100644
--- a/pretyping/classops.mli
+++ b/pretyping/classops.mli
@@ -47,8 +47,12 @@ type coe_index
type inheritance_path = coe_index list
(** {6 Access to classes infos } *)
-val class_info : cl_typ -> (cl_index * cl_info_typ)
+
val class_exists : cl_typ -> bool
+
+val class_info : cl_typ -> (cl_index * cl_info_typ)
+(** @raise Not_found if this type is not a class *)
+
val class_info_from_index : cl_index -> cl_typ * cl_info_typ
(** [find_class_type env sigma c] returns the head reference of [c] and its
@@ -74,7 +78,9 @@ val coercion_exists : coe_typ -> bool
val coercion_value : coe_index -> (unsafe_judgment * bool)
(** {6 Lookup functions for coercion paths } *)
+
val lookup_path_between_class : cl_index * cl_index -> inheritance_path
+(** @raise Not_found when no such path exists *)
val lookup_path_between : env -> evar_map -> types * types ->
types * types * inheritance_path