Typedecl_varianceval variance_of_params : (Parsetree.core_type * (Asttypes.variance * Asttypes.injectivity)) list -> surface_variance listval variance_of_sdecl : Parsetree.type_declaration -> surface_variance listtype prop = Types.Variance.t listtype req = surface_variance listval property : (Types.Variance.t list, req) Typedecl_properties.propertytype error = | Bad_variance of variance_error * surface_variance * surface_variance |
| Varying_anonymous |
exception Error of Location.t * errorval check_variance_extension : Env.t -> Types.type_declaration -> Typedtree.extension_constructor -> (req * Location.t) -> unitval compute_decl : Env.t -> check:bool -> Types.type_declaration -> req -> propval update_decls : Env.t -> Parsetree.type_declaration list -> (Ident.t * Types.type_declaration) list -> (Ident.t * Types.type_declaration) listval update_class_decls : Env.t -> (Ident.t * Typedecl_properties.decl * Types.type_declaration * Types.class_declaration * Types.class_type_declaration * 'a Typedtree.class_infos) list -> (Typedecl_properties.decl * Types.type_declaration * Types.class_declaration * Types.class_type_declaration) list