Module Ast_convenience_408

module Ast_convenience_408: sig .. end

Convenience functions to help build and deconstruct AST fragments.

Compatibility modules

module Label: sig .. end
module Constant: sig .. end

Provides a unified abstraction over differences in Parsetree.constant and Asttypes.constant types defined in ocaml 4.03 and 4.02 respectively

Misc

val lid : ?loc:Migrate_parsetree.Ast_408.Ast_helper.loc ->
string -> Migrate_parsetree.Ast_408.Ast_helper.lid

Expressions

val evar : ?loc:Migrate_parsetree.Ast_408.Ast_helper.loc ->
?attrs:Migrate_parsetree.Ast_408.Ast_helper.attrs ->
string -> Migrate_parsetree.Ast_408.Parsetree.expression
val let_in : ?loc:Migrate_parsetree.Ast_408.Ast_helper.loc ->
?attrs:Migrate_parsetree.Ast_408.Ast_helper.attrs ->
?recursive:bool ->
Migrate_parsetree.Ast_408.Parsetree.value_binding list ->
Migrate_parsetree.Ast_408.Parsetree.expression ->
Migrate_parsetree.Ast_408.Parsetree.expression
val constr : ?loc:Migrate_parsetree.Ast_408.Ast_helper.loc ->
?attrs:Migrate_parsetree.Ast_408.Ast_helper.attrs ->
string ->
Migrate_parsetree.Ast_408.Parsetree.expression list ->
Migrate_parsetree.Ast_408.Parsetree.expression
val record : ?loc:Migrate_parsetree.Ast_408.Ast_helper.loc ->
?attrs:Migrate_parsetree.Ast_408.Ast_helper.attrs ->
?over:Migrate_parsetree.Ast_408.Parsetree.expression ->
(string * Migrate_parsetree.Ast_408.Parsetree.expression) list ->
Migrate_parsetree.Ast_408.Parsetree.expression
val tuple : ?loc:Migrate_parsetree.Ast_408.Ast_helper.loc ->
?attrs:Migrate_parsetree.Ast_408.Ast_helper.attrs ->
Migrate_parsetree.Ast_408.Parsetree.expression list ->
Migrate_parsetree.Ast_408.Parsetree.expression
val nil : ?loc:Migrate_parsetree.Ast_408.Ast_helper.loc ->
?attrs:Migrate_parsetree.Ast_408.Ast_helper.attrs ->
unit -> Migrate_parsetree.Ast_408.Parsetree.expression
val cons : ?loc:Migrate_parsetree.Ast_408.Ast_helper.loc ->
?attrs:Migrate_parsetree.Ast_408.Ast_helper.attrs ->
Migrate_parsetree.Ast_408.Parsetree.expression ->
Migrate_parsetree.Ast_408.Parsetree.expression ->
Migrate_parsetree.Ast_408.Parsetree.expression
val list : ?loc:Migrate_parsetree.Ast_408.Ast_helper.loc ->
?attrs:Migrate_parsetree.Ast_408.Ast_helper.attrs ->
Migrate_parsetree.Ast_408.Parsetree.expression list ->
Migrate_parsetree.Ast_408.Parsetree.expression
val unit : ?loc:Migrate_parsetree.Ast_408.Ast_helper.loc ->
?attrs:Migrate_parsetree.Ast_408.Ast_helper.attrs ->
unit -> Migrate_parsetree.Ast_408.Parsetree.expression
val func : ?loc:Migrate_parsetree.Ast_408.Ast_helper.loc ->
?attrs:Migrate_parsetree.Ast_408.Ast_helper.attrs ->
(Migrate_parsetree.Ast_408.Parsetree.pattern *
Migrate_parsetree.Ast_408.Parsetree.expression)
list -> Migrate_parsetree.Ast_408.Parsetree.expression
val lam : ?loc:Migrate_parsetree.Ast_408.Ast_helper.loc ->
?attrs:Migrate_parsetree.Ast_408.Ast_helper.attrs ->
?label:Label.t ->
?default:Migrate_parsetree.Ast_408.Parsetree.expression ->
Migrate_parsetree.Ast_408.Parsetree.pattern ->
Migrate_parsetree.Ast_408.Parsetree.expression ->
Migrate_parsetree.Ast_408.Parsetree.expression
val app : ?loc:Migrate_parsetree.Ast_408.Ast_helper.loc ->
?attrs:Migrate_parsetree.Ast_408.Ast_helper.attrs ->
Migrate_parsetree.Ast_408.Parsetree.expression ->
Migrate_parsetree.Ast_408.Parsetree.expression list ->
Migrate_parsetree.Ast_408.Parsetree.expression
val str : ?loc:Migrate_parsetree.Ast_408.Ast_helper.loc ->
?attrs:Migrate_parsetree.Ast_408.Ast_helper.attrs ->
string -> Migrate_parsetree.Ast_408.Parsetree.expression
val int : ?loc:Migrate_parsetree.Ast_408.Ast_helper.loc ->
?attrs:Migrate_parsetree.Ast_408.Ast_helper.attrs ->
int -> Migrate_parsetree.Ast_408.Parsetree.expression
val int32 : ?loc:Migrate_parsetree.Ast_408.Ast_helper.loc ->
?attrs:Migrate_parsetree.Ast_408.Ast_helper.attrs ->
int32 -> Migrate_parsetree.Ast_408.Parsetree.expression
val int64 : ?loc:Migrate_parsetree.Ast_408.Ast_helper.loc ->
?attrs:Migrate_parsetree.Ast_408.Ast_helper.attrs ->
int64 -> Migrate_parsetree.Ast_408.Parsetree.expression
val char : ?loc:Migrate_parsetree.Ast_408.Ast_helper.loc ->
?attrs:Migrate_parsetree.Ast_408.Ast_helper.attrs ->
char -> Migrate_parsetree.Ast_408.Parsetree.expression
val float : ?loc:Migrate_parsetree.Ast_408.Ast_helper.loc ->
?attrs:Migrate_parsetree.Ast_408.Ast_helper.attrs ->
float -> Migrate_parsetree.Ast_408.Parsetree.expression
val sequence : ?loc:Migrate_parsetree.Ast_408.Ast_helper.loc ->
?attrs:Migrate_parsetree.Ast_408.Ast_helper.attrs ->
Migrate_parsetree.Ast_408.Parsetree.expression list ->
Migrate_parsetree.Ast_408.Parsetree.expression

Return () if the list is empty. Tail rec.

Patterns

val pvar : ?loc:Migrate_parsetree.Ast_408.Ast_helper.loc ->
?attrs:Migrate_parsetree.Ast_408.Ast_helper.attrs ->
string -> Migrate_parsetree.Ast_408.Parsetree.pattern
val pconstr : ?loc:Migrate_parsetree.Ast_408.Ast_helper.loc ->
?attrs:Migrate_parsetree.Ast_408.Ast_helper.attrs ->
string ->
Migrate_parsetree.Ast_408.Parsetree.pattern list ->
Migrate_parsetree.Ast_408.Parsetree.pattern
val precord : ?loc:Migrate_parsetree.Ast_408.Ast_helper.loc ->
?attrs:Migrate_parsetree.Ast_408.Ast_helper.attrs ->
?closed:Migrate_parsetree.Ast_408.Asttypes.closed_flag ->
(string * Migrate_parsetree.Ast_408.Parsetree.pattern) list ->
Migrate_parsetree.Ast_408.Parsetree.pattern
val ptuple : ?loc:Migrate_parsetree.Ast_408.Ast_helper.loc ->
?attrs:Migrate_parsetree.Ast_408.Ast_helper.attrs ->
Migrate_parsetree.Ast_408.Parsetree.pattern list ->
Migrate_parsetree.Ast_408.Parsetree.pattern
val pnil : ?loc:Migrate_parsetree.Ast_408.Ast_helper.loc ->
?attrs:Migrate_parsetree.Ast_408.Ast_helper.attrs ->
unit -> Migrate_parsetree.Ast_408.Parsetree.pattern
val pcons : ?loc:Migrate_parsetree.Ast_408.Ast_helper.loc ->
?attrs:Migrate_parsetree.Ast_408.Ast_helper.attrs ->
Migrate_parsetree.Ast_408.Parsetree.pattern ->
Migrate_parsetree.Ast_408.Parsetree.pattern ->
Migrate_parsetree.Ast_408.Parsetree.pattern
val plist : ?loc:Migrate_parsetree.Ast_408.Ast_helper.loc ->
?attrs:Migrate_parsetree.Ast_408.Ast_helper.attrs ->
Migrate_parsetree.Ast_408.Parsetree.pattern list ->
Migrate_parsetree.Ast_408.Parsetree.pattern
val pstr : ?loc:Migrate_parsetree.Ast_408.Ast_helper.loc ->
?attrs:Migrate_parsetree.Ast_408.Ast_helper.attrs ->
string -> Migrate_parsetree.Ast_408.Parsetree.pattern
val pint : ?loc:Migrate_parsetree.Ast_408.Ast_helper.loc ->
?attrs:Migrate_parsetree.Ast_408.Ast_helper.attrs ->
int -> Migrate_parsetree.Ast_408.Parsetree.pattern
val pchar : ?loc:Migrate_parsetree.Ast_408.Ast_helper.loc ->
?attrs:Migrate_parsetree.Ast_408.Ast_helper.attrs ->
char -> Migrate_parsetree.Ast_408.Parsetree.pattern
val pfloat : ?loc:Migrate_parsetree.Ast_408.Ast_helper.loc ->
?attrs:Migrate_parsetree.Ast_408.Ast_helper.attrs ->
float -> Migrate_parsetree.Ast_408.Parsetree.pattern
val punit : ?loc:Migrate_parsetree.Ast_408.Ast_helper.loc ->
?attrs:Migrate_parsetree.Ast_408.Ast_helper.attrs ->
unit -> Migrate_parsetree.Ast_408.Parsetree.pattern

Types

val tconstr : ?loc:Migrate_parsetree.Ast_408.Ast_helper.loc ->
?attrs:Migrate_parsetree.Ast_408.Ast_helper.attrs ->
string ->
Migrate_parsetree.Ast_408.Parsetree.core_type list ->
Migrate_parsetree.Ast_408.Parsetree.core_type

AST deconstruction

val get_str : Migrate_parsetree.Ast_408.Parsetree.expression -> string option
val get_str_with_quotation_delimiter : Migrate_parsetree.Ast_408.Parsetree.expression ->
(string * string option) option
val get_lid : Migrate_parsetree.Ast_408.Parsetree.expression -> string option
val has_attr : string -> Migrate_parsetree.Ast_408.Parsetree.attributes -> bool
val find_attr : string ->
Migrate_parsetree.Ast_408.Parsetree.attributes ->
Migrate_parsetree.Ast_408.Parsetree.payload option
val find_attr_expr : string ->
Migrate_parsetree.Ast_408.Parsetree.attributes ->
Migrate_parsetree.Ast_408.Parsetree.expression option