aboutsummaryrefslogtreecommitdiff
path: root/kernel/constant.ml
diff options
context:
space:
mode:
authorfilliatr1999-08-25 14:12:43 +0000
committerfilliatr1999-08-25 14:12:43 +0000
commit979451471e37a76ce15e45f7b174a49cbb73f9ae (patch)
tree14ef4a6b2495e09c5f910fb65ffe136e5a15e3a0 /kernel/constant.ml
parent14524e0b6ab7458d7b373fd269bb03b658dab243 (diff)
modules Instantiate, Constant et Inductive
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@22 85f007b7-540e-0410-9357-904b9bb8a0f7
Diffstat (limited to 'kernel/constant.ml')
-rw-r--r--kernel/constant.ml33
1 files changed, 33 insertions, 0 deletions
diff --git a/kernel/constant.ml b/kernel/constant.ml
new file mode 100644
index 0000000000..0b52af6956
--- /dev/null
+++ b/kernel/constant.ml
@@ -0,0 +1,33 @@
+
+(* $Id$ *)
+
+open Names
+open Generic
+open Term
+open Sign
+
+type discharge_recipe = {
+ d_expand : section_path list;
+ d_modify : (sorts oper * sorts oper modification) list;
+ d_abstract : identifier list;
+ d_from : section_path }
+
+type recipe =
+ | Cooked of constr
+ | Recipe of discharge_recipe
+
+type constant_body = {
+ const_kind : path_kind;
+ const_body : recipe ref option;
+ const_type : typed_type;
+ const_hyps : context;
+ mutable const_opaque : bool;
+ mutable const_eval : ((int * constr) list * int * bool) option option;
+}
+
+type constant_entry = section_path * constant_body
+
+let is_defined cb =
+ match cb.const_body with Some _ -> true | _ -> false
+
+let is_opaque cb = cb.const_opaque