# Module Migrate_parsetree_403_402_migrate

    module Migrate_parsetree_403_402_migrate: sig .. end

    module Def: Migrate_parsetree_def

    module From: Ast_403

    module To: Ast_402

    val inject_predef_option : From.Asttypes.arg_label -> To.Parsetree.core_type -> To.Parsetree.core_type

    val from_loc : 'a From.Location.loc -> From.Location.t

    val migration_error : Location.t -> Def.missing_feature -> 'a

    val copy_expression : From.Parsetree.expression -> To.Parsetree.expression

    val copy_expression_desc : Ast_403.Location.t ->
           From.Parsetree.expression_desc -> To.Parsetree.expression_desc

    val copy_direction_flag : From.Asttypes.direction_flag -> To.Asttypes.direction_flag

    val copy_case : From.Parsetree.case -> To.Parsetree.case

    val copy_value_binding : From.Parsetree.value_binding -> To.Parsetree.value_binding

    val copy_pattern : From.Parsetree.pattern -> To.Parsetree.pattern

    val copy_pattern_desc : Ast_403.Location.t ->
           From.Parsetree.pattern_desc -> To.Parsetree.pattern_desc

    val copy_core_type : From.Parsetree.core_type -> To.Parsetree.core_type

    val copy_core_type_desc : From.Parsetree.core_type_desc -> To.Parsetree.core_type_desc

    val copy_package_type : From.Parsetree.package_type -> To.Parsetree.package_type

    val copy_row_field : From.Parsetree.row_field -> To.Parsetree.row_field

    val copy_attributes : From.Parsetree.attributes -> To.Parsetree.attributes

    val copy_attribute : From.Parsetree.attribute -> To.Parsetree.attribute

    val copy_payload : From.Location.t -> From.Parsetree.payload -> To.Parsetree.payload

    val copy_structure : From.Parsetree.structure -> To.Parsetree.structure

    val copy_structure_item : From.Parsetree.structure_item -> To.Parsetree.structure_item

    val copy_structure_item_desc : From.Parsetree.structure_item_desc -> To.Parsetree.structure_item_desc

    val copy_include_declaration : From.Parsetree.include_declaration -> To.Parsetree.include_declaration

    val copy_class_declaration : From.Parsetree.class_declaration -> To.Parsetree.class_declaration

    val copy_class_expr : From.Parsetree.class_expr -> To.Parsetree.class_expr

    val copy_class_expr_desc : From.Parsetree.class_expr_desc -> To.Parsetree.class_expr_desc

    val copy_class_structure : From.Parsetree.class_structure -> To.Parsetree.class_structure

    val copy_class_field : From.Parsetree.class_field -> To.Parsetree.class_field

    val copy_class_field_desc : From.Parsetree.class_field_desc -> To.Parsetree.class_field_desc

    val copy_class_field_kind : From.Parsetree.class_field_kind -> To.Parsetree.class_field_kind

    val copy_module_binding : From.Parsetree.module_binding -> To.Parsetree.module_binding

    val copy_module_expr : From.Parsetree.module_expr -> To.Parsetree.module_expr

    val copy_module_expr_desc : From.Parsetree.module_expr_desc -> To.Parsetree.module_expr_desc

    val copy_module_type : From.Parsetree.module_type -> To.Parsetree.module_type

    val copy_module_type_desc : From.Parsetree.module_type_desc -> To.Parsetree.module_type_desc

    val copy_with_constraint : From.Parsetree.with_constraint -> To.Parsetree.with_constraint

    val copy_signature : From.Parsetree.signature -> To.Parsetree.signature

    val copy_signature_item : From.Parsetree.signature_item -> To.Parsetree.signature_item

    val copy_signature_item_desc : From.Parsetree.signature_item_desc -> To.Parsetree.signature_item_desc

    val copy_class_type_declaration : From.Parsetree.class_type_declaration -> To.Parsetree.class_type_declaration

    val copy_class_description : From.Parsetree.class_description -> To.Parsetree.class_description

    val copy_class_type : From.Parsetree.class_type -> To.Parsetree.class_type

    val copy_class_type_desc : From.Parsetree.class_type_desc -> To.Parsetree.class_type_desc

    val copy_class_signature : From.Parsetree.class_signature -> To.Parsetree.class_signature

    val copy_class_type_field : From.Parsetree.class_type_field -> To.Parsetree.class_type_field

    val copy_class_type_field_desc : From.Parsetree.class_type_field_desc -> To.Parsetree.class_type_field_desc

    val copy_extension : From.Parsetree.extension -> To.Parsetree.extension

    val copy_class_infos : 'f0 'g0.
             ('f0 -> 'g0) ->
             'f0 From.Parsetree.class_infos -> 'g0 To.Parsetree.class_infos

    val copy_virtual_flag : From.Asttypes.virtual_flag -> To.Asttypes.virtual_flag

    val copy_include_description : From.Parsetree.include_description -> To.Parsetree.include_description

    val copy_include_infos : 'f0 'g0.
             ('f0 -> 'g0) ->
             'f0 From.Parsetree.include_infos -> 'g0 To.Parsetree.include_infos

    val copy_open_description : From.Parsetree.open_description -> To.Parsetree.open_description

    val copy_override_flag : From.Asttypes.override_flag -> To.Asttypes.override_flag

    val copy_module_type_declaration : From.Parsetree.module_type_declaration ->
           To.Parsetree.module_type_declaration

    val copy_module_declaration : From.Parsetree.module_declaration -> To.Parsetree.module_declaration

    val copy_type_extension : From.Parsetree.type_extension -> To.Parsetree.type_extension

    val copy_extension_constructor : From.Parsetree.extension_constructor -> To.Parsetree.extension_constructor

    val copy_extension_constructor_kind : From.Location.t ->
           From.Parsetree.extension_constructor_kind ->
           To.Parsetree.extension_constructor_kind

    val copy_type_declaration : From.Parsetree.type_declaration -> To.Parsetree.type_declaration

    val copy_private_flag : From.Asttypes.private_flag -> To.Asttypes.private_flag

    val copy_type_kind : From.Parsetree.type_kind -> To.Parsetree.type_kind

    val copy_constructor_declaration : From.Parsetree.constructor_declaration ->
           To.Parsetree.constructor_declaration

    val copy_constructor_arguments : From.Location.t ->
           From.Parsetree.constructor_arguments -> To.Parsetree.core_type list

    val copy_label_declaration : From.Parsetree.label_declaration -> To.Parsetree.label_declaration

    val copy_mutable_flag : From.Asttypes.mutable_flag -> To.Asttypes.mutable_flag

    val copy_variance : From.Asttypes.variance -> To.Asttypes.variance

    val copy_value_description : From.Parsetree.value_description -> To.Parsetree.value_description

    val copy_arg_label : From.Asttypes.arg_label -> Ast_402.Asttypes.label

    val copy_closed_flag : From.Asttypes.closed_flag -> To.Asttypes.closed_flag

    val copy_label : Ast_403.Asttypes.label -> To.Asttypes.label

    val copy_rec_flag : From.Asttypes.rec_flag -> To.Asttypes.rec_flag

    val copy_constant : Ast_403.Location.t -> From.Parsetree.constant -> To.Asttypes.constant

    val copy_option : 'f0 'g0. ('f0 -> 'g0) -> 'f0 option -> 'g0 option

    val copy_longident : Ast_403.Longident.t -> To.Longident.t

    val copy_loc : 'f0 'g0. ('f0 -> 'g0) -> 'f0 From.Asttypes.loc -> 'g0 To.Asttypes.loc

    val copy_location : Ast_403.Location.t -> To.Location.t

    val copy_bool : bool -> bool

    val copy_Lexing_position : Lexing.position -> Lexing.position

    val type_declarations : From.Asttypes.rec_flag ->
           From.Parsetree.type_declaration list -> To.Parsetree.type_declaration list

    val copy_out_phrase : From.Outcometree.out_phrase -> To.Outcometree.out_phrase

    val copy_exn : exn -> exn

    val copy_out_sig_item : From.Outcometree.out_sig_item -> To.Outcometree.out_sig_item

    val copy_out_val_decl : From.Outcometree.out_val_decl -> To.Outcometree.out_sig_item

    val copy_out_type_decl : From.Outcometree.out_type_decl -> To.Outcometree.out_type_decl

    val copy_out_module_type : From.Outcometree.out_module_type -> To.Outcometree.out_module_type

    val copy_out_ext_status : From.Outcometree.out_ext_status -> To.Outcometree.out_ext_status

    val copy_out_extension_constructor : From.Outcometree.out_extension_constructor ->
           To.Outcometree.out_extension_constructor

    val copy_From_Asttypes_private_flag : From.Asttypes.private_flag -> To.Asttypes.private_flag

    val copy_out_rec_status : From.Outcometree.out_rec_status -> To.Outcometree.out_rec_status

    val copy_out_class_type : From.Outcometree.out_class_type -> To.Outcometree.out_class_type

    val copy_out_class_sig_item : From.Outcometree.out_class_sig_item -> To.Outcometree.out_class_sig_item

    val copy_out_type : From.Outcometree.out_type -> To.Outcometree.out_type

    val copy_out_variant : From.Outcometree.out_variant -> To.Outcometree.out_variant

    val copy_out_value : From.Outcometree.out_value -> To.Outcometree.out_value

    val copy_float : float -> float

    val copy_out_ident : From.Outcometree.out_ident -> To.Outcometree.out_ident

    val copy_toplevel_phrase : From.Parsetree.toplevel_phrase -> To.Parsetree.toplevel_phrase

    val copy_directive_argument : From.Parsetree.directive_argument -> To.Parsetree.directive_argument

    val copy_out_type_extension : From.Outcometree.out_type_extension -> To.Outcometree.out_type_extension

    val copy_cases : From.Parsetree.case list -> To.Parsetree.case list

    val copy_pat : From.Parsetree.pattern -> To.Parsetree.pattern

    val copy_expr : From.Parsetree.expression -> To.Parsetree.expression

    val copy_typ : From.Parsetree.core_type -> To.Parsetree.core_type