sig
  module Label :
    sig
      type t = Migrate_parsetree.Ast_411.Asttypes.arg_label
      type desc =
        Migrate_parsetree.Ast_411.Asttypes.arg_label =
          Nolabel
        | Labelled of string
        | Optional of string
      val explode :
        Ast_convenience_411.Label.t -> Ast_convenience_411.Label.desc
      val nolabel : Ast_convenience_411.Label.t
      val labelled : string -> Ast_convenience_411.Label.t
      val optional : string -> Ast_convenience_411.Label.t
    end
  module Constant :
    sig
      type t =
        Migrate_parsetree.Ast_411.Parsetree.constant =
          Pconst_integer of string * char option
        | Pconst_char of char
        | Pconst_string of string * Migrate_parsetree.Ast_411.Location.t *
            string option
        | Pconst_float of string * char option
      val of_constant :
        Migrate_parsetree.Ast_411.Parsetree.constant ->
        Ast_convenience_411.Constant.t
      val to_constant :
        Ast_convenience_411.Constant.t ->
        Migrate_parsetree.Ast_411.Parsetree.constant
    end
  val lid :
    ?loc:Migrate_parsetree.Ast_411.Ast_helper.loc ->
    string -> Migrate_parsetree.Ast_411.Ast_helper.lid
  val evar :
    ?loc:Migrate_parsetree.Ast_411.Ast_helper.loc ->
    ?attrs:Migrate_parsetree.Ast_411.Ast_helper.attrs ->
    string -> Migrate_parsetree.Ast_411.Parsetree.expression
  val let_in :
    ?loc:Migrate_parsetree.Ast_411.Ast_helper.loc ->
    ?attrs:Migrate_parsetree.Ast_411.Ast_helper.attrs ->
    ?recursive:bool ->
    Migrate_parsetree.Ast_411.Parsetree.value_binding list ->
    Migrate_parsetree.Ast_411.Parsetree.expression ->
    Migrate_parsetree.Ast_411.Parsetree.expression
  val constr :
    ?loc:Migrate_parsetree.Ast_411.Ast_helper.loc ->
    ?attrs:Migrate_parsetree.Ast_411.Ast_helper.attrs ->
    string ->
    Migrate_parsetree.Ast_411.Parsetree.expression list ->
    Migrate_parsetree.Ast_411.Parsetree.expression
  val record :
    ?loc:Migrate_parsetree.Ast_411.Ast_helper.loc ->
    ?attrs:Migrate_parsetree.Ast_411.Ast_helper.attrs ->
    ?over:Migrate_parsetree.Ast_411.Parsetree.expression ->
    (string * Migrate_parsetree.Ast_411.Parsetree.expression) list ->
    Migrate_parsetree.Ast_411.Parsetree.expression
  val tuple :
    ?loc:Migrate_parsetree.Ast_411.Ast_helper.loc ->
    ?attrs:Migrate_parsetree.Ast_411.Ast_helper.attrs ->
    Migrate_parsetree.Ast_411.Parsetree.expression list ->
    Migrate_parsetree.Ast_411.Parsetree.expression
  val nil :
    ?loc:Migrate_parsetree.Ast_411.Ast_helper.loc ->
    ?attrs:Migrate_parsetree.Ast_411.Ast_helper.attrs ->
    unit -> Migrate_parsetree.Ast_411.Parsetree.expression
  val cons :
    ?loc:Migrate_parsetree.Ast_411.Ast_helper.loc ->
    ?attrs:Migrate_parsetree.Ast_411.Ast_helper.attrs ->
    Migrate_parsetree.Ast_411.Parsetree.expression ->
    Migrate_parsetree.Ast_411.Parsetree.expression ->
    Migrate_parsetree.Ast_411.Parsetree.expression
  val list :
    ?loc:Migrate_parsetree.Ast_411.Ast_helper.loc ->
    ?attrs:Migrate_parsetree.Ast_411.Ast_helper.attrs ->
    Migrate_parsetree.Ast_411.Parsetree.expression list ->
    Migrate_parsetree.Ast_411.Parsetree.expression
  val unit :
    ?loc:Migrate_parsetree.Ast_411.Ast_helper.loc ->
    ?attrs:Migrate_parsetree.Ast_411.Ast_helper.attrs ->
    unit -> Migrate_parsetree.Ast_411.Parsetree.expression
  val func :
    ?loc:Migrate_parsetree.Ast_411.Ast_helper.loc ->
    ?attrs:Migrate_parsetree.Ast_411.Ast_helper.attrs ->
    (Migrate_parsetree.Ast_411.Parsetree.pattern *
     Migrate_parsetree.Ast_411.Parsetree.expression)
    list -> Migrate_parsetree.Ast_411.Parsetree.expression
  val lam :
    ?loc:Migrate_parsetree.Ast_411.Ast_helper.loc ->
    ?attrs:Migrate_parsetree.Ast_411.Ast_helper.attrs ->
    ?label:Ast_convenience_411.Label.t ->
    ?default:Migrate_parsetree.Ast_411.Parsetree.expression ->
    Migrate_parsetree.Ast_411.Parsetree.pattern ->
    Migrate_parsetree.Ast_411.Parsetree.expression ->
    Migrate_parsetree.Ast_411.Parsetree.expression
  val app :
    ?loc:Migrate_parsetree.Ast_411.Ast_helper.loc ->
    ?attrs:Migrate_parsetree.Ast_411.Ast_helper.attrs ->
    Migrate_parsetree.Ast_411.Parsetree.expression ->
    Migrate_parsetree.Ast_411.Parsetree.expression list ->
    Migrate_parsetree.Ast_411.Parsetree.expression
  val str :
    ?loc:Migrate_parsetree.Ast_411.Ast_helper.loc ->
    ?attrs:Migrate_parsetree.Ast_411.Ast_helper.attrs ->
    string -> Migrate_parsetree.Ast_411.Parsetree.expression
  val int :
    ?loc:Migrate_parsetree.Ast_411.Ast_helper.loc ->
    ?attrs:Migrate_parsetree.Ast_411.Ast_helper.attrs ->
    int -> Migrate_parsetree.Ast_411.Parsetree.expression
  val int32 :
    ?loc:Migrate_parsetree.Ast_411.Ast_helper.loc ->
    ?attrs:Migrate_parsetree.Ast_411.Ast_helper.attrs ->
    int32 -> Migrate_parsetree.Ast_411.Parsetree.expression
  val int64 :
    ?loc:Migrate_parsetree.Ast_411.Ast_helper.loc ->
    ?attrs:Migrate_parsetree.Ast_411.Ast_helper.attrs ->
    int64 -> Migrate_parsetree.Ast_411.Parsetree.expression
  val char :
    ?loc:Migrate_parsetree.Ast_411.Ast_helper.loc ->
    ?attrs:Migrate_parsetree.Ast_411.Ast_helper.attrs ->
    char -> Migrate_parsetree.Ast_411.Parsetree.expression
  val float :
    ?loc:Migrate_parsetree.Ast_411.Ast_helper.loc ->
    ?attrs:Migrate_parsetree.Ast_411.Ast_helper.attrs ->
    float -> Migrate_parsetree.Ast_411.Parsetree.expression
  val sequence :
    ?loc:Migrate_parsetree.Ast_411.Ast_helper.loc ->
    ?attrs:Migrate_parsetree.Ast_411.Ast_helper.attrs ->
    Migrate_parsetree.Ast_411.Parsetree.expression list ->
    Migrate_parsetree.Ast_411.Parsetree.expression
  val pvar :
    ?loc:Migrate_parsetree.Ast_411.Ast_helper.loc ->
    ?attrs:Migrate_parsetree.Ast_411.Ast_helper.attrs ->
    string -> Migrate_parsetree.Ast_411.Parsetree.pattern
  val pconstr :
    ?loc:Migrate_parsetree.Ast_411.Ast_helper.loc ->
    ?attrs:Migrate_parsetree.Ast_411.Ast_helper.attrs ->
    string ->
    Migrate_parsetree.Ast_411.Parsetree.pattern list ->
    Migrate_parsetree.Ast_411.Parsetree.pattern
  val precord :
    ?loc:Migrate_parsetree.Ast_411.Ast_helper.loc ->
    ?attrs:Migrate_parsetree.Ast_411.Ast_helper.attrs ->
    ?closed:Migrate_parsetree.Ast_411.Asttypes.closed_flag ->
    (string * Migrate_parsetree.Ast_411.Parsetree.pattern) list ->
    Migrate_parsetree.Ast_411.Parsetree.pattern
  val ptuple :
    ?loc:Migrate_parsetree.Ast_411.Ast_helper.loc ->
    ?attrs:Migrate_parsetree.Ast_411.Ast_helper.attrs ->
    Migrate_parsetree.Ast_411.Parsetree.pattern list ->
    Migrate_parsetree.Ast_411.Parsetree.pattern
  val pnil :
    ?loc:Migrate_parsetree.Ast_411.Ast_helper.loc ->
    ?attrs:Migrate_parsetree.Ast_411.Ast_helper.attrs ->
    unit -> Migrate_parsetree.Ast_411.Parsetree.pattern
  val pcons :
    ?loc:Migrate_parsetree.Ast_411.Ast_helper.loc ->
    ?attrs:Migrate_parsetree.Ast_411.Ast_helper.attrs ->
    Migrate_parsetree.Ast_411.Parsetree.pattern ->
    Migrate_parsetree.Ast_411.Parsetree.pattern ->
    Migrate_parsetree.Ast_411.Parsetree.pattern
  val plist :
    ?loc:Migrate_parsetree.Ast_411.Ast_helper.loc ->
    ?attrs:Migrate_parsetree.Ast_411.Ast_helper.attrs ->
    Migrate_parsetree.Ast_411.Parsetree.pattern list ->
    Migrate_parsetree.Ast_411.Parsetree.pattern
  val pstr :
    ?loc:Migrate_parsetree.Ast_411.Ast_helper.loc ->
    ?attrs:Migrate_parsetree.Ast_411.Ast_helper.attrs ->
    string -> Migrate_parsetree.Ast_411.Parsetree.pattern
  val pint :
    ?loc:Migrate_parsetree.Ast_411.Ast_helper.loc ->
    ?attrs:Migrate_parsetree.Ast_411.Ast_helper.attrs ->
    int -> Migrate_parsetree.Ast_411.Parsetree.pattern
  val pchar :
    ?loc:Migrate_parsetree.Ast_411.Ast_helper.loc ->
    ?attrs:Migrate_parsetree.Ast_411.Ast_helper.attrs ->
    char -> Migrate_parsetree.Ast_411.Parsetree.pattern
  val pfloat :
    ?loc:Migrate_parsetree.Ast_411.Ast_helper.loc ->
    ?attrs:Migrate_parsetree.Ast_411.Ast_helper.attrs ->
    float -> Migrate_parsetree.Ast_411.Parsetree.pattern
  val punit :
    ?loc:Migrate_parsetree.Ast_411.Ast_helper.loc ->
    ?attrs:Migrate_parsetree.Ast_411.Ast_helper.attrs ->
    unit -> Migrate_parsetree.Ast_411.Parsetree.pattern
  val tconstr :
    ?loc:Migrate_parsetree.Ast_411.Ast_helper.loc ->
    ?attrs:Migrate_parsetree.Ast_411.Ast_helper.attrs ->
    string ->
    Migrate_parsetree.Ast_411.Parsetree.core_type list ->
    Migrate_parsetree.Ast_411.Parsetree.core_type
  val get_str :
    Migrate_parsetree.Ast_411.Parsetree.expression -> string option
  val get_str_with_quotation_delimiter :
    Migrate_parsetree.Ast_411.Parsetree.expression ->
    (string * string option) option
  val get_lid :
    Migrate_parsetree.Ast_411.Parsetree.expression -> string option
  val has_attr :
    string -> Migrate_parsetree.Ast_411.Parsetree.attributes -> bool
  val find_attr :
    string ->
    Migrate_parsetree.Ast_411.Parsetree.attributes ->
    Migrate_parsetree.Ast_411.Parsetree.payload option
  val find_attr_expr :
    string ->
    Migrate_parsetree.Ast_411.Parsetree.attributes ->
    Migrate_parsetree.Ast_411.Parsetree.expression option
end