diff options
| author | herbelin | 2003-04-17 15:01:24 +0000 |
|---|---|---|
| committer | herbelin | 2003-04-17 15:01:24 +0000 |
| commit | 5b318ca418ef27d1bf2b155bebbf2425f65b4f1f (patch) | |
| tree | b04fb45d1fd3e8fb6b4253a2acbd595754ec7dc6 /parsing/extend.mli | |
| parent | 95f8a0ac38cbd792a0b5d8006aac1ef1a9f70da8 (diff) | |
Ajout "at next level" dans Notation
Mise en place structure pour définir un objet en même temps que sa notation
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@3939 85f007b7-540e-0410-9357-904b9bb8a0f7
Diffstat (limited to 'parsing/extend.mli')
| -rw-r--r-- | parsing/extend.mli | 18 |
1 files changed, 12 insertions, 6 deletions
diff --git a/parsing/extend.mli b/parsing/extend.mli index 808e50158b..ef685ffb16 100644 --- a/parsing/extend.mli +++ b/parsing/extend.mli @@ -25,14 +25,20 @@ type production_position = | BorderProd of bool * Gramext.g_assoc option (* true=left; false=right *) | InternalProd -type 'pos constr_entry_key = +type production_level = + | NextLevel + | NumLevel of int + +type ('lev,'pos) constr_entry_key = | ETIdent | ETReference | ETBigint - | ETConstr of (int * 'pos) + | ETConstr of ('lev * 'pos) | ETPattern | ETOther of string * string -type constr_production_entry = production_position constr_entry_key -type constr_entry = unit constr_entry_key +type constr_production_entry = + (production_level,production_position) constr_entry_key +type constr_entry = (int,unit) constr_entry_key +type simple_constr_production_entry = (production_level,unit) constr_entry_key type nonterm_prod = | ProdList0 of nonterm_prod @@ -68,10 +74,10 @@ val set_constr_globalizer : (entry_context -> constr_expr -> constr_expr) -> unit type syntax_modifier = - | SetItemLevel of string list * int + | SetItemLevel of string list * production_level | SetLevel of int | SetAssoc of Gramext.g_assoc - | SetEntryType of string * constr_entry + | SetEntryType of string * simple_constr_production_entry | SetOnlyParsing type nonterm = |
