Module Notation_term
- type notation_constr- =
- type scope_name- = string
- type tmp_scope_name- = scope_name
- type subscopes- = tmp_scope_name option * scope_name list
- type extended_subscopes- = Constrexpr.notation_entry_level * subscopes
- type constr_as_binder_kind- =- |- AsIdent- |- AsIdentOrPattern- |- AsStrictPattern
- type notation_binder_source- =- |- NtnParsedAsPattern of bool- |- NtnParsedAsIdent- |- NtnBinderParsedAsConstr of constr_as_binder_kind
- type notation_var_instance_type- =- |- NtnTypeConstr- |- NtnTypeBinder of notation_binder_source- |- NtnTypeConstrList- |- NtnTypeBinderList
- type notation_var_internalization_type- =- |- NtnInternTypeAny- |- NtnInternTypeOnlyBinder
- Type of variables when interpreting a constr_expr as a notation_constr: in a recursive pattern x..y, both x and y carry the individual type of each element of the list x..y 
- type interpretation- = (Names.Id.t * (extended_subscopes * notation_var_instance_type)) list * notation_constr
- This characterizes to what a notation is interpreted to 
- type reversibility_status- =- |- APrioriReversible- |- HasLtac- |- NonInjective of Names.Id.t list
- type notation_interp_env- =- {- ninterp_var_type : notation_var_internalization_type Names.Id.Map.t;- ninterp_rec_vars : Names.Id.t Names.Id.Map.t;- }