aboutsummaryrefslogtreecommitdiff
path: root/pretyping/coercionops.ml
diff options
context:
space:
mode:
Diffstat (limited to 'pretyping/coercionops.ml')
-rw-r--r--pretyping/coercionops.ml6
1 files changed, 6 insertions, 0 deletions
diff --git a/pretyping/coercionops.ml b/pretyping/coercionops.ml
index 8b864b4dd3..9b25d63640 100644
--- a/pretyping/coercionops.ml
+++ b/pretyping/coercionops.ml
@@ -57,9 +57,13 @@ module ClTypMap = Map.Make(ClTyp)
module ClPairMap = Map.Make(ClPairOrd)
type cl_info_typ = {
+ (* The number of parameters of the coercion class. *)
cl_param : int;
+ (* The sets of coercion classes respectively reachable from and to the
+ coercion class. *)
cl_reachable_from : ClTypSet.t;
cl_reachable_to : ClTypSet.t;
+ (* The representative class of the strongly connected component. *)
cl_repr : cl_typ;
}
@@ -114,6 +118,8 @@ let add_new_path x y =
let class_info cl = ClTypMap.find cl !class_tab
+let class_nparams cl = (class_info cl).cl_param
+
let class_exists cl = ClTypMap.mem cl !class_tab
let coercion_info coe = CoeTypMap.find coe !coercion_tab