Typechecker.Type
Manages the type definitions.
Common fields shared by the enum and union types.
type ty =
| Unknown of row Stdlib.ref
The row is for unification with sum types during destructuring.
*)| Int
| Float
| String
| Nullable of t
| List of t
| Tuple of t list
| Record of record
| Dict of t * set_string Stdlib.ref
The set tracks which keys have been used so they can build pattern-matching decision trees.
*)| Enum_int of set_int sum * int_bool
| Enum_string of set_string sum
| Union_int of string * sum_union_int * int_bool
| Union_string of string * sum_union_string
and sum_union_string = record map_string sum
and record = t map_string Stdlib.ref
and t = ty Stdlib.ref
type interface = t map_string
val pp : Stdlib.Format.formatter -> t -> unit
val pp_interface : Stdlib.Format.formatter -> interface -> unit