Module Out_type.Ident_conflicts

The Ident_conflicts module keeps track of conflicts arising when attributing names to identifiers and provides functions that can print explanations for these conflict in error messages

val exists : unit -> bool

exists() returns true if the current naming context renamed an identifier to avoid a name collision

type explanation = {
  1. kind : Shape.Sig_component_kind.t;
  2. name : string;
  3. root_name : string;
  4. location : Location.t;
}
val list_explanations : unit -> explanation list

list_explanations() return the list of conflict explanations collected up to this point, and reset the list of collected explanations

val print_located_explanations : explanation list Format_doc.printer
val err_print : Format_doc.formatter -> unit
val err_msg : unit -> Format_doc.doc option

err_msg () return an error message if there are pending conflict explanations at this point. It is often important to check for conflicts after all printing is done, thus the delayed nature of err_msg

val reset : unit -> unit