package ocaml-base-compiler

  1. Overview
  2. Docs

Type expressions

val any : ?loc:loc -> ?attrs:attrs -> unit -> Parsetree.core_type
val var : ?loc:loc -> ?attrs:attrs -> string -> Parsetree.core_type
val tuple : ?loc:loc -> ?attrs:attrs -> Parsetree.core_type list -> Parsetree.core_type
val constr : ?loc:loc -> ?attrs:attrs -> lid -> Parsetree.core_type list -> Parsetree.core_type
val object_ : ?loc:loc -> ?attrs:attrs -> Parsetree.object_field list -> Asttypes.closed_flag -> Parsetree.core_type
val class_ : ?loc:loc -> ?attrs:attrs -> lid -> Parsetree.core_type list -> Parsetree.core_type
val alias : ?loc:loc -> ?attrs:attrs -> Parsetree.core_type -> string -> Parsetree.core_type
val variant : ?loc:loc -> ?attrs:attrs -> Parsetree.row_field list -> Asttypes.closed_flag -> Asttypes.label list option -> Parsetree.core_type
val poly : ?loc:loc -> ?attrs:attrs -> str list -> Parsetree.core_type -> Parsetree.core_type
val package : ?loc:loc -> ?attrs:attrs -> lid -> (lid * Parsetree.core_type) list -> Parsetree.core_type
val extension : ?loc:loc -> ?attrs:attrs -> Parsetree.extension -> Parsetree.core_type
val varify_constructors : str list -> Parsetree.core_type -> Parsetree.core_type

varify_constructors newtypes te is type expression te, of which any of nullary type constructor tc is replaced by type variable of the same name, if tc's name appears in newtypes. Raise Syntaxerr.Variable_in_scope if any type variable inside te appears in newtypes.

  • since 4.05