Module Ast_convenience_405

Convenience functions to help build and deconstruct AST fragments.

Compatibility modules

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

Misc

val lid : ?⁠loc:Migrate_parsetree.Ast_405.Ast_helper.loc -> string -> Migrate_parsetree.Ast_405.Ast_helper.lid

Expressions

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

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

Patterns

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

Types

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

AST deconstruction

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