package merlin-lib

  1. Overview
  2. Docs
Legend:
Page
Library
Module
Module type
Parameter
Class
Class type
Source

Module Errortrace.SubtypeSource

Sourcetype 'a elt =
  1. | Diff of 'a diff
Sourcetype 'a t = 'a elt list

Just as outside Subtype, we split traces, completed traces, and complete errors. However, in a minor asymmetry, the name Subtype.error_trace corresponds to the outside error type, and Subtype.error corresponds to the outside *_error types (e.g., unification_error). This error type has the invariant that the subtype trace is nonempty; note that no such invariant is imposed on the unification trace.

Sourcetype error_trace = expanded_type t
Sourcetype unification_error_trace = unification error

To avoid shadowing

Sourcetype nonrec error = private {
  1. trace : error_trace;
  2. unification_trace : unification error;
}
Sourceval error : trace:error_trace -> unification_trace:unification_error_trace -> error
Sourceval map : ('a -> 'b) -> 'a t -> 'b t

merlin specific