Module Component.ModuleTypeSource

type substitution =
  1. | ModuleEq of Cfrag.module_ * Module.decl
  2. | ModuleSubst of Cfrag.module_ * Cpath.module_
  3. | ModuleTypeEq of Cfrag.module_type * ModuleType.expr
  4. | ModuleTypeSubst of Cfrag.module_type * ModuleType.expr
  5. | TypeEq of Cfrag.type_ * TypeDecl.Equation.t
  6. | TypeSubst of Cfrag.type_ * TypeDecl.Equation.t
type type_of_desc =
  1. | ModPath of Cpath.module_
  2. | StructInclude of Cpath.module_
type simple_expansion =
  1. | Signature of Signature.t
  2. | Functor of FunctorParameter.t * simple_expansion
type typeof_t = {
  1. t_desc : type_of_desc;
  2. t_expansion : simple_expansion option;
}
module U : sig ... end
type path_t = {
  1. p_expansion : simple_expansion option;
  2. p_path : Cpath.module_type;
}
type with_t = {
  1. w_substitutions : substitution list;
  2. w_expansion : simple_expansion option;
  3. w_expr : U.expr;
}
type expr =
  1. | Path of path_t
  2. | Signature of Signature.t
  3. | With of with_t
  4. | Functor of FunctorParameter.t * expr
  5. | TypeOf of typeof_t
type t = {
  1. locs : Odoc_model.Paths.Identifier.SourceLocation.t option;
  2. doc : CComment.docs;
  3. canonical : Odoc_model.Paths.Path.ModuleType.t option;
  4. expr : expr option;
}