Module Ocaml_typing.Persistent_env

module Consistbl_data = Import_info.Intf.Nonalias.Kind
type error =
  1. | Illegal_renaming of Compilation_unit.Name.t * Compilation_unit.Name.t * Merlin_utils.Misc.filepath
  2. | Inconsistent_import of Compilation_unit.Name.t * Merlin_utils.Misc.filepath * Merlin_utils.Misc.filepath
  3. | Need_recursive_types of Compilation_unit.Name.t
  4. | Inconsistent_package_declaration_between_imports of Merlin_utils.Misc.filepath * Compilation_unit.t * Compilation_unit.t
  5. | Direct_reference_from_wrong_package of Compilation_unit.t * Merlin_utils.Misc.filepath * Compilation_unit.Prefix.t
  6. | Illegal_import_of_parameter of Global_module.Name.t * Merlin_utils.Misc.filepath
  7. | Not_compiled_as_parameter of Global_module.Name.t
  8. | Imported_module_has_unset_parameter of {
    1. imported : Global_module.Name.t;
    2. parameter : Global_module.Parameter_name.t;
    }
  9. | Imported_module_has_no_such_parameter of {
    1. imported : Compilation_unit.Name.t;
    2. valid_parameters : Global_module.Parameter_name.t list;
    3. parameter : Global_module.Parameter_name.t;
    4. value : Global_module.Name.t;
    }
  10. | Not_compiled_as_argument of {
    1. param : Global_module.Parameter_name.t;
    2. value : Global_module.Name.t;
    3. filename : Merlin_utils.Misc.filepath;
    }
  11. | Argument_type_mismatch of {
    1. value : Global_module.Name.t;
    2. filename : Merlin_utils.Misc.filepath;
    3. expected : Global_module.Parameter_name.t;
    4. actual : Global_module.Parameter_name.t;
    }
  12. | Unbound_module_as_argument_value of {
    1. instance : Global_module.Name.t;
    2. value : Global_module.Name.t;
    }
exception Error of error
val report_error : Format.formatter -> error -> unit
module Persistent_signature : sig ... end
type can_load_cmis =
  1. | Can_load_cmis
  2. | Cannot_load_cmis of Ocaml_utils.Lazy_backtrack.log
type 'a t
val empty : unit -> 'a t
val short_paths_basis : 'a t -> Short_paths.Basis.t
val clear : 'a t -> unit
val clear_missing : 'a t -> unit
val fold : 'a t -> (Global_module.Name.t -> 'a -> 'b -> 'b) -> 'b -> 'b
type address =
  1. | Aunit of Compilation_unit.t
  2. | Alocal of Ident.t
  3. | Adot of address * Types.module_representation * int
type 'a sig_reader = Subst.Lazy.signature -> Global_module.Name.t -> Shape.Uid.t -> shape:Shape.t -> address:address -> flags:Cmi_format.pers_flags list -> 'a
val find : allow_hidden:bool -> 'a t -> 'a sig_reader -> (Global_module.Name.t -> 'a -> Ocaml_typing.Short_paths.Desc.Module.components Lazy.t) -> Global_module.Name.t -> allow_excess_args:bool -> 'a
val find_in_cache : 'a t -> Global_module.Name.t -> 'a option
val register_parameter : 'a t -> Global_module.Parameter_name.t -> unit
val is_parameter_import : 'a t -> Global_module.Name.t -> bool
val looked_up : 'a t -> Global_module.Name.t -> bool
val is_imported_opaque : 'a t -> Compilation_unit.Name.t -> bool
val register_import_as_opaque : 'a t -> Compilation_unit.Name.t -> unit
val implemented_parameter : 'a t -> Global_module.Name.t -> Global_module.Parameter_name.t option
val global_of_global_name : 'a t -> check:bool -> Global_module.Name.t -> allow_excess_args:bool -> Global_module.t
val normalize_global_name : 'a t -> Global_module.Name.t -> Global_module.Name.t
val save_cmi : 'a t -> Persistent_signature.t -> unit
val can_load_cmis : 'a t -> can_load_cmis
val set_can_load_cmis : 'a t -> can_load_cmis -> unit
val without_cmis : 'a t -> ('b -> 'c) -> 'b -> 'c
val import_crcs : 'a t -> source:Merlin_utils.Misc.filepath -> Import_info.Intf.t array -> unit
val imports : 'a t -> Import_info.Intf.t list
val require_global_for_quote : 'a t -> Compilation_unit.Name.t -> unit
val quoted_globals : 'a t -> Compilation_unit.Name.t list
val runtime_parameter_bindings : 'a t -> (Global_module.t * Ident.t) list
val is_bound_to_runtime_parameter : 'a t -> Ident.t -> bool
val is_imported_parameter : 'a t -> Global_module.Name.t -> bool
val parameters : 'a t -> Global_module.Parameter_name.t list
val crc_of_unit : 'a t -> Compilation_unit.Name.t -> Digest.t
val add_delayed_check_forward : ((unit -> unit) -> unit) ref
val with_cmis : 'a t -> ('b -> 'c) -> 'b -> 'c
val forall : found: (Compilation_unit.Name.t -> Merlin_utils.Misc.filepath -> Compilation_unit.Name.t -> bool) -> missing:(Compilation_unit.Name.t -> bool) -> 'a t -> bool