Liquidsoap_lang_types.ReprThe printable representation of a type, used in error messages.
User-friendly representation of types.
include module type of struct include Type_base.R endtype 'a meth = 'a Type_base.R.meth = {name : string;optional : bool;scheme : 'a var list * 'a {t}1/shadowed/(5762290624aa53a03196acf8eea6736a);json_name : string option;}type t = Type_base.constr Type_base.R.tval excerpt : Liquidsoap_lang_prelude.Pos.t -> string optionGiven a position, find the relevant excerpt.
val excerpt_opt : Liquidsoap_lang_prelude.Pos.t option -> string optionGiven a strictly positive integer, generate a name in a-z+: a, b, ... z, aa, ab, ... az, ba, ...
Generate a globally unique name for evars (used for debugging only).
val make :
?filter_out:(Type_base.t -> bool) ->
?generalized:Type_base.var list ->
Type_base.t ->
tCompute the structure that a term represents, given the list of universally quantified variables. Also takes care of computing the printing name of variables, including constraint symbols, which are removed from constraint lists. It supports a mechanism for filtering out parts of the type, which are then translated as `Ellipsis.
val print : Stdlib.Format.formatter -> Type_base.constr Type_base.R.t -> unitPrint a type representation. Unless in debug mode, variable identifiers are not shown, and variable names are generated. Names are only meaningful over one printing, as they are re-used.
val to_string : Type_base.constr Type_base.R.t -> stringval print_type : Stdlib.Format.formatter -> Type_base.t -> unitval print_scheme :
Stdlib.Format.formatter ->
(Type_base.var list * Type_base.t) ->
unitval string_of_type : ?generalized:Type_base.var list -> Type_base.t -> stringString representation of a type.
val string_of_scheme : (Type_base.var list * Type_base.t) -> stringString representation of a type scheme.
type explanation = bool * Type_base.t * Type_base.t * t * texception Type_error of explanationval print_type_error :
formatter:Stdlib.Format.formatter ->
(Liquidsoap_lang_prelude.Pos.Option.t -> 'a) ->
explanation ->
unit