Component.Substitution
Sourcetype subst_module = [
| `Prefixed of Cpath.module_ * Cpath.Resolved.module_
| `Substituted
| `Renamed of Ident.module_
]
type subst_module_type = [
| `Prefixed of Cpath.module_type * Cpath.Resolved.module_type
| `Renamed of Ident.module_type
]
type subst_class_type = [
| `Prefixed of Cpath.class_type * Cpath.Resolved.class_type
| `Renamed of Ident.type_
]
type t = {
module_ : subst_module ModuleMap.t;
module_type : subst_module_type ModuleTypeMap.t;
type_ : subst_type TypeMap.t;
class_type : subst_class_type TypeMap.t;
type_replacement : (TypeExpr.t * TypeDecl.Equation.t) TypeMap.t;
module_type_replacement : ModuleType.expr ModuleTypeMap.t;
path_invalidating_modules : Ident.module_ list;
unresolve_opaque_paths : bool;
}