Ast_helper.Typ
Type expressions
val mk :
?loc:loc ->
?attrs:attrs ->
Parsetree.core_type_desc ->
Parsetree.core_type
val attr : Parsetree.core_type -> Parsetree.attribute -> Parsetree.core_type
val any : ?loc:loc -> ?attrs:attrs -> unit -> Parsetree.core_type
val var : ?loc:loc -> ?attrs:attrs -> string -> Parsetree.core_type
val arrow :
?loc:loc ->
?attrs:attrs ->
Asttypes.arg_label ->
Parsetree.core_type ->
Parsetree.core_type ->
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 force_poly : Parsetree.core_type -> 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
.