Module Merlin_sherlodoc.Type_expr
A representation of internal types, with superfluous information removed to make it easier to compare them and calculate their distance.
type t = | Arrow of Merlin_sherlodoc.Type_expr.t * Merlin_sherlodoc.Type_expr.t| Tycon of string * Merlin_sherlodoc.Type_expr.t list| Tuple of Merlin_sherlodoc.Type_expr.t list| Tyvar of int| Wildcard| Unhandled
Type variables are indexed by integers calculated according to their positions. For example, in the expression of type 'a -> 'b -> 'c, respectively 'a will have the value 1, 'b will have the value 2 and ’c will have the value 3.
This makes 'a -> 'b -> 'c isomorphic to ’foo -> 'bar -> 'baz.
val normalize_type_parameters :
Merlin_sherlodoc.Type_parsed.t ->
Merlin_sherlodoc.Type_expr.tnormalize_type_parameters ty replace string based type variables to integer based type variables.
val from_string : string -> Merlin_sherlodoc.Type_expr.t optionTry deserializing a string into a typed expression.
val to_string : Merlin_sherlodoc.Type_expr.t -> stringRender a type to a string.
val equal :
Merlin_sherlodoc.Type_expr.t ->
Merlin_sherlodoc.Type_expr.t ->
boolEquality between types