aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorGravatar Pierre-Marie Pédrot <pierre-marie.pedrot@inria.fr>2016-02-17 13:45:24 +0100
committerGravatar Pierre-Marie Pédrot <pierre-marie.pedrot@inria.fr>2016-03-19 01:17:39 +0100
commit805c8987fbb5fdeb94838bb5a3a7364c0a3d3374 (patch)
tree847bc8e25c550394991eee31aba854667f0b60e7
parenta99aa093b962e228817066d00f7e12698f8df73a (diff)
Do not export entry_key from Pcoq anymore.
-rw-r--r--dev/top_printers.ml4
-rw-r--r--grammar/argextend.ml42
-rw-r--r--grammar/q_util.ml418
-rw-r--r--parsing/egramml.ml3
-rw-r--r--parsing/egramml.mli2
-rw-r--r--parsing/pcoq.ml17
-rw-r--r--parsing/pcoq.mli15
7 files changed, 18 insertions, 43 deletions
diff --git a/dev/top_printers.ml b/dev/top_printers.ml
index b8bc0483d..141eab3f3 100644
--- a/dev/top_printers.ml
+++ b/dev/top_printers.ml
@@ -520,7 +520,7 @@ let _ =
extend_vernac_command_grammar ("PrintConstr", 0) None
[GramTerminal "PrintConstr";
GramNonTerminal
- (Loc.ghost,rawwit wit_constr,Aentry (Pcoq.name_of_entry Pcoq.Constr.constr))]
+ (Loc.ghost,rawwit wit_constr,Extend.Aentry (Pcoq.name_of_entry Pcoq.Constr.constr))]
let _ =
try
@@ -536,7 +536,7 @@ let _ =
extend_vernac_command_grammar ("PrintPureConstr", 0) None
[GramTerminal "PrintPureConstr";
GramNonTerminal
- (Loc.ghost,rawwit wit_constr,Aentry (Pcoq.name_of_entry Pcoq.Constr.constr))]
+ (Loc.ghost,rawwit wit_constr,Extend.Aentry (Pcoq.name_of_entry Pcoq.Constr.constr))]
(* Setting printer of unbound global reference *)
open Names
diff --git a/grammar/argextend.ml4 b/grammar/argextend.ml4
index 5bf7b65d7..bebde706e 100644
--- a/grammar/argextend.ml4
+++ b/grammar/argextend.ml4
@@ -43,7 +43,7 @@ let make_act loc act pil =
make (List.rev pil)
let make_prod_item = function
- | ExtTerminal s -> <:expr< Pcoq.Atoken (Lexer.terminal $mlexpr_of_string s$) >>
+ | ExtTerminal s -> <:expr< Extend.Atoken (Lexer.terminal $mlexpr_of_string s$) >>
| ExtNonTerminal (_, g, _) ->
let base s = <:expr< Pcoq.name_of_entry $lid:s$ >> in
mlexpr_of_prod_entry_key base g
diff --git a/grammar/q_util.ml4 b/grammar/q_util.ml4
index 4160d03c5..d91bfd7b8 100644
--- a/grammar/q_util.ml4
+++ b/grammar/q_util.ml4
@@ -48,18 +48,18 @@ let mlexpr_of_ident id =
<:expr< Names.Id.of_string $str:id$ >>
let rec mlexpr_of_prod_entry_key f = function
- | Extend.Ulist1 s -> <:expr< Pcoq.Alist1 $mlexpr_of_prod_entry_key f s$ >>
- | Extend.Ulist1sep (s,sep) -> <:expr< Pcoq.Alist1sep $mlexpr_of_prod_entry_key f s$ $str:sep$ >>
- | Extend.Ulist0 s -> <:expr< Pcoq.Alist0 $mlexpr_of_prod_entry_key f s$ >>
- | Extend.Ulist0sep (s,sep) -> <:expr< Pcoq.Alist0sep $mlexpr_of_prod_entry_key f s$ $str:sep$ >>
- | Extend.Uopt s -> <:expr< Pcoq.Aopt $mlexpr_of_prod_entry_key f s$ >>
- | Extend.Umodifiers s -> <:expr< Pcoq.Amodifiers $mlexpr_of_prod_entry_key f s$ >>
- | Extend.Uentry e -> <:expr< Pcoq.Aentry $f e$ >>
+ | Extend.Ulist1 s -> <:expr< Extend.Alist1 $mlexpr_of_prod_entry_key f s$ >>
+ | Extend.Ulist1sep (s,sep) -> <:expr< Extend.Alist1sep $mlexpr_of_prod_entry_key f s$ $str:sep$ >>
+ | Extend.Ulist0 s -> <:expr< Extend.Alist0 $mlexpr_of_prod_entry_key f s$ >>
+ | Extend.Ulist0sep (s,sep) -> <:expr< Extend.Alist0sep $mlexpr_of_prod_entry_key f s$ $str:sep$ >>
+ | Extend.Uopt s -> <:expr< Extend.Aopt $mlexpr_of_prod_entry_key f s$ >>
+ | Extend.Umodifiers s -> <:expr< Extend.Amodifiers $mlexpr_of_prod_entry_key f s$ >>
+ | Extend.Uentry e -> <:expr< Extend.Aentry $f e$ >>
| Extend.Uentryl (e, l) ->
(** Keep in sync with Pcoq! *)
assert (CString.equal e "tactic");
- if l = 5 then <:expr< Pcoq.Aentry (Pcoq.name_of_entry Pcoq.Tactic.binder_tactic) >>
- else <:expr< Pcoq.Aentryl (Pcoq.name_of_entry Pcoq.Tactic.tactic_expr) $mlexpr_of_int l$ >>
+ if l = 5 then <:expr< Extend.Aentry (Pcoq.name_of_entry Pcoq.Tactic.binder_tactic) >>
+ else <:expr< Extend.Aentryl (Pcoq.name_of_entry Pcoq.Tactic.tactic_expr) $mlexpr_of_int l$ >>
let rec type_of_user_symbol = function
| Ulist1 s | Ulist1sep (s, _) | Ulist0 s | Ulist0sep (s, _) | Umodifiers s ->
diff --git a/parsing/egramml.ml b/parsing/egramml.ml
index 77252e742..37fccdb3c 100644
--- a/parsing/egramml.ml
+++ b/parsing/egramml.ml
@@ -9,6 +9,7 @@
open Util
open Compat
open Names
+open Extend
open Pcoq
open Genarg
open Vernacexpr
@@ -18,7 +19,7 @@ open Vernacexpr
type 's grammar_prod_item =
| GramTerminal of string
| GramNonTerminal :
- Loc.t * 'a raw_abstract_argument_type * ('s, 'a) entry_key -> 's grammar_prod_item
+ Loc.t * 'a raw_abstract_argument_type * ('s, 'a) symbol -> 's grammar_prod_item
type 'a ty_arg = ('a -> raw_generic_argument)
diff --git a/parsing/egramml.mli b/parsing/egramml.mli
index edf971574..1ad947200 100644
--- a/parsing/egramml.mli
+++ b/parsing/egramml.mli
@@ -16,7 +16,7 @@ open Vernacexpr
type 's grammar_prod_item =
| GramTerminal of string
| GramNonTerminal : Loc.t * 'a Genarg.raw_abstract_argument_type *
- ('s, 'a) Pcoq.entry_key -> 's grammar_prod_item
+ ('s, 'a) Extend.symbol -> 's grammar_prod_item
val extend_vernac_command_grammar :
Vernacexpr.extend_name -> vernac_expr Pcoq.Gram.entry option ->
diff --git a/parsing/pcoq.ml b/parsing/pcoq.ml
index 238b9edd4..dac5b3bfd 100644
--- a/parsing/pcoq.ml
+++ b/parsing/pcoq.ml
@@ -64,21 +64,8 @@ let weaken_entry x = Gramobj.weaken_entry x
dynamically interpreted as entries for the Coq level extensions
*)
-type ('self, 'a) entry_key = ('self, 'a) Extend.symbol =
-| Atoken : Tok.t -> ('self, string) entry_key
-| Alist1 : ('self, 'a) entry_key -> ('self, 'a list) entry_key
-| Alist1sep : ('self, 'a) entry_key * string -> ('self, 'a list) entry_key
-| Alist0 : ('self, 'a) entry_key -> ('self, 'a list) entry_key
-| Alist0sep : ('self, 'a) entry_key * string -> ('self, 'a list) entry_key
-| Aopt : ('self, 'a) entry_key -> ('self, 'a option) entry_key
-| Amodifiers : ('self, 'a) entry_key -> ('self, 'a list) entry_key
-| Aself : ('self, 'self) entry_key
-| Anext : ('self, 'self) entry_key
-| Aentry : 'a Entry.t -> ('self, 'a) entry_key
-| Aentryl : 'a Entry.t * int -> ('self, 'a) entry_key
-
type entry_name = EntryName :
- 'a raw_abstract_argument_type * (Tacexpr.raw_tactic_expr, 'a) entry_key -> entry_name
+ 'a raw_abstract_argument_type * (Tacexpr.raw_tactic_expr, 'a) symbol -> entry_name
(** Grammar extensions *)
@@ -684,7 +671,7 @@ let rec symbol_of_constr_prod_entry_key assoc from forpat typ =
(** Binding general entry keys to symbol *)
-let rec symbol_of_prod_entry_key : type s a. (s, a) entry_key -> _ = function
+let rec symbol_of_prod_entry_key : type s a. (s, a) symbol -> _ = function
| Atoken t -> Symbols.stoken t
| Alist1 s -> Symbols.slist1 (symbol_of_prod_entry_key s)
| Alist1sep (s,sep) ->
diff --git a/parsing/pcoq.mli b/parsing/pcoq.mli
index c1c018713..d6bfe3eb3 100644
--- a/parsing/pcoq.mli
+++ b/parsing/pcoq.mli
@@ -112,19 +112,6 @@ type gram_reinit = gram_assoc * gram_position
dynamically interpreted as entries for the Coq level extensions
*)
-type ('self, 'a) entry_key = ('self, 'a) Extend.symbol =
-| Atoken : Tok.t -> ('self, string) entry_key
-| Alist1 : ('self, 'a) entry_key -> ('self, 'a list) entry_key
-| Alist1sep : ('self, 'a) entry_key * string -> ('self, 'a list) entry_key
-| Alist0 : ('self, 'a) entry_key -> ('self, 'a list) entry_key
-| Alist0sep : ('self, 'a) entry_key * string -> ('self, 'a list) entry_key
-| Aopt : ('self, 'a) entry_key -> ('self, 'a option) entry_key
-| Amodifiers : ('self, 'a) entry_key -> ('self, 'a list) entry_key
-| Aself : ('self, 'self) entry_key
-| Anext : ('self, 'self) entry_key
-| Aentry : 'a Entry.t -> ('self, 'a) entry_key
-| Aentryl : 'a Entry.t * int -> ('self, 'a) entry_key
-
(** Add one extension at some camlp4 position of some camlp4 entry *)
val unsafe_grammar_extend :
grammar_object Gram.entry ->
@@ -277,7 +264,7 @@ val epsilon_value : ('a -> 'self) -> ('self, 'a) Extend.symbol -> 'self option
(** Binding general entry keys to symbols *)
type entry_name = EntryName :
- 'a raw_abstract_argument_type * (raw_tactic_expr, 'a) entry_key -> entry_name
+ 'a raw_abstract_argument_type * (raw_tactic_expr, 'a) Extend.symbol -> entry_name
(** [interp_entry_name lev n sep] returns the entry corresponding to the name
[n] of the form "ne_constr_list" in a tactic entry of level [lev] with