Ast_builder.S
module Located : sig ... end
val loc : Astlib.Location.t
val attribute :
name:string Astlib.Location.loc ->
payload:Parsetree.payload ->
Parsetree.attribute
val binding_op :
op:string Astlib.Location.loc ->
pat:Parsetree.pattern ->
exp:Parsetree.expression ->
Parsetree.binding_op
val case :
lhs:Parsetree.pattern ->
guard:Parsetree.expression option ->
rhs:Parsetree.expression ->
Parsetree.case
val pcl_constr :
Astlib.Longident.t Astlib.Location.loc ->
Parsetree.core_type list ->
Parsetree.class_expr
val pcl_structure : Parsetree.class_structure -> Parsetree.class_expr
val pcl_fun :
Asttypes.arg_label ->
Parsetree.expression option ->
Parsetree.pattern ->
Parsetree.class_expr ->
Parsetree.class_expr
val pcl_apply :
Parsetree.class_expr ->
(Asttypes.arg_label * Parsetree.expression) list ->
Parsetree.class_expr
val pcl_let :
Asttypes.rec_flag ->
Parsetree.value_binding list ->
Parsetree.class_expr ->
Parsetree.class_expr
val pcl_constraint :
Parsetree.class_expr ->
Parsetree.class_type ->
Parsetree.class_expr
val pcl_extension :
(string Astlib.Location.loc * Parsetree.payload) ->
Parsetree.class_expr
val pcl_open :
Astlib.Longident.t Astlib.Location.loc Parsetree.open_infos ->
Parsetree.class_expr ->
Parsetree.class_expr
val pcf_inherit :
Asttypes.override_flag ->
Parsetree.class_expr ->
string Astlib.Location.loc option ->
Parsetree.class_field
val pcf_val :
(string Astlib.Location.loc
* Asttypes.mutable_flag
* Parsetree.class_field_kind) ->
Parsetree.class_field
val pcf_method :
(string Astlib.Location.loc
* Asttypes.private_flag
* Parsetree.class_field_kind) ->
Parsetree.class_field
val pcf_constraint :
(Parsetree.core_type * Parsetree.core_type) ->
Parsetree.class_field
val pcf_initializer : Parsetree.expression -> Parsetree.class_field
val pcf_attribute : Parsetree.attribute -> Parsetree.class_field
val pcf_extension :
(string Astlib.Location.loc * Parsetree.payload) ->
Parsetree.class_field
val class_infos :
virt:Asttypes.virtual_flag ->
params:
(Parsetree.core_type * (Asttypes.variance * Asttypes.injectivity)) list ->
name:string Astlib.Location.loc ->
expr:'a ->
'a Parsetree.class_infos
val class_signature :
self:Parsetree.core_type ->
fields:Parsetree.class_type_field list ->
Parsetree.class_signature
val class_structure :
self:Parsetree.pattern ->
fields:Parsetree.class_field list ->
Parsetree.class_structure
val pcty_constr :
Astlib.Longident.t Astlib.Location.loc ->
Parsetree.core_type list ->
Parsetree.class_type
val pcty_signature : Parsetree.class_signature -> Parsetree.class_type
val pcty_arrow :
Asttypes.arg_label ->
Parsetree.core_type ->
Parsetree.class_type ->
Parsetree.class_type
val pcty_extension :
(string Astlib.Location.loc * Parsetree.payload) ->
Parsetree.class_type
val pcty_open :
Astlib.Longident.t Astlib.Location.loc Parsetree.open_infos ->
Parsetree.class_type ->
Parsetree.class_type
val pctf_inherit : Parsetree.class_type -> Parsetree.class_type_field
val pctf_val :
(string Astlib.Location.loc
* Asttypes.mutable_flag
* Asttypes.virtual_flag
* Parsetree.core_type) ->
Parsetree.class_type_field
val pctf_method :
(string Astlib.Location.loc
* Asttypes.private_flag
* Asttypes.virtual_flag
* Parsetree.core_type) ->
Parsetree.class_type_field
val pctf_constraint :
(Parsetree.core_type * Parsetree.core_type) ->
Parsetree.class_type_field
val pctf_attribute : Parsetree.attribute -> Parsetree.class_type_field
val pctf_extension :
(string Astlib.Location.loc * Parsetree.payload) ->
Parsetree.class_type_field
val ptyp_any : Parsetree.core_type
val ptyp_var : string -> Parsetree.core_type
val ptyp_arrow :
Asttypes.arg_label ->
Parsetree.core_type ->
Parsetree.core_type ->
Parsetree.core_type
val ptyp_tuple : Parsetree.core_type list -> Parsetree.core_type
val ptyp_constr :
Astlib.Longident.t Astlib.Location.loc ->
Parsetree.core_type list ->
Parsetree.core_type
val ptyp_object :
Parsetree.object_field list ->
Asttypes.closed_flag ->
Parsetree.core_type
val ptyp_class :
Astlib.Longident.t Astlib.Location.loc ->
Parsetree.core_type list ->
Parsetree.core_type
val ptyp_alias : Parsetree.core_type -> string -> Parsetree.core_type
val ptyp_variant :
Parsetree.row_field list ->
Asttypes.closed_flag ->
string list option ->
Parsetree.core_type
val ptyp_poly :
string Astlib.Location.loc list ->
Parsetree.core_type ->
Parsetree.core_type
val ptyp_package :
(Astlib.Longident.t Astlib.Location.loc
* (Astlib.Longident.t Astlib.Location.loc * Parsetree.core_type) list) ->
Parsetree.core_type
val ptyp_extension :
(string Astlib.Location.loc * Parsetree.payload) ->
Parsetree.core_type
val pdir_string : string -> Parsetree.directive_argument
val pdir_int : string -> char option -> Parsetree.directive_argument
val pdir_ident : Astlib.Longident.t -> Parsetree.directive_argument
val pdir_bool : bool -> Parsetree.directive_argument
val pexp_ident : Astlib.Longident.t Astlib.Location.loc -> Parsetree.expression
val pexp_constant : Parsetree.constant -> Parsetree.expression
val pexp_let :
Asttypes.rec_flag ->
Parsetree.value_binding list ->
Parsetree.expression ->
Parsetree.expression
val pexp_function : Parsetree.case list -> Parsetree.expression
val pexp_fun :
Asttypes.arg_label ->
Parsetree.expression option ->
Parsetree.pattern ->
Parsetree.expression ->
Parsetree.expression
val pexp_apply :
Parsetree.expression ->
(Asttypes.arg_label * Parsetree.expression) list ->
Parsetree.expression
val pexp_match :
Parsetree.expression ->
Parsetree.case list ->
Parsetree.expression
val pexp_try :
Parsetree.expression ->
Parsetree.case list ->
Parsetree.expression
val pexp_tuple : Parsetree.expression list -> Parsetree.expression
val pexp_construct :
Astlib.Longident.t Astlib.Location.loc ->
Parsetree.expression option ->
Parsetree.expression
val pexp_variant :
string ->
Parsetree.expression option ->
Parsetree.expression
val pexp_record :
(Astlib.Longident.t Astlib.Location.loc * Parsetree.expression) list ->
Parsetree.expression option ->
Parsetree.expression
val pexp_field :
Parsetree.expression ->
Astlib.Longident.t Astlib.Location.loc ->
Parsetree.expression
val pexp_setfield :
Parsetree.expression ->
Astlib.Longident.t Astlib.Location.loc ->
Parsetree.expression ->
Parsetree.expression
val pexp_array : Parsetree.expression list -> Parsetree.expression
val pexp_ifthenelse :
Parsetree.expression ->
Parsetree.expression ->
Parsetree.expression option ->
Parsetree.expression
val pexp_sequence :
Parsetree.expression ->
Parsetree.expression ->
Parsetree.expression
val pexp_while :
Parsetree.expression ->
Parsetree.expression ->
Parsetree.expression
val pexp_for :
Parsetree.pattern ->
Parsetree.expression ->
Parsetree.expression ->
Asttypes.direction_flag ->
Parsetree.expression ->
Parsetree.expression
val pexp_constraint :
Parsetree.expression ->
Parsetree.core_type ->
Parsetree.expression
val pexp_coerce :
Parsetree.expression ->
Parsetree.core_type option ->
Parsetree.core_type ->
Parsetree.expression
val pexp_send :
Parsetree.expression ->
string Astlib.Location.loc ->
Parsetree.expression
val pexp_new : Astlib.Longident.t Astlib.Location.loc -> Parsetree.expression
val pexp_setinstvar :
string Astlib.Location.loc ->
Parsetree.expression ->
Parsetree.expression
val pexp_override :
(string Astlib.Location.loc * Parsetree.expression) list ->
Parsetree.expression
val pexp_letmodule :
string option Astlib.Location.loc ->
Parsetree.module_expr ->
Parsetree.expression ->
Parsetree.expression
val pexp_letexception :
Parsetree.extension_constructor ->
Parsetree.expression ->
Parsetree.expression
val pexp_assert : Parsetree.expression -> Parsetree.expression
val pexp_lazy : Parsetree.expression -> Parsetree.expression
val pexp_poly :
Parsetree.expression ->
Parsetree.core_type option ->
Parsetree.expression
val pexp_object : Parsetree.class_structure -> Parsetree.expression
val pexp_newtype :
string Astlib.Location.loc ->
Parsetree.expression ->
Parsetree.expression
val pexp_pack : Parsetree.module_expr -> Parsetree.expression
val pexp_open :
Parsetree.module_expr Parsetree.open_infos ->
Parsetree.expression ->
Parsetree.expression
val pexp_letop : Parsetree.letop -> Parsetree.expression
val pexp_extension :
(string Astlib.Location.loc * Parsetree.payload) ->
Parsetree.expression
val pexp_unreachable : Parsetree.expression
val extension_constructor :
name:string Astlib.Location.loc ->
kind:Parsetree.extension_constructor_kind ->
Parsetree.extension_constructor
val include_infos : 'a -> 'a Parsetree.include_infos
val label_declaration :
name:string Astlib.Location.loc ->
mutable_:Asttypes.mutable_flag ->
type_:Parsetree.core_type ->
Parsetree.label_declaration
val letop :
let_:Parsetree.binding_op ->
ands:Parsetree.binding_op list ->
body:Parsetree.expression ->
Parsetree.letop
val location :
start:Lexing.position ->
end_:Lexing.position ->
ghost:bool ->
Astlib.Location.t
val module_binding :
name:string option Astlib.Location.loc ->
expr:Parsetree.module_expr ->
Parsetree.module_binding
val module_declaration :
name:string option Astlib.Location.loc ->
type_:Parsetree.module_type ->
Parsetree.module_declaration
val pmod_ident :
Astlib.Longident.t Astlib.Location.loc ->
Parsetree.module_expr
val pmod_structure : Parsetree.structure_item list -> Parsetree.module_expr
val pmod_functor :
Parsetree.functor_parameter ->
Parsetree.module_expr ->
Parsetree.module_expr
val pmod_apply :
Parsetree.module_expr ->
Parsetree.module_expr ->
Parsetree.module_expr
val pmod_constraint :
Parsetree.module_expr ->
Parsetree.module_type ->
Parsetree.module_expr
val pmod_unpack : Parsetree.expression -> Parsetree.module_expr
val pmod_extension :
(string Astlib.Location.loc * Parsetree.payload) ->
Parsetree.module_expr
val module_substitution :
name:string Astlib.Location.loc ->
manifest:Astlib.Longident.t Astlib.Location.loc ->
Parsetree.module_substitution
val pmty_ident :
Astlib.Longident.t Astlib.Location.loc ->
Parsetree.module_type
val pmty_signature : Parsetree.signature_item list -> Parsetree.module_type
val pmty_functor :
Parsetree.functor_parameter ->
Parsetree.module_type ->
Parsetree.module_type
val pmty_with :
Parsetree.module_type ->
Parsetree.with_constraint list ->
Parsetree.module_type
val pmty_typeof : Parsetree.module_expr -> Parsetree.module_type
val pmty_extension :
(string Astlib.Location.loc * Parsetree.payload) ->
Parsetree.module_type
val pmty_alias :
Astlib.Longident.t Astlib.Location.loc ->
Parsetree.module_type
val module_type_declaration :
name:string Astlib.Location.loc ->
type_:Parsetree.module_type option ->
Parsetree.module_type_declaration
val otag :
string Astlib.Location.loc ->
Parsetree.core_type ->
Parsetree.object_field
val oinherit : Parsetree.core_type -> Parsetree.object_field
val open_infos :
expr:'a ->
override:Asttypes.override_flag ->
'a Parsetree.open_infos
val ppat_any : Parsetree.pattern
val ppat_var : string Astlib.Location.loc -> Parsetree.pattern
val ppat_alias :
Parsetree.pattern ->
string Astlib.Location.loc ->
Parsetree.pattern
val ppat_constant : Parsetree.constant -> Parsetree.pattern
val ppat_interval :
Parsetree.constant ->
Parsetree.constant ->
Parsetree.pattern
val ppat_tuple : Parsetree.pattern list -> Parsetree.pattern
val ppat_variant : string -> Parsetree.pattern option -> Parsetree.pattern
val ppat_record :
(Astlib.Longident.t Astlib.Location.loc * Parsetree.pattern) list ->
Asttypes.closed_flag ->
Parsetree.pattern
val ppat_array : Parsetree.pattern list -> Parsetree.pattern
val ppat_or : Parsetree.pattern -> Parsetree.pattern -> Parsetree.pattern
val ppat_constraint :
Parsetree.pattern ->
Parsetree.core_type ->
Parsetree.pattern
val ppat_type : Astlib.Longident.t Astlib.Location.loc -> Parsetree.pattern
val ppat_lazy : Parsetree.pattern -> Parsetree.pattern
val ppat_unpack : string option Astlib.Location.loc -> Parsetree.pattern
val ppat_exception : Parsetree.pattern -> Parsetree.pattern
val ppat_extension :
(string Astlib.Location.loc * Parsetree.payload) ->
Parsetree.pattern
val ppat_open :
Astlib.Longident.t Astlib.Location.loc ->
Parsetree.pattern ->
Parsetree.pattern
val position :
fname:string ->
lnum:int ->
bol:int ->
cnum:int ->
Lexing.position
val rtag :
string Astlib.Location.loc ->
bool ->
Parsetree.core_type list ->
Parsetree.row_field
val rinherit : Parsetree.core_type -> Parsetree.row_field
val psig_value : Parsetree.value_description -> Parsetree.signature_item
val psig_type :
Asttypes.rec_flag ->
Parsetree.type_declaration list ->
Parsetree.signature_item
val psig_typesubst :
Parsetree.type_declaration list ->
Parsetree.signature_item
val psig_typext : Parsetree.type_extension -> Parsetree.signature_item
val psig_exception : Parsetree.type_exception -> Parsetree.signature_item
val psig_module : Parsetree.module_declaration -> Parsetree.signature_item
val psig_modsubst : Parsetree.module_substitution -> Parsetree.signature_item
val psig_recmodule :
Parsetree.module_declaration list ->
Parsetree.signature_item
val psig_modtype :
Parsetree.module_type_declaration ->
Parsetree.signature_item
val psig_modtypesubst :
Parsetree.module_type_declaration ->
Parsetree.signature_item
val psig_open :
Astlib.Longident.t Astlib.Location.loc Parsetree.open_infos ->
Parsetree.signature_item
val psig_include :
Parsetree.module_type Parsetree.include_infos ->
Parsetree.signature_item
val psig_class :
Parsetree.class_type Parsetree.class_infos list ->
Parsetree.signature_item
val psig_class_type :
Parsetree.class_type Parsetree.class_infos list ->
Parsetree.signature_item
val psig_attribute : Parsetree.attribute -> Parsetree.signature_item
val psig_extension :
(string Astlib.Location.loc * Parsetree.payload) ->
Parsetree.attribute list ->
Parsetree.signature_item
val pstr_eval :
Parsetree.expression ->
Parsetree.attribute list ->
Parsetree.structure_item
val pstr_value :
Asttypes.rec_flag ->
Parsetree.value_binding list ->
Parsetree.structure_item
val pstr_primitive : Parsetree.value_description -> Parsetree.structure_item
val pstr_type :
Asttypes.rec_flag ->
Parsetree.type_declaration list ->
Parsetree.structure_item
val pstr_typext : Parsetree.type_extension -> Parsetree.structure_item
val pstr_exception : Parsetree.type_exception -> Parsetree.structure_item
val pstr_module : Parsetree.module_binding -> Parsetree.structure_item
val pstr_recmodule : Parsetree.module_binding list -> Parsetree.structure_item
val pstr_modtype :
Parsetree.module_type_declaration ->
Parsetree.structure_item
val pstr_open :
Parsetree.module_expr Parsetree.open_infos ->
Parsetree.structure_item
val pstr_class :
Parsetree.class_expr Parsetree.class_infos list ->
Parsetree.structure_item
val pstr_class_type :
Parsetree.class_type Parsetree.class_infos list ->
Parsetree.structure_item
val pstr_include :
Parsetree.module_expr Parsetree.include_infos ->
Parsetree.structure_item
val pstr_attribute : Parsetree.attribute -> Parsetree.structure_item
val pstr_extension :
(string Astlib.Location.loc * Parsetree.payload) ->
Parsetree.attribute list ->
Parsetree.structure_item
val toplevel_directive :
name:string Astlib.Location.loc ->
arg:Parsetree.directive_argument option ->
Parsetree.toplevel_directive
val type_declaration :
name:string Astlib.Location.loc ->
params:
(Parsetree.core_type * (Asttypes.variance * Asttypes.injectivity)) list ->
cstrs:(Parsetree.core_type * Parsetree.core_type * Astlib.Location.t) list ->
kind:Parsetree.type_kind ->
private_:Asttypes.private_flag ->
manifest:Parsetree.core_type option ->
Parsetree.type_declaration
val type_exception :
Parsetree.extension_constructor ->
Parsetree.type_exception
val type_extension :
path:Astlib.Longident.t Astlib.Location.loc ->
params:
(Parsetree.core_type * (Asttypes.variance * Asttypes.injectivity)) list ->
constructors:Parsetree.extension_constructor list ->
private_:Asttypes.private_flag ->
Parsetree.type_extension
val value_binding :
pat:Parsetree.pattern ->
expr:Parsetree.expression ->
Parsetree.value_binding
val value_description :
name:string Astlib.Location.loc ->
type_:Parsetree.core_type ->
prim:string list ->
Parsetree.value_description
val eint : int -> Parsetree.expression
val echar : char -> Parsetree.expression
val estring : string -> Parsetree.expression
val efloat : string -> Parsetree.expression
val eint32 : int32 -> Parsetree.expression
val eint64 : int64 -> Parsetree.expression
val enativeint : nativeint -> Parsetree.expression
val ebool : bool -> Parsetree.expression
val pint : int -> Parsetree.pattern
val pchar : char -> Parsetree.pattern
val pstring : string -> Parsetree.pattern
val pfloat : string -> Parsetree.pattern
val pint32 : int32 -> Parsetree.pattern
val pint64 : int64 -> Parsetree.pattern
val pnativeint : nativeint -> Parsetree.pattern
val pbool : bool -> Parsetree.pattern
val eunit : Parsetree.expression
val punit : Parsetree.pattern
val evar : string -> Parsetree.expression
val pvar : string -> Parsetree.pattern
val eapply :
Parsetree.expression ->
Parsetree.expression list ->
Parsetree.expression
val eabstract :
Parsetree.pattern list ->
Parsetree.expression ->
Parsetree.expression
val esequence : Parsetree.expression list -> Parsetree.expression
val ppat_tuple_opt : Parsetree.pattern list -> Parsetree.pattern option
val pexp_tuple_opt : Parsetree.expression list -> Parsetree.expression option
val pconstruct :
Parsetree.constructor_declaration ->
Parsetree.pattern option ->
Parsetree.pattern
val econstruct :
Parsetree.constructor_declaration ->
Parsetree.expression option ->
Parsetree.expression
val elist_tail :
Parsetree.expression list ->
Parsetree.expression ->
Parsetree.expression
val elist : Parsetree.expression list -> Parsetree.expression
val plist_tail :
Parsetree.pattern list ->
Parsetree.pattern ->
Parsetree.pattern
val plist : Parsetree.pattern list -> Parsetree.pattern
val pstr_value_list :
loc:Astlib.Location.t ->
Asttypes.rec_flag ->
Parsetree.value_binding list ->
Parsetree.structure_item list
val nonrec_type_declaration :
name:string Astlib.Location.loc ->
params:(Parsetree.core_type * Asttypes.variance) list ->
cstrs:(Parsetree.core_type * Parsetree.core_type * Astlib.Location.t) list ->
kind:Parsetree.type_kind ->
private_:Asttypes.private_flag ->
manifest:Parsetree.core_type option ->
Parsetree.type_declaration
val unapplied_type_constr_conv :
Astlib.Longident.t Astlib.Location.loc ->
f:(string -> string) ->
Parsetree.expression
val type_constr_conv :
Astlib.Longident.t Astlib.Location.loc ->
f:(string -> string) ->
Parsetree.expression list ->
Parsetree.expression
val eta_reduce : Parsetree.expression -> Parsetree.expression option
val eta_reduce_if_possible : Parsetree.expression -> Parsetree.expression
val eta_reduce_if_possible_and_nonrec :
Parsetree.expression ->
rec_flag:Asttypes.rec_flag ->
Parsetree.expression
module Latest : sig ... end
val ppat_construct :
Astlib.Longident.t Astlib.Location.loc ->
Parsetree.pattern option ->
Parsetree.pattern
val constructor_declaration :
name:string Astlib.Location.loc ->
args:Parsetree.constructor_arguments ->
res:Parsetree.core_type option ->
Parsetree.constructor_declaration