Ssreflect_plugin.Ssrasttype ssrhyps = ssrhyp listtype ssrmult = int * ssrmmodtype ssrindex = int Locus.or_vartype ssrclear = ssrhypstype ssrtermkind = Ssrmatching_plugin.Ssrmatching.ssrtermkindtype ssrterm = ssrtermkind * Genintern.glob_constr_and_exprtype ast_glob_env = {| ast_ltacvars : Names.Id.Set.t; | 
| ast_extra : Genintern.Store.t; | 
| ast_intern_sign : Genintern.intern_variable_status; | 
}type ast_closure_term = {| body : Constrexpr.constr_expr; | 
| glob_env : ast_glob_env option; | 
| interp_env : Geninterp.interp_sign option; | 
| annotation : [ `None | `Parens | `DoubleParens | `At ]; | 
}type ssrview = ast_closure_term listtype ssripat = | | IPatNoop | 
| | IPatId of Names.Id.t | 
| | IPatAnon of anon_kind | 
| | IPatDispatch of ssripatss_or_block | 
| | IPatCase of ssripatss_or_block | 
| | IPatInj of ssripatss | 
| | IPatRewrite of ssrocc * ssrdir | 
| | IPatView of ssrview | 
| | IPatClear of ssrclear | 
| | IPatSimpl of ssrsimpl | 
| | IPatAbstractVars of Names.Id.t list | 
| | IPatFastNondep | 
and ssripats = ssripat listand ssripatss = ssripats listtype ssrhpats_wtransp = bool * ssrhpatstype ssrintrosarg = Ltac_plugin.Tacexpr.raw_tactic_expr * ssripatstype ssrfwdid = Names.Id.ttype 'term ssrbind = | | Bvar of Names.Name.t | 
| | Bdecl of Names.Name.t list * 'term | 
| | Bdef of Names.Name.t * 'term option * 'term | 
| | Bstruct of Names.Name.t | 
| | Bcast of 'term | 
Binders (for fwd tactics)
type 'term ssrbindval = 'term ssrbind list * 'termtype ssrfwdfmt = ssrfwdkind * ssrbindfmt listtype 'tac fwdbinders = bool * (ssrhpats * ((ssrfwdfmt * ast_closure_term) * 'tac ssrhint))type 'tac ffwbinders = ssrhpats * ((ssrfwdfmt * ast_closure_term) * 'tac ssrhint)type clause = ssrclear * ((ssrhyp_or_id * string) * Ssrmatching_plugin.Ssrmatching.cpattern option) optiontype wgen = ssrclear * ((ssrhyp_or_id * string) * Ssrmatching_plugin.Ssrmatching.cpattern option) optiontype 'a ssrmovearg = ssrview * 'a ssrcaseargtype ssrdgens = {| dgens : (ssrdocc * Ssrmatching_plugin.Ssrmatching.cpattern) list; | 
| gens : (ssrdocc * Ssrmatching_plugin.Ssrmatching.cpattern) list; | 
| clr : ssrclear; | 
}type gist = Ltac_plugin.Tacintern.glob_signtype ist = Ltac_plugin.Tacinterp.interp_signtype goal = Evar.t