Module Typetexp.TyVarEnv
val make_poly_univars :
(string Location.loc * Env.stage) list ->
Typetexp.TyVarEnv.poly_univarsA variant of make_poly_univars_jkinds that gets variables without jkind annotations
val make_poly_univars_jkinds :
context:(string -> Jkind.History.annotation_context_lr) ->
(string Location.loc * Parsetree.jkind_annotation option * Env.stage) list ->
Typetexp.TyVarEnv.poly_univarsremember that a list of strings connotes univars; this must always be paired with a check_poly_univars.
val check_poly_univars :
Env.t ->
Location.t ->
Typetexp.TyVarEnv.poly_univars ->
Types.type_expr listVerify that the given univars are universally quantified, and return the list of variables. The type in which the univars are used must be generalised
val instance_poly_univars :
Env.t ->
Location.t ->
Typetexp.TyVarEnv.poly_univars ->
Types.type_expr listSame as check_poly_univars, but instantiates the resulting type scheme (i.e. variables become Tvar rather than Tunivar)