Module U.Mappers

val regenerate_span_ids : < visit_F__arbitrary_lhs : unit -> InputLanguage.arbitrary_lhs -> InputLanguage.arbitrary_lhs ; visit_F__as_pattern : unit -> InputLanguage.as_pattern -> InputLanguage.as_pattern ; visit_F__block : unit -> InputLanguage.block -> InputLanguage.block ; visit_F__break : unit -> InputLanguage.break -> InputLanguage.break ; visit_F__construct_base : unit -> InputLanguage.construct_base -> InputLanguage.construct_base ; visit_F__continue : unit -> InputLanguage.continue -> InputLanguage.continue ; visit_F__dyn : unit -> InputLanguage.dyn -> InputLanguage.dyn ; visit_F__early_exit : unit -> InputLanguage.early_exit -> InputLanguage.early_exit ; visit_F__fold_like_loop : unit -> InputLanguage.fold_like_loop -> InputLanguage.fold_like_loop ; visit_F__for_index_loop : unit -> InputLanguage.for_index_loop -> InputLanguage.for_index_loop ; visit_F__for_loop : unit -> InputLanguage.for_loop -> InputLanguage.for_loop ; visit_F__lifetime : unit -> InputLanguage.lifetime -> InputLanguage.lifetime ; visit_F__loop : unit -> InputLanguage.loop -> InputLanguage.loop ; visit_F__macro : unit -> InputLanguage.macro -> InputLanguage.macro ; visit_F__match_guard : unit -> InputLanguage.match_guard -> InputLanguage.match_guard ; visit_F__monadic_action : unit -> InputLanguage.monadic_action -> InputLanguage.monadic_action ; visit_F__monadic_binding : unit -> InputLanguage.monadic_binding -> InputLanguage.monadic_binding ; visit_F__mutable_pointer : unit -> InputLanguage.mutable_pointer -> InputLanguage.mutable_pointer ; visit_F__mutable_reference : unit -> InputLanguage.mutable_reference -> InputLanguage.mutable_reference ; visit_F__mutable_variable : unit -> InputLanguage.mutable_variable -> InputLanguage.mutable_variable ; visit_F__nontrivial_lhs : unit -> InputLanguage.nontrivial_lhs -> InputLanguage.nontrivial_lhs ; visit_F__question_mark : unit -> InputLanguage.question_mark -> InputLanguage.question_mark ; visit_F__raw_pointer : unit -> InputLanguage.raw_pointer -> InputLanguage.raw_pointer ; visit_F__reference : unit -> InputLanguage.reference -> InputLanguage.reference ; visit_F__slice : unit -> InputLanguage.slice -> InputLanguage.slice ; visit_F__state_passing_loop : unit -> InputLanguage.state_passing_loop -> InputLanguage.state_passing_loop ; visit_F__trait_item_default : unit -> InputLanguage.trait_item_default -> InputLanguage.trait_item_default ; visit_F__unsafe : unit -> InputLanguage.unsafe -> InputLanguage.unsafe ; visit_F__while_loop : unit -> InputLanguage.while_loop -> InputLanguage.while_loop ; visit_Local_ident__t : unit -> Local_ident.t -> Local_ident.t ; visit_arm : unit -> Hax_engine__Ast.Make(InputLanguage).arm -> Hax_engine__Ast.Make(InputLanguage).arm ; visit_arm' : unit -> Hax_engine__Ast.Make(InputLanguage).arm' -> Hax_engine__Ast.Make(InputLanguage).arm' ; visit_attr : unit -> Ast.attr -> Ast.attr ; visit_attrs : unit -> Ast.attrs -> Ast.attrs ; visit_binding_mode : unit -> Hax_engine__Ast.Make(InputLanguage).binding_mode -> Hax_engine__Ast.Make(InputLanguage).binding_mode ; visit_bool : unit -> Base.bool -> Base.bool ; visit_borrow_kind : unit -> Hax_engine__Ast.Make(InputLanguage).borrow_kind -> Hax_engine__Ast.Make(InputLanguage).borrow_kind ; visit_cf_kind : unit -> Hax_engine__Ast.Make(InputLanguage).cf_kind -> Hax_engine__Ast.Make(InputLanguage).cf_kind ; visit_char : unit -> Base.char -> Base.char ; visit_concrete_ident : unit -> Ast.concrete_ident -> Ast.concrete_ident ; visit_dyn_trait_goal : unit -> Hax_engine__Ast.Make(InputLanguage).dyn_trait_goal -> Hax_engine__Ast.Make(InputLanguage).dyn_trait_goal ; visit_expr : unit -> Hax_engine__Ast.Make(InputLanguage).expr -> Hax_engine__Ast.Make(InputLanguage).expr ; visit_expr' : unit -> Hax_engine__Ast.Make(InputLanguage).expr' -> Hax_engine__Ast.Make(InputLanguage).expr' ; visit_field_pat : unit -> Hax_engine__Ast.Make(InputLanguage).field_pat -> Hax_engine__Ast.Make(InputLanguage).field_pat ; visit_float_kind : unit -> Ast.float_kind -> Ast.float_kind ; visit_generic_constraint : unit -> Hax_engine__Ast.Make(InputLanguage).generic_constraint -> Hax_engine__Ast.Make(InputLanguage).generic_constraint ; visit_generic_param : unit -> Hax_engine__Ast.Make(InputLanguage).generic_param -> Hax_engine__Ast.Make(InputLanguage).generic_param ; visit_generic_param_kind : unit -> Hax_engine__Ast.Make(InputLanguage).generic_param_kind -> Hax_engine__Ast.Make(InputLanguage).generic_param_kind ; visit_generic_value : unit -> Hax_engine__Ast.Make(InputLanguage).generic_value -> Hax_engine__Ast.Make(InputLanguage).generic_value ; visit_generics : unit -> Hax_engine__Ast.Make(InputLanguage).generics -> Hax_engine__Ast.Make(InputLanguage).generics ; visit_global_ident : unit -> Ast.global_ident -> Ast.global_ident ; visit_guard : unit -> Hax_engine__Ast.Make(InputLanguage).guard -> Hax_engine__Ast.Make(InputLanguage).guard ; visit_guard' : unit -> Hax_engine__Ast.Make(InputLanguage).guard' -> Hax_engine__Ast.Make(InputLanguage).guard' ; visit_impl_expr : unit -> Hax_engine__Ast.Make(InputLanguage).impl_expr -> Hax_engine__Ast.Make(InputLanguage).impl_expr ; visit_impl_expr_kind : unit -> Hax_engine__Ast.Make(InputLanguage).impl_expr_kind -> Hax_engine__Ast.Make(InputLanguage).impl_expr_kind ; visit_impl_ident : unit -> Hax_engine__Ast.Make(InputLanguage).impl_ident -> Hax_engine__Ast.Make(InputLanguage).impl_ident ; visit_impl_item : unit -> Hax_engine__Ast.Make(InputLanguage).impl_item -> Hax_engine__Ast.Make(InputLanguage).impl_item ; visit_impl_item' : unit -> Hax_engine__Ast.Make(InputLanguage).impl_item' -> Hax_engine__Ast.Make(InputLanguage).impl_item' ; visit_int_kind : unit -> Ast.int_kind -> Ast.int_kind ; visit_item : unit -> Hax_engine__Ast.Make(InputLanguage).item -> Hax_engine__Ast.Make(InputLanguage).item ; visit_item' : unit -> Hax_engine__Ast.Make(InputLanguage).item' -> Hax_engine__Ast.Make(InputLanguage).item' ; visit_item_quote_origin : unit -> Ast.item_quote_origin -> Ast.item_quote_origin ; visit_lhs : unit -> Hax_engine__Ast.Make(InputLanguage).lhs -> Hax_engine__Ast.Make(InputLanguage).lhs ; visit_list : 'a. (unit -> 'a -> 'a) -> unit -> 'a Base.list -> 'a Base.list ; visit_literal : unit -> Ast.literal -> Ast.literal ; visit_local_ident : unit -> Ast.local_ident -> Ast.local_ident ; visit_loop_kind : unit -> Hax_engine__Ast.Make(InputLanguage).loop_kind -> Hax_engine__Ast.Make(InputLanguage).loop_kind ; visit_loop_state : unit -> Hax_engine__Ast.Make(InputLanguage).loop_state -> Hax_engine__Ast.Make(InputLanguage).loop_state ; visit_modul : unit -> Hax_engine__Ast.Make(InputLanguage).item Prelude.list -> Hax_engine__Ast.Make(InputLanguage).item Prelude.list ; visit_mutability : 'mut_witness. (unit -> 'mut_witness -> 'mut_witness) -> unit -> 'mut_witness Ast.mutability -> 'mut_witness Ast.mutability ; visit_option : 'a. (unit -> 'a -> 'a) -> unit -> 'a Base.option -> 'a Base.option ; visit_param : unit -> Hax_engine__Ast.Make(InputLanguage).param -> Hax_engine__Ast.Make(InputLanguage).param ; visit_pat : unit -> Hax_engine__Ast.Make(InputLanguage).pat -> Hax_engine__Ast.Make(InputLanguage).pat ; visit_pat' : unit -> Hax_engine__Ast.Make(InputLanguage).pat' -> Hax_engine__Ast.Make(InputLanguage).pat' ; visit_prim___tuple_2 : 't0 't1. (unit -> 't0 -> 't0) -> (unit -> 't1 -> 't1) -> unit -> ('t0 * 't1) -> 't0 * 't1 ; visit_prim___tuple_3 : 't0 't1 't2. (unit -> 't0 -> 't0) -> (unit -> 't1 -> 't1) -> (unit -> 't2 -> 't2) -> unit -> ('t0 * 't1 * 't2) -> 't0 * 't1 * 't2 ; visit_prim___tuple_4 : 't0 't1 't2 't3. (unit -> 't0 -> 't0) -> (unit -> 't1 -> 't1) -> (unit -> 't2 -> 't2) -> (unit -> 't3 -> 't3) -> unit -> ('t0 * 't1 * 't2 * 't3) -> 't0 * 't1 * 't2 * 't3 ; visit_projection_predicate : unit -> Hax_engine__Ast.Make(InputLanguage).projection_predicate -> Hax_engine__Ast.Make(InputLanguage).projection_predicate ; visit_quote : unit -> Hax_engine__Ast.Make(InputLanguage).quote -> Hax_engine__Ast.Make(InputLanguage).quote ; visit_safety_kind : unit -> Hax_engine__Ast.Make(InputLanguage).safety_kind -> Hax_engine__Ast.Make(InputLanguage).safety_kind ; visit_span : unit -> Ast.span -> Ast.span ; visit_string : unit -> Base.string -> Base.string ; visit_supported_monads : unit -> Hax_engine__Ast.Make(InputLanguage).supported_monads -> Hax_engine__Ast.Make(InputLanguage).supported_monads ; visit_todo : unit -> Ast.todo -> Ast.todo ; visit_trait_goal : unit -> Hax_engine__Ast.Make(InputLanguage).trait_goal -> Hax_engine__Ast.Make(InputLanguage).trait_goal ; visit_trait_item : unit -> Hax_engine__Ast.Make(InputLanguage).trait_item -> Hax_engine__Ast.Make(InputLanguage).trait_item ; visit_trait_item' : unit -> Hax_engine__Ast.Make(InputLanguage).trait_item' -> Hax_engine__Ast.Make(InputLanguage).trait_item' ; visit_ty : unit -> Hax_engine__Ast.Make(InputLanguage).ty -> Hax_engine__Ast.Make(InputLanguage).ty ; visit_variant : unit -> Hax_engine__Ast.Make(InputLanguage).variant -> Hax_engine__Ast.Make(InputLanguage).variant >
val normalize_borrow_mut : < visit_F__arbitrary_lhs : unit -> InputLanguage.arbitrary_lhs -> InputLanguage.arbitrary_lhs ; visit_F__as_pattern : unit -> InputLanguage.as_pattern -> InputLanguage.as_pattern ; visit_F__block : unit -> InputLanguage.block -> InputLanguage.block ; visit_F__break : unit -> InputLanguage.break -> InputLanguage.break ; visit_F__construct_base : unit -> InputLanguage.construct_base -> InputLanguage.construct_base ; visit_F__continue : unit -> InputLanguage.continue -> InputLanguage.continue ; visit_F__dyn : unit -> InputLanguage.dyn -> InputLanguage.dyn ; visit_F__early_exit : unit -> InputLanguage.early_exit -> InputLanguage.early_exit ; visit_F__fold_like_loop : unit -> InputLanguage.fold_like_loop -> InputLanguage.fold_like_loop ; visit_F__for_index_loop : unit -> InputLanguage.for_index_loop -> InputLanguage.for_index_loop ; visit_F__for_loop : unit -> InputLanguage.for_loop -> InputLanguage.for_loop ; visit_F__lifetime : unit -> InputLanguage.lifetime -> InputLanguage.lifetime ; visit_F__loop : unit -> InputLanguage.loop -> InputLanguage.loop ; visit_F__macro : unit -> InputLanguage.macro -> InputLanguage.macro ; visit_F__match_guard : unit -> InputLanguage.match_guard -> InputLanguage.match_guard ; visit_F__monadic_action : unit -> InputLanguage.monadic_action -> InputLanguage.monadic_action ; visit_F__monadic_binding : unit -> InputLanguage.monadic_binding -> InputLanguage.monadic_binding ; visit_F__mutable_pointer : unit -> InputLanguage.mutable_pointer -> InputLanguage.mutable_pointer ; visit_F__mutable_reference : unit -> InputLanguage.mutable_reference -> InputLanguage.mutable_reference ; visit_F__mutable_variable : unit -> InputLanguage.mutable_variable -> InputLanguage.mutable_variable ; visit_F__nontrivial_lhs : unit -> InputLanguage.nontrivial_lhs -> InputLanguage.nontrivial_lhs ; visit_F__question_mark : unit -> InputLanguage.question_mark -> InputLanguage.question_mark ; visit_F__raw_pointer : unit -> InputLanguage.raw_pointer -> InputLanguage.raw_pointer ; visit_F__reference : unit -> InputLanguage.reference -> InputLanguage.reference ; visit_F__slice : unit -> InputLanguage.slice -> InputLanguage.slice ; visit_F__state_passing_loop : unit -> InputLanguage.state_passing_loop -> InputLanguage.state_passing_loop ; visit_F__trait_item_default : unit -> InputLanguage.trait_item_default -> InputLanguage.trait_item_default ; visit_F__unsafe : unit -> InputLanguage.unsafe -> InputLanguage.unsafe ; visit_F__while_loop : unit -> InputLanguage.while_loop -> InputLanguage.while_loop ; visit_Local_ident__t : unit -> Local_ident.t -> Local_ident.t ; visit_arm : unit -> Hax_engine__Ast.Make(InputLanguage).arm -> Hax_engine__Ast.Make(InputLanguage).arm ; visit_arm' : unit -> Hax_engine__Ast.Make(InputLanguage).arm' -> Hax_engine__Ast.Make(InputLanguage).arm' ; visit_attr : unit -> Ast.attr -> Ast.attr ; visit_attrs : unit -> Ast.attrs -> Ast.attrs ; visit_binding_mode : unit -> Hax_engine__Ast.Make(InputLanguage).binding_mode -> Hax_engine__Ast.Make(InputLanguage).binding_mode ; visit_bool : unit -> Base.bool -> Base.bool ; visit_borrow_kind : unit -> Hax_engine__Ast.Make(InputLanguage).borrow_kind -> Hax_engine__Ast.Make(InputLanguage).borrow_kind ; visit_cf_kind : unit -> Hax_engine__Ast.Make(InputLanguage).cf_kind -> Hax_engine__Ast.Make(InputLanguage).cf_kind ; visit_char : unit -> Base.char -> Base.char ; visit_concrete_ident : unit -> Ast.concrete_ident -> Ast.concrete_ident ; visit_dyn_trait_goal : unit -> Hax_engine__Ast.Make(InputLanguage).dyn_trait_goal -> Hax_engine__Ast.Make(InputLanguage).dyn_trait_goal ; visit_expr : unit -> Hax_engine__Ast.Make(InputLanguage).expr -> Hax_engine__Ast.Make(InputLanguage).expr ; visit_expr' : unit -> Hax_engine__Ast.Make(InputLanguage).expr' -> Hax_engine__Ast.Make(InputLanguage).expr' ; visit_field_pat : unit -> Hax_engine__Ast.Make(InputLanguage).field_pat -> Hax_engine__Ast.Make(InputLanguage).field_pat ; visit_float_kind : unit -> Ast.float_kind -> Ast.float_kind ; visit_generic_constraint : unit -> Hax_engine__Ast.Make(InputLanguage).generic_constraint -> Hax_engine__Ast.Make(InputLanguage).generic_constraint ; visit_generic_param : unit -> Hax_engine__Ast.Make(InputLanguage).generic_param -> Hax_engine__Ast.Make(InputLanguage).generic_param ; visit_generic_param_kind : unit -> Hax_engine__Ast.Make(InputLanguage).generic_param_kind -> Hax_engine__Ast.Make(InputLanguage).generic_param_kind ; visit_generic_value : unit -> Hax_engine__Ast.Make(InputLanguage).generic_value -> Hax_engine__Ast.Make(InputLanguage).generic_value ; visit_generics : unit -> Hax_engine__Ast.Make(InputLanguage).generics -> Hax_engine__Ast.Make(InputLanguage).generics ; visit_global_ident : unit -> Ast.global_ident -> Ast.global_ident ; visit_guard : unit -> Hax_engine__Ast.Make(InputLanguage).guard -> Hax_engine__Ast.Make(InputLanguage).guard ; visit_guard' : unit -> Hax_engine__Ast.Make(InputLanguage).guard' -> Hax_engine__Ast.Make(InputLanguage).guard' ; visit_impl_expr : unit -> Hax_engine__Ast.Make(InputLanguage).impl_expr -> Hax_engine__Ast.Make(InputLanguage).impl_expr ; visit_impl_expr_kind : unit -> Hax_engine__Ast.Make(InputLanguage).impl_expr_kind -> Hax_engine__Ast.Make(InputLanguage).impl_expr_kind ; visit_impl_ident : unit -> Hax_engine__Ast.Make(InputLanguage).impl_ident -> Hax_engine__Ast.Make(InputLanguage).impl_ident ; visit_impl_item : unit -> Hax_engine__Ast.Make(InputLanguage).impl_item -> Hax_engine__Ast.Make(InputLanguage).impl_item ; visit_impl_item' : unit -> Hax_engine__Ast.Make(InputLanguage).impl_item' -> Hax_engine__Ast.Make(InputLanguage).impl_item' ; visit_int_kind : unit -> Ast.int_kind -> Ast.int_kind ; visit_item : unit -> Hax_engine__Ast.Make(InputLanguage).item -> Hax_engine__Ast.Make(InputLanguage).item ; visit_item' : unit -> Hax_engine__Ast.Make(InputLanguage).item' -> Hax_engine__Ast.Make(InputLanguage).item' ; visit_item_quote_origin : unit -> Ast.item_quote_origin -> Ast.item_quote_origin ; visit_lhs : unit -> Hax_engine__Ast.Make(InputLanguage).lhs -> Hax_engine__Ast.Make(InputLanguage).lhs ; visit_list : 'a. (unit -> 'a -> 'a) -> unit -> 'a Base.list -> 'a Base.list ; visit_literal : unit -> Ast.literal -> Ast.literal ; visit_local_ident : unit -> Ast.local_ident -> Ast.local_ident ; visit_loop_kind : unit -> Hax_engine__Ast.Make(InputLanguage).loop_kind -> Hax_engine__Ast.Make(InputLanguage).loop_kind ; visit_loop_state : unit -> Hax_engine__Ast.Make(InputLanguage).loop_state -> Hax_engine__Ast.Make(InputLanguage).loop_state ; visit_modul : unit -> Hax_engine__Ast.Make(InputLanguage).item Prelude.list -> Hax_engine__Ast.Make(InputLanguage).item Prelude.list ; visit_mutability : 'mut_witness. (unit -> 'mut_witness -> 'mut_witness) -> unit -> 'mut_witness Ast.mutability -> 'mut_witness Ast.mutability ; visit_option : 'a. (unit -> 'a -> 'a) -> unit -> 'a Base.option -> 'a Base.option ; visit_param : unit -> Hax_engine__Ast.Make(InputLanguage).param -> Hax_engine__Ast.Make(InputLanguage).param ; visit_pat : unit -> Hax_engine__Ast.Make(InputLanguage).pat -> Hax_engine__Ast.Make(InputLanguage).pat ; visit_pat' : unit -> Hax_engine__Ast.Make(InputLanguage).pat' -> Hax_engine__Ast.Make(InputLanguage).pat' ; visit_prim___tuple_2 : 't0 't1. (unit -> 't0 -> 't0) -> (unit -> 't1 -> 't1) -> unit -> ('t0 * 't1) -> 't0 * 't1 ; visit_prim___tuple_3 : 't0 't1 't2. (unit -> 't0 -> 't0) -> (unit -> 't1 -> 't1) -> (unit -> 't2 -> 't2) -> unit -> ('t0 * 't1 * 't2) -> 't0 * 't1 * 't2 ; visit_prim___tuple_4 : 't0 't1 't2 't3. (unit -> 't0 -> 't0) -> (unit -> 't1 -> 't1) -> (unit -> 't2 -> 't2) -> (unit -> 't3 -> 't3) -> unit -> ('t0 * 't1 * 't2 * 't3) -> 't0 * 't1 * 't2 * 't3 ; visit_projection_predicate : unit -> Hax_engine__Ast.Make(InputLanguage).projection_predicate -> Hax_engine__Ast.Make(InputLanguage).projection_predicate ; visit_quote : unit -> Hax_engine__Ast.Make(InputLanguage).quote -> Hax_engine__Ast.Make(InputLanguage).quote ; visit_safety_kind : unit -> Hax_engine__Ast.Make(InputLanguage).safety_kind -> Hax_engine__Ast.Make(InputLanguage).safety_kind ; visit_span : unit -> Ast.span -> Ast.span ; visit_string : unit -> Base.string -> Base.string ; visit_supported_monads : unit -> Hax_engine__Ast.Make(InputLanguage).supported_monads -> Hax_engine__Ast.Make(InputLanguage).supported_monads ; visit_todo : unit -> Ast.todo -> Ast.todo ; visit_trait_goal : unit -> Hax_engine__Ast.Make(InputLanguage).trait_goal -> Hax_engine__Ast.Make(InputLanguage).trait_goal ; visit_trait_item : unit -> Hax_engine__Ast.Make(InputLanguage).trait_item -> Hax_engine__Ast.Make(InputLanguage).trait_item ; visit_trait_item' : unit -> Hax_engine__Ast.Make(InputLanguage).trait_item' -> Hax_engine__Ast.Make(InputLanguage).trait_item' ; visit_ty : unit -> Hax_engine__Ast.Make(InputLanguage).ty -> Hax_engine__Ast.Make(InputLanguage).ty ; visit_variant : unit -> Hax_engine__Ast.Make(InputLanguage).variant -> Hax_engine__Ast.Make(InputLanguage).variant >
val rename_generic_constraints : < visit_F__arbitrary_lhs : (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> InputLanguage.arbitrary_lhs -> InputLanguage.arbitrary_lhs ; visit_F__as_pattern : (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> InputLanguage.as_pattern -> InputLanguage.as_pattern ; visit_F__block : (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> InputLanguage.block -> InputLanguage.block ; visit_F__break : (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> InputLanguage.break -> InputLanguage.break ; visit_F__construct_base : (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> InputLanguage.construct_base -> InputLanguage.construct_base ; visit_F__continue : (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> InputLanguage.continue -> InputLanguage.continue ; visit_F__dyn : (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> InputLanguage.dyn -> InputLanguage.dyn ; visit_F__early_exit : (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> InputLanguage.early_exit -> InputLanguage.early_exit ; visit_F__fold_like_loop : (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> InputLanguage.fold_like_loop -> InputLanguage.fold_like_loop ; visit_F__for_index_loop : (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> InputLanguage.for_index_loop -> InputLanguage.for_index_loop ; visit_F__for_loop : (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> InputLanguage.for_loop -> InputLanguage.for_loop ; visit_F__lifetime : (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> InputLanguage.lifetime -> InputLanguage.lifetime ; visit_F__loop : (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> InputLanguage.loop -> InputLanguage.loop ; visit_F__macro : (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> InputLanguage.macro -> InputLanguage.macro ; visit_F__match_guard : (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> InputLanguage.match_guard -> InputLanguage.match_guard ; visit_F__monadic_action : (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> InputLanguage.monadic_action -> InputLanguage.monadic_action ; visit_F__monadic_binding : (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> InputLanguage.monadic_binding -> InputLanguage.monadic_binding ; visit_F__mutable_pointer : (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> InputLanguage.mutable_pointer -> InputLanguage.mutable_pointer ; visit_F__mutable_reference : (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> InputLanguage.mutable_reference -> InputLanguage.mutable_reference ; visit_F__mutable_variable : (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> InputLanguage.mutable_variable -> InputLanguage.mutable_variable ; visit_F__nontrivial_lhs : (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> InputLanguage.nontrivial_lhs -> InputLanguage.nontrivial_lhs ; visit_F__question_mark : (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> InputLanguage.question_mark -> InputLanguage.question_mark ; visit_F__raw_pointer : (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> InputLanguage.raw_pointer -> InputLanguage.raw_pointer ; visit_F__reference : (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> InputLanguage.reference -> InputLanguage.reference ; visit_F__slice : (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> InputLanguage.slice -> InputLanguage.slice ; visit_F__state_passing_loop : (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> InputLanguage.state_passing_loop -> InputLanguage.state_passing_loop ; visit_F__trait_item_default : (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> InputLanguage.trait_item_default -> InputLanguage.trait_item_default ; visit_F__unsafe : (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> InputLanguage.unsafe -> InputLanguage.unsafe ; visit_F__while_loop : (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> InputLanguage.while_loop -> InputLanguage.while_loop ; visit_Local_ident__t : (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> Local_ident.t -> Local_ident.t ; visit_arm : (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> Hax_engine__Ast.Make(InputLanguage).arm -> Hax_engine__Ast.Make(InputLanguage).arm ; visit_arm' : (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> Hax_engine__Ast.Make(InputLanguage).arm' -> Hax_engine__Ast.Make(InputLanguage).arm' ; visit_attr : (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> Ast.attr -> Ast.attr ; visit_attrs : (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> Ast.attrs -> Ast.attrs ; visit_binding_mode : (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> Hax_engine__Ast.Make(InputLanguage).binding_mode -> Hax_engine__Ast.Make(InputLanguage).binding_mode ; visit_bool : (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> Base.bool -> Base.bool ; visit_borrow_kind : (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> Hax_engine__Ast.Make(InputLanguage).borrow_kind -> Hax_engine__Ast.Make(InputLanguage).borrow_kind ; visit_cf_kind : (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> Hax_engine__Ast.Make(InputLanguage).cf_kind -> Hax_engine__Ast.Make(InputLanguage).cf_kind ; visit_char : (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> Base.char -> Base.char ; visit_concrete_ident : (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> Ast.concrete_ident -> Ast.concrete_ident ; visit_dyn_trait_goal : (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> Hax_engine__Ast.Make(InputLanguage).dyn_trait_goal -> Hax_engine__Ast.Make(InputLanguage).dyn_trait_goal ; visit_expr : (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> Hax_engine__Ast.Make(InputLanguage).expr -> Hax_engine__Ast.Make(InputLanguage).expr ; visit_expr' : (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> Hax_engine__Ast.Make(InputLanguage).expr' -> Hax_engine__Ast.Make(InputLanguage).expr' ; visit_field_pat : (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> Hax_engine__Ast.Make(InputLanguage).field_pat -> Hax_engine__Ast.Make(InputLanguage).field_pat ; visit_float_kind : (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> Ast.float_kind -> Ast.float_kind ; visit_generic_constraint : (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> Hax_engine__Ast.Make(InputLanguage).generic_constraint -> Hax_engine__Ast.Make(InputLanguage).generic_constraint ; visit_generic_param : (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> Hax_engine__Ast.Make(InputLanguage).generic_param -> Hax_engine__Ast.Make(InputLanguage).generic_param ; visit_generic_param_kind : (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> Hax_engine__Ast.Make(InputLanguage).generic_param_kind -> Hax_engine__Ast.Make(InputLanguage).generic_param_kind ; visit_generic_value : (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> Hax_engine__Ast.Make(InputLanguage).generic_value -> Hax_engine__Ast.Make(InputLanguage).generic_value ; visit_generics : (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> Hax_engine__Ast.Make(InputLanguage).generics -> Hax_engine__Ast.Make(InputLanguage).generics ; visit_global_ident : (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> Ast.global_ident -> Ast.global_ident ; visit_guard : (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> Hax_engine__Ast.Make(InputLanguage).guard -> Hax_engine__Ast.Make(InputLanguage).guard ; visit_guard' : (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> Hax_engine__Ast.Make(InputLanguage).guard' -> Hax_engine__Ast.Make(InputLanguage).guard' ; visit_impl_expr : (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> Hax_engine__Ast.Make(InputLanguage).impl_expr -> Hax_engine__Ast.Make(InputLanguage).impl_expr ; visit_impl_expr_kind : (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> Hax_engine__Ast.Make(InputLanguage).impl_expr_kind -> Hax_engine__Ast.Make(InputLanguage).impl_expr_kind ; visit_impl_ident : (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> Hax_engine__Ast.Make(InputLanguage).impl_ident -> Hax_engine__Ast.Make(InputLanguage).impl_ident ; visit_impl_item : (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> Hax_engine__Ast.Make(InputLanguage).impl_item -> Hax_engine__Ast.Make(InputLanguage).impl_item ; visit_impl_item' : (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> Hax_engine__Ast.Make(InputLanguage).impl_item' -> Hax_engine__Ast.Make(InputLanguage).impl_item' ; visit_int_kind : (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> Ast.int_kind -> Ast.int_kind ; visit_item : (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> Hax_engine__Ast.Make(InputLanguage).item -> Hax_engine__Ast.Make(InputLanguage).item ; visit_item' : (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> Hax_engine__Ast.Make(InputLanguage).item' -> Hax_engine__Ast.Make(InputLanguage).item' ; visit_item_quote_origin : (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> Ast.item_quote_origin -> Ast.item_quote_origin ; visit_lhs : (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> Hax_engine__Ast.Make(InputLanguage).lhs -> Hax_engine__Ast.Make(InputLanguage).lhs ; visit_list : 'a. ((Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> 'a -> 'a) -> (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> 'a Base.list -> 'a Base.list ; visit_literal : (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> Ast.literal -> Ast.literal ; visit_local_ident : (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> Ast.local_ident -> Ast.local_ident ; visit_loop_kind : (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> Hax_engine__Ast.Make(InputLanguage).loop_kind -> Hax_engine__Ast.Make(InputLanguage).loop_kind ; visit_loop_state : (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> Hax_engine__Ast.Make(InputLanguage).loop_state -> Hax_engine__Ast.Make(InputLanguage).loop_state ; visit_modul : (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> Hax_engine__Ast.Make(InputLanguage).item Prelude.list -> Hax_engine__Ast.Make(InputLanguage).item Prelude.list ; visit_mutability : 'mut_witness. ((Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> 'mut_witness -> 'mut_witness) -> (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> 'mut_witness Ast.mutability -> 'mut_witness Ast.mutability ; visit_option : 'a. ((Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> 'a -> 'a) -> (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> 'a Base.option -> 'a Base.option ; visit_param : (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> Hax_engine__Ast.Make(InputLanguage).param -> Hax_engine__Ast.Make(InputLanguage).param ; visit_pat : (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> Hax_engine__Ast.Make(InputLanguage).pat -> Hax_engine__Ast.Make(InputLanguage).pat ; visit_pat' : (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> Hax_engine__Ast.Make(InputLanguage).pat' -> Hax_engine__Ast.Make(InputLanguage).pat' ; visit_prim___tuple_2 : 't0 't1. ((Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> 't0 -> 't0) -> ((Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> 't1 -> 't1) -> (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> ('t0 * 't1) -> 't0 * 't1 ; visit_prim___tuple_3 : 't0 't1 't2. ((Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> 't0 -> 't0) -> ((Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> 't1 -> 't1) -> ((Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> 't2 -> 't2) -> (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> ('t0 * 't1 * 't2) -> 't0 * 't1 * 't2 ; visit_prim___tuple_4 : 't0 't1 't2 't3. ((Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> 't0 -> 't0) -> ((Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> 't1 -> 't1) -> ((Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> 't2 -> 't2) -> ((Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> 't3 -> 't3) -> (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> ('t0 * 't1 * 't2 * 't3) -> 't0 * 't1 * 't2 * 't3 ; visit_projection_predicate : (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> Hax_engine__Ast.Make(InputLanguage).projection_predicate -> Hax_engine__Ast.Make(InputLanguage).projection_predicate ; visit_quote : (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> Hax_engine__Ast.Make(InputLanguage).quote -> Hax_engine__Ast.Make(InputLanguage).quote ; visit_safety_kind : (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> Hax_engine__Ast.Make(InputLanguage).safety_kind -> Hax_engine__Ast.Make(InputLanguage).safety_kind ; visit_span : (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> Ast.span -> Ast.span ; visit_string : (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> Base.string -> Base.string ; visit_supported_monads : (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> Hax_engine__Ast.Make(InputLanguage).supported_monads -> Hax_engine__Ast.Make(InputLanguage).supported_monads ; visit_todo : (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> Ast.todo -> Ast.todo ; visit_trait_goal : (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> Hax_engine__Ast.Make(InputLanguage).trait_goal -> Hax_engine__Ast.Make(InputLanguage).trait_goal ; visit_trait_item : (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> Hax_engine__Ast.Make(InputLanguage).trait_item -> Hax_engine__Ast.Make(InputLanguage).trait_item ; visit_trait_item' : (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> Hax_engine__Ast.Make(InputLanguage).trait_item' -> Hax_engine__Ast.Make(InputLanguage).trait_item' ; visit_ty : (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> Hax_engine__Ast.Make(InputLanguage).ty -> Hax_engine__Ast.Make(InputLanguage).ty ; visit_variant : (Prelude.bool * (Prelude.string, Prelude.string) Hax_engine.Prelude.Hashtbl.t) -> Hax_engine__Ast.Make(InputLanguage).variant -> Hax_engine__Ast.Make(InputLanguage).variant >
val drop_bodies : < visit_F__arbitrary_lhs : unit -> InputLanguage.arbitrary_lhs -> InputLanguage.arbitrary_lhs ; visit_F__as_pattern : unit -> InputLanguage.as_pattern -> InputLanguage.as_pattern ; visit_F__block : unit -> InputLanguage.block -> InputLanguage.block ; visit_F__break : unit -> InputLanguage.break -> InputLanguage.break ; visit_F__construct_base : unit -> InputLanguage.construct_base -> InputLanguage.construct_base ; visit_F__continue : unit -> InputLanguage.continue -> InputLanguage.continue ; visit_F__dyn : unit -> InputLanguage.dyn -> InputLanguage.dyn ; visit_F__early_exit : unit -> InputLanguage.early_exit -> InputLanguage.early_exit ; visit_F__fold_like_loop : unit -> InputLanguage.fold_like_loop -> InputLanguage.fold_like_loop ; visit_F__for_index_loop : unit -> InputLanguage.for_index_loop -> InputLanguage.for_index_loop ; visit_F__for_loop : unit -> InputLanguage.for_loop -> InputLanguage.for_loop ; visit_F__lifetime : unit -> InputLanguage.lifetime -> InputLanguage.lifetime ; visit_F__loop : unit -> InputLanguage.loop -> InputLanguage.loop ; visit_F__macro : unit -> InputLanguage.macro -> InputLanguage.macro ; visit_F__match_guard : unit -> InputLanguage.match_guard -> InputLanguage.match_guard ; visit_F__monadic_action : unit -> InputLanguage.monadic_action -> InputLanguage.monadic_action ; visit_F__monadic_binding : unit -> InputLanguage.monadic_binding -> InputLanguage.monadic_binding ; visit_F__mutable_pointer : unit -> InputLanguage.mutable_pointer -> InputLanguage.mutable_pointer ; visit_F__mutable_reference : unit -> InputLanguage.mutable_reference -> InputLanguage.mutable_reference ; visit_F__mutable_variable : unit -> InputLanguage.mutable_variable -> InputLanguage.mutable_variable ; visit_F__nontrivial_lhs : unit -> InputLanguage.nontrivial_lhs -> InputLanguage.nontrivial_lhs ; visit_F__question_mark : unit -> InputLanguage.question_mark -> InputLanguage.question_mark ; visit_F__raw_pointer : unit -> InputLanguage.raw_pointer -> InputLanguage.raw_pointer ; visit_F__reference : unit -> InputLanguage.reference -> InputLanguage.reference ; visit_F__slice : unit -> InputLanguage.slice -> InputLanguage.slice ; visit_F__state_passing_loop : unit -> InputLanguage.state_passing_loop -> InputLanguage.state_passing_loop ; visit_F__trait_item_default : unit -> InputLanguage.trait_item_default -> InputLanguage.trait_item_default ; visit_F__unsafe : unit -> InputLanguage.unsafe -> InputLanguage.unsafe ; visit_F__while_loop : unit -> InputLanguage.while_loop -> InputLanguage.while_loop ; visit_Local_ident__t : unit -> Local_ident.t -> Local_ident.t ; visit_arm : unit -> Hax_engine__Ast.Make(InputLanguage).arm -> Hax_engine__Ast.Make(InputLanguage).arm ; visit_arm' : unit -> Hax_engine__Ast.Make(InputLanguage).arm' -> Hax_engine__Ast.Make(InputLanguage).arm' ; visit_attr : unit -> Ast.attr -> Ast.attr ; visit_attrs : unit -> Ast.attrs -> Ast.attrs ; visit_binding_mode : unit -> Hax_engine__Ast.Make(InputLanguage).binding_mode -> Hax_engine__Ast.Make(InputLanguage).binding_mode ; visit_bool : unit -> Base.bool -> Base.bool ; visit_borrow_kind : unit -> Hax_engine__Ast.Make(InputLanguage).borrow_kind -> Hax_engine__Ast.Make(InputLanguage).borrow_kind ; visit_cf_kind : unit -> Hax_engine__Ast.Make(InputLanguage).cf_kind -> Hax_engine__Ast.Make(InputLanguage).cf_kind ; visit_char : unit -> Base.char -> Base.char ; visit_concrete_ident : unit -> Ast.concrete_ident -> Ast.concrete_ident ; visit_dyn_trait_goal : unit -> Hax_engine__Ast.Make(InputLanguage).dyn_trait_goal -> Hax_engine__Ast.Make(InputLanguage).dyn_trait_goal ; visit_expr : unit -> Hax_engine__Ast.Make(InputLanguage).expr -> Hax_engine__Ast.Make(InputLanguage).expr ; visit_expr' : unit -> Hax_engine__Ast.Make(InputLanguage).expr' -> Hax_engine__Ast.Make(InputLanguage).expr' ; visit_field_pat : unit -> Hax_engine__Ast.Make(InputLanguage).field_pat -> Hax_engine__Ast.Make(InputLanguage).field_pat ; visit_float_kind : unit -> Ast.float_kind -> Ast.float_kind ; visit_generic_constraint : unit -> Hax_engine__Ast.Make(InputLanguage).generic_constraint -> Hax_engine__Ast.Make(InputLanguage).generic_constraint ; visit_generic_param : unit -> Hax_engine__Ast.Make(InputLanguage).generic_param -> Hax_engine__Ast.Make(InputLanguage).generic_param ; visit_generic_param_kind : unit -> Hax_engine__Ast.Make(InputLanguage).generic_param_kind -> Hax_engine__Ast.Make(InputLanguage).generic_param_kind ; visit_generic_value : unit -> Hax_engine__Ast.Make(InputLanguage).generic_value -> Hax_engine__Ast.Make(InputLanguage).generic_value ; visit_generics : unit -> Hax_engine__Ast.Make(InputLanguage).generics -> Hax_engine__Ast.Make(InputLanguage).generics ; visit_global_ident : unit -> Ast.global_ident -> Ast.global_ident ; visit_guard : unit -> Hax_engine__Ast.Make(InputLanguage).guard -> Hax_engine__Ast.Make(InputLanguage).guard ; visit_guard' : unit -> Hax_engine__Ast.Make(InputLanguage).guard' -> Hax_engine__Ast.Make(InputLanguage).guard' ; visit_impl_expr : unit -> Hax_engine__Ast.Make(InputLanguage).impl_expr -> Hax_engine__Ast.Make(InputLanguage).impl_expr ; visit_impl_expr_kind : unit -> Hax_engine__Ast.Make(InputLanguage).impl_expr_kind -> Hax_engine__Ast.Make(InputLanguage).impl_expr_kind ; visit_impl_ident : unit -> Hax_engine__Ast.Make(InputLanguage).impl_ident -> Hax_engine__Ast.Make(InputLanguage).impl_ident ; visit_impl_item : unit -> Hax_engine__Ast.Make(InputLanguage).impl_item -> Hax_engine__Ast.Make(InputLanguage).impl_item ; visit_impl_item' : unit -> Hax_engine__Ast.Make(InputLanguage).impl_item' -> Hax_engine__Ast.Make(InputLanguage).impl_item' ; visit_int_kind : unit -> Ast.int_kind -> Ast.int_kind ; visit_item : unit -> Hax_engine__Ast.Make(InputLanguage).item -> Hax_engine__Ast.Make(InputLanguage).item ; visit_item' : unit -> Hax_engine__Ast.Make(InputLanguage).item' -> Hax_engine__Ast.Make(InputLanguage).item' ; visit_item_quote_origin : unit -> Ast.item_quote_origin -> Ast.item_quote_origin ; visit_lhs : unit -> Hax_engine__Ast.Make(InputLanguage).lhs -> Hax_engine__Ast.Make(InputLanguage).lhs ; visit_list : 'a. (unit -> 'a -> 'a) -> unit -> 'a Base.list -> 'a Base.list ; visit_literal : unit -> Ast.literal -> Ast.literal ; visit_local_ident : unit -> Ast.local_ident -> Ast.local_ident ; visit_loop_kind : unit -> Hax_engine__Ast.Make(InputLanguage).loop_kind -> Hax_engine__Ast.Make(InputLanguage).loop_kind ; visit_loop_state : unit -> Hax_engine__Ast.Make(InputLanguage).loop_state -> Hax_engine__Ast.Make(InputLanguage).loop_state ; visit_modul : unit -> Hax_engine__Ast.Make(InputLanguage).item Prelude.list -> Hax_engine__Ast.Make(InputLanguage).item Prelude.list ; visit_mutability : 'mut_witness. (unit -> 'mut_witness -> 'mut_witness) -> unit -> 'mut_witness Ast.mutability -> 'mut_witness Ast.mutability ; visit_option : 'a. (unit -> 'a -> 'a) -> unit -> 'a Base.option -> 'a Base.option ; visit_param : unit -> Hax_engine__Ast.Make(InputLanguage).param -> Hax_engine__Ast.Make(InputLanguage).param ; visit_pat : unit -> Hax_engine__Ast.Make(InputLanguage).pat -> Hax_engine__Ast.Make(InputLanguage).pat ; visit_pat' : unit -> Hax_engine__Ast.Make(InputLanguage).pat' -> Hax_engine__Ast.Make(InputLanguage).pat' ; visit_prim___tuple_2 : 't0 't1. (unit -> 't0 -> 't0) -> (unit -> 't1 -> 't1) -> unit -> ('t0 * 't1) -> 't0 * 't1 ; visit_prim___tuple_3 : 't0 't1 't2. (unit -> 't0 -> 't0) -> (unit -> 't1 -> 't1) -> (unit -> 't2 -> 't2) -> unit -> ('t0 * 't1 * 't2) -> 't0 * 't1 * 't2 ; visit_prim___tuple_4 : 't0 't1 't2 't3. (unit -> 't0 -> 't0) -> (unit -> 't1 -> 't1) -> (unit -> 't2 -> 't2) -> (unit -> 't3 -> 't3) -> unit -> ('t0 * 't1 * 't2 * 't3) -> 't0 * 't1 * 't2 * 't3 ; visit_projection_predicate : unit -> Hax_engine__Ast.Make(InputLanguage).projection_predicate -> Hax_engine__Ast.Make(InputLanguage).projection_predicate ; visit_quote : unit -> Hax_engine__Ast.Make(InputLanguage).quote -> Hax_engine__Ast.Make(InputLanguage).quote ; visit_safety_kind : unit -> Hax_engine__Ast.Make(InputLanguage).safety_kind -> Hax_engine__Ast.Make(InputLanguage).safety_kind ; visit_span : unit -> Ast.span -> Ast.span ; visit_string : unit -> Base.string -> Base.string ; visit_supported_monads : unit -> Hax_engine__Ast.Make(InputLanguage).supported_monads -> Hax_engine__Ast.Make(InputLanguage).supported_monads ; visit_todo : unit -> Ast.todo -> Ast.todo ; visit_trait_goal : unit -> Hax_engine__Ast.Make(InputLanguage).trait_goal -> Hax_engine__Ast.Make(InputLanguage).trait_goal ; visit_trait_item : unit -> Hax_engine__Ast.Make(InputLanguage).trait_item -> Hax_engine__Ast.Make(InputLanguage).trait_item ; visit_trait_item' : unit -> Hax_engine__Ast.Make(InputLanguage).trait_item' -> Hax_engine__Ast.Make(InputLanguage).trait_item' ; visit_ty : unit -> Hax_engine__Ast.Make(InputLanguage).ty -> Hax_engine__Ast.Make(InputLanguage).ty ; visit_variant : unit -> Hax_engine__Ast.Make(InputLanguage).variant -> Hax_engine__Ast.Make(InputLanguage).variant >
val replace_local_variables : (Ast.local_ident, AST.expr, 'b) Hax_engine.Prelude.Map.t -> < visit_F__arbitrary_lhs : unit -> InputLanguage.arbitrary_lhs -> InputLanguage.arbitrary_lhs ; visit_F__as_pattern : unit -> InputLanguage.as_pattern -> InputLanguage.as_pattern ; visit_F__block : unit -> InputLanguage.block -> InputLanguage.block ; visit_F__break : unit -> InputLanguage.break -> InputLanguage.break ; visit_F__construct_base : unit -> InputLanguage.construct_base -> InputLanguage.construct_base ; visit_F__continue : unit -> InputLanguage.continue -> InputLanguage.continue ; visit_F__dyn : unit -> InputLanguage.dyn -> InputLanguage.dyn ; visit_F__early_exit : unit -> InputLanguage.early_exit -> InputLanguage.early_exit ; visit_F__fold_like_loop : unit -> InputLanguage.fold_like_loop -> InputLanguage.fold_like_loop ; visit_F__for_index_loop : unit -> InputLanguage.for_index_loop -> InputLanguage.for_index_loop ; visit_F__for_loop : unit -> InputLanguage.for_loop -> InputLanguage.for_loop ; visit_F__lifetime : unit -> InputLanguage.lifetime -> InputLanguage.lifetime ; visit_F__loop : unit -> InputLanguage.loop -> InputLanguage.loop ; visit_F__macro : unit -> InputLanguage.macro -> InputLanguage.macro ; visit_F__match_guard : unit -> InputLanguage.match_guard -> InputLanguage.match_guard ; visit_F__monadic_action : unit -> InputLanguage.monadic_action -> InputLanguage.monadic_action ; visit_F__monadic_binding : unit -> InputLanguage.monadic_binding -> InputLanguage.monadic_binding ; visit_F__mutable_pointer : unit -> InputLanguage.mutable_pointer -> InputLanguage.mutable_pointer ; visit_F__mutable_reference : unit -> InputLanguage.mutable_reference -> InputLanguage.mutable_reference ; visit_F__mutable_variable : unit -> InputLanguage.mutable_variable -> InputLanguage.mutable_variable ; visit_F__nontrivial_lhs : unit -> InputLanguage.nontrivial_lhs -> InputLanguage.nontrivial_lhs ; visit_F__question_mark : unit -> InputLanguage.question_mark -> InputLanguage.question_mark ; visit_F__raw_pointer : unit -> InputLanguage.raw_pointer -> InputLanguage.raw_pointer ; visit_F__reference : unit -> InputLanguage.reference -> InputLanguage.reference ; visit_F__slice : unit -> InputLanguage.slice -> InputLanguage.slice ; visit_F__state_passing_loop : unit -> InputLanguage.state_passing_loop -> InputLanguage.state_passing_loop ; visit_F__trait_item_default : unit -> InputLanguage.trait_item_default -> InputLanguage.trait_item_default ; visit_F__unsafe : unit -> InputLanguage.unsafe -> InputLanguage.unsafe ; visit_F__while_loop : unit -> InputLanguage.while_loop -> InputLanguage.while_loop ; visit_Local_ident__t : unit -> Local_ident.t -> Local_ident.t ; visit_arm : unit -> Hax_engine__Ast.Make(InputLanguage).arm -> Hax_engine__Ast.Make(InputLanguage).arm ; visit_arm' : unit -> Hax_engine__Ast.Make(InputLanguage).arm' -> Hax_engine__Ast.Make(InputLanguage).arm' ; visit_attr : unit -> Ast.attr -> Ast.attr ; visit_attrs : unit -> Ast.attrs -> Ast.attrs ; visit_binding_mode : unit -> Hax_engine__Ast.Make(InputLanguage).binding_mode -> Hax_engine__Ast.Make(InputLanguage).binding_mode ; visit_bool : unit -> Base.bool -> Base.bool ; visit_borrow_kind : unit -> Hax_engine__Ast.Make(InputLanguage).borrow_kind -> Hax_engine__Ast.Make(InputLanguage).borrow_kind ; visit_cf_kind : unit -> Hax_engine__Ast.Make(InputLanguage).cf_kind -> Hax_engine__Ast.Make(InputLanguage).cf_kind ; visit_char : unit -> Base.char -> Base.char ; visit_concrete_ident : unit -> Ast.concrete_ident -> Ast.concrete_ident ; visit_dyn_trait_goal : unit -> Hax_engine__Ast.Make(InputLanguage).dyn_trait_goal -> Hax_engine__Ast.Make(InputLanguage).dyn_trait_goal ; visit_expr : unit -> Hax_engine__Ast.Make(InputLanguage).expr -> Hax_engine__Ast.Make(InputLanguage).expr ; visit_expr' : unit -> Hax_engine__Ast.Make(InputLanguage).expr' -> Hax_engine__Ast.Make(InputLanguage).expr' ; visit_field_pat : unit -> Hax_engine__Ast.Make(InputLanguage).field_pat -> Hax_engine__Ast.Make(InputLanguage).field_pat ; visit_float_kind : unit -> Ast.float_kind -> Ast.float_kind ; visit_generic_constraint : unit -> Hax_engine__Ast.Make(InputLanguage).generic_constraint -> Hax_engine__Ast.Make(InputLanguage).generic_constraint ; visit_generic_param : unit -> Hax_engine__Ast.Make(InputLanguage).generic_param -> Hax_engine__Ast.Make(InputLanguage).generic_param ; visit_generic_param_kind : unit -> Hax_engine__Ast.Make(InputLanguage).generic_param_kind -> Hax_engine__Ast.Make(InputLanguage).generic_param_kind ; visit_generic_value : unit -> Hax_engine__Ast.Make(InputLanguage).generic_value -> Hax_engine__Ast.Make(InputLanguage).generic_value ; visit_generics : unit -> Hax_engine__Ast.Make(InputLanguage).generics -> Hax_engine__Ast.Make(InputLanguage).generics ; visit_global_ident : unit -> Ast.global_ident -> Ast.global_ident ; visit_guard : unit -> Hax_engine__Ast.Make(InputLanguage).guard -> Hax_engine__Ast.Make(InputLanguage).guard ; visit_guard' : unit -> Hax_engine__Ast.Make(InputLanguage).guard' -> Hax_engine__Ast.Make(InputLanguage).guard' ; visit_impl_expr : unit -> Hax_engine__Ast.Make(InputLanguage).impl_expr -> Hax_engine__Ast.Make(InputLanguage).impl_expr ; visit_impl_expr_kind : unit -> Hax_engine__Ast.Make(InputLanguage).impl_expr_kind -> Hax_engine__Ast.Make(InputLanguage).impl_expr_kind ; visit_impl_ident : unit -> Hax_engine__Ast.Make(InputLanguage).impl_ident -> Hax_engine__Ast.Make(InputLanguage).impl_ident ; visit_impl_item : unit -> Hax_engine__Ast.Make(InputLanguage).impl_item -> Hax_engine__Ast.Make(InputLanguage).impl_item ; visit_impl_item' : unit -> Hax_engine__Ast.Make(InputLanguage).impl_item' -> Hax_engine__Ast.Make(InputLanguage).impl_item' ; visit_int_kind : unit -> Ast.int_kind -> Ast.int_kind ; visit_item : unit -> Hax_engine__Ast.Make(InputLanguage).item -> Hax_engine__Ast.Make(InputLanguage).item ; visit_item' : unit -> Hax_engine__Ast.Make(InputLanguage).item' -> Hax_engine__Ast.Make(InputLanguage).item' ; visit_item_quote_origin : unit -> Ast.item_quote_origin -> Ast.item_quote_origin ; visit_lhs : unit -> Hax_engine__Ast.Make(InputLanguage).lhs -> Hax_engine__Ast.Make(InputLanguage).lhs ; visit_list : 'a. (unit -> 'a -> 'a) -> unit -> 'a Base.list -> 'a Base.list ; visit_literal : unit -> Ast.literal -> Ast.literal ; visit_local_ident : unit -> Ast.local_ident -> Ast.local_ident ; visit_loop_kind : unit -> Hax_engine__Ast.Make(InputLanguage).loop_kind -> Hax_engine__Ast.Make(InputLanguage).loop_kind ; visit_loop_state : unit -> Hax_engine__Ast.Make(InputLanguage).loop_state -> Hax_engine__Ast.Make(InputLanguage).loop_state ; visit_modul : unit -> Hax_engine__Ast.Make(InputLanguage).item Prelude.list -> Hax_engine__Ast.Make(InputLanguage).item Prelude.list ; visit_mutability : 'mut_witness. (unit -> 'mut_witness -> 'mut_witness) -> unit -> 'mut_witness Ast.mutability -> 'mut_witness Ast.mutability ; visit_option : 'a. (unit -> 'a -> 'a) -> unit -> 'a Base.option -> 'a Base.option ; visit_param : unit -> Hax_engine__Ast.Make(InputLanguage).param -> Hax_engine__Ast.Make(InputLanguage).param ; visit_pat : unit -> Hax_engine__Ast.Make(InputLanguage).pat -> Hax_engine__Ast.Make(InputLanguage).pat ; visit_pat' : unit -> Hax_engine__Ast.Make(InputLanguage).pat' -> Hax_engine__Ast.Make(InputLanguage).pat' ; visit_prim___tuple_2 : 't0 't1. (unit -> 't0 -> 't0) -> (unit -> 't1 -> 't1) -> unit -> ('t0 * 't1) -> 't0 * 't1 ; visit_prim___tuple_3 : 't0 't1 't2. (unit -> 't0 -> 't0) -> (unit -> 't1 -> 't1) -> (unit -> 't2 -> 't2) -> unit -> ('t0 * 't1 * 't2) -> 't0 * 't1 * 't2 ; visit_prim___tuple_4 : 't0 't1 't2 't3. (unit -> 't0 -> 't0) -> (unit -> 't1 -> 't1) -> (unit -> 't2 -> 't2) -> (unit -> 't3 -> 't3) -> unit -> ('t0 * 't1 * 't2 * 't3) -> 't0 * 't1 * 't2 * 't3 ; visit_projection_predicate : unit -> Hax_engine__Ast.Make(InputLanguage).projection_predicate -> Hax_engine__Ast.Make(InputLanguage).projection_predicate ; visit_quote : unit -> Hax_engine__Ast.Make(InputLanguage).quote -> Hax_engine__Ast.Make(InputLanguage).quote ; visit_safety_kind : unit -> Hax_engine__Ast.Make(InputLanguage).safety_kind -> Hax_engine__Ast.Make(InputLanguage).safety_kind ; visit_span : unit -> Ast.span -> Ast.span ; visit_string : unit -> Base.string -> Base.string ; visit_supported_monads : unit -> Hax_engine__Ast.Make(InputLanguage).supported_monads -> Hax_engine__Ast.Make(InputLanguage).supported_monads ; visit_todo : unit -> Ast.todo -> Ast.todo ; visit_trait_goal : unit -> Hax_engine__Ast.Make(InputLanguage).trait_goal -> Hax_engine__Ast.Make(InputLanguage).trait_goal ; visit_trait_item : unit -> Hax_engine__Ast.Make(InputLanguage).trait_item -> Hax_engine__Ast.Make(InputLanguage).trait_item ; visit_trait_item' : unit -> Hax_engine__Ast.Make(InputLanguage).trait_item' -> Hax_engine__Ast.Make(InputLanguage).trait_item' ; visit_ty : unit -> Hax_engine__Ast.Make(InputLanguage).ty -> Hax_engine__Ast.Make(InputLanguage).ty ; visit_variant : unit -> Hax_engine__Ast.Make(InputLanguage).variant -> Hax_engine__Ast.Make(InputLanguage).variant >
val replace_local_variable : Ast.local_ident -> AST.expr -> < visit_F__arbitrary_lhs : unit -> InputLanguage.arbitrary_lhs -> InputLanguage.arbitrary_lhs ; visit_F__as_pattern : unit -> InputLanguage.as_pattern -> InputLanguage.as_pattern ; visit_F__block : unit -> InputLanguage.block -> InputLanguage.block ; visit_F__break : unit -> InputLanguage.break -> InputLanguage.break ; visit_F__construct_base : unit -> InputLanguage.construct_base -> InputLanguage.construct_base ; visit_F__continue : unit -> InputLanguage.continue -> InputLanguage.continue ; visit_F__dyn : unit -> InputLanguage.dyn -> InputLanguage.dyn ; visit_F__early_exit : unit -> InputLanguage.early_exit -> InputLanguage.early_exit ; visit_F__fold_like_loop : unit -> InputLanguage.fold_like_loop -> InputLanguage.fold_like_loop ; visit_F__for_index_loop : unit -> InputLanguage.for_index_loop -> InputLanguage.for_index_loop ; visit_F__for_loop : unit -> InputLanguage.for_loop -> InputLanguage.for_loop ; visit_F__lifetime : unit -> InputLanguage.lifetime -> InputLanguage.lifetime ; visit_F__loop : unit -> InputLanguage.loop -> InputLanguage.loop ; visit_F__macro : unit -> InputLanguage.macro -> InputLanguage.macro ; visit_F__match_guard : unit -> InputLanguage.match_guard -> InputLanguage.match_guard ; visit_F__monadic_action : unit -> InputLanguage.monadic_action -> InputLanguage.monadic_action ; visit_F__monadic_binding : unit -> InputLanguage.monadic_binding -> InputLanguage.monadic_binding ; visit_F__mutable_pointer : unit -> InputLanguage.mutable_pointer -> InputLanguage.mutable_pointer ; visit_F__mutable_reference : unit -> InputLanguage.mutable_reference -> InputLanguage.mutable_reference ; visit_F__mutable_variable : unit -> InputLanguage.mutable_variable -> InputLanguage.mutable_variable ; visit_F__nontrivial_lhs : unit -> InputLanguage.nontrivial_lhs -> InputLanguage.nontrivial_lhs ; visit_F__question_mark : unit -> InputLanguage.question_mark -> InputLanguage.question_mark ; visit_F__raw_pointer : unit -> InputLanguage.raw_pointer -> InputLanguage.raw_pointer ; visit_F__reference : unit -> InputLanguage.reference -> InputLanguage.reference ; visit_F__slice : unit -> InputLanguage.slice -> InputLanguage.slice ; visit_F__state_passing_loop : unit -> InputLanguage.state_passing_loop -> InputLanguage.state_passing_loop ; visit_F__trait_item_default : unit -> InputLanguage.trait_item_default -> InputLanguage.trait_item_default ; visit_F__unsafe : unit -> InputLanguage.unsafe -> InputLanguage.unsafe ; visit_F__while_loop : unit -> InputLanguage.while_loop -> InputLanguage.while_loop ; visit_Local_ident__t : unit -> Local_ident.t -> Local_ident.t ; visit_arm : unit -> Hax_engine__Ast.Make(InputLanguage).arm -> Hax_engine__Ast.Make(InputLanguage).arm ; visit_arm' : unit -> Hax_engine__Ast.Make(InputLanguage).arm' -> Hax_engine__Ast.Make(InputLanguage).arm' ; visit_attr : unit -> Ast.attr -> Ast.attr ; visit_attrs : unit -> Ast.attrs -> Ast.attrs ; visit_binding_mode : unit -> Hax_engine__Ast.Make(InputLanguage).binding_mode -> Hax_engine__Ast.Make(InputLanguage).binding_mode ; visit_bool : unit -> Base.bool -> Base.bool ; visit_borrow_kind : unit -> Hax_engine__Ast.Make(InputLanguage).borrow_kind -> Hax_engine__Ast.Make(InputLanguage).borrow_kind ; visit_cf_kind : unit -> Hax_engine__Ast.Make(InputLanguage).cf_kind -> Hax_engine__Ast.Make(InputLanguage).cf_kind ; visit_char : unit -> Base.char -> Base.char ; visit_concrete_ident : unit -> Ast.concrete_ident -> Ast.concrete_ident ; visit_dyn_trait_goal : unit -> Hax_engine__Ast.Make(InputLanguage).dyn_trait_goal -> Hax_engine__Ast.Make(InputLanguage).dyn_trait_goal ; visit_expr : unit -> Hax_engine__Ast.Make(InputLanguage).expr -> Hax_engine__Ast.Make(InputLanguage).expr ; visit_expr' : unit -> Hax_engine__Ast.Make(InputLanguage).expr' -> Hax_engine__Ast.Make(InputLanguage).expr' ; visit_field_pat : unit -> Hax_engine__Ast.Make(InputLanguage).field_pat -> Hax_engine__Ast.Make(InputLanguage).field_pat ; visit_float_kind : unit -> Ast.float_kind -> Ast.float_kind ; visit_generic_constraint : unit -> Hax_engine__Ast.Make(InputLanguage).generic_constraint -> Hax_engine__Ast.Make(InputLanguage).generic_constraint ; visit_generic_param : unit -> Hax_engine__Ast.Make(InputLanguage).generic_param -> Hax_engine__Ast.Make(InputLanguage).generic_param ; visit_generic_param_kind : unit -> Hax_engine__Ast.Make(InputLanguage).generic_param_kind -> Hax_engine__Ast.Make(InputLanguage).generic_param_kind ; visit_generic_value : unit -> Hax_engine__Ast.Make(InputLanguage).generic_value -> Hax_engine__Ast.Make(InputLanguage).generic_value ; visit_generics : unit -> Hax_engine__Ast.Make(InputLanguage).generics -> Hax_engine__Ast.Make(InputLanguage).generics ; visit_global_ident : unit -> Ast.global_ident -> Ast.global_ident ; visit_guard : unit -> Hax_engine__Ast.Make(InputLanguage).guard -> Hax_engine__Ast.Make(InputLanguage).guard ; visit_guard' : unit -> Hax_engine__Ast.Make(InputLanguage).guard' -> Hax_engine__Ast.Make(InputLanguage).guard' ; visit_impl_expr : unit -> Hax_engine__Ast.Make(InputLanguage).impl_expr -> Hax_engine__Ast.Make(InputLanguage).impl_expr ; visit_impl_expr_kind : unit -> Hax_engine__Ast.Make(InputLanguage).impl_expr_kind -> Hax_engine__Ast.Make(InputLanguage).impl_expr_kind ; visit_impl_ident : unit -> Hax_engine__Ast.Make(InputLanguage).impl_ident -> Hax_engine__Ast.Make(InputLanguage).impl_ident ; visit_impl_item : unit -> Hax_engine__Ast.Make(InputLanguage).impl_item -> Hax_engine__Ast.Make(InputLanguage).impl_item ; visit_impl_item' : unit -> Hax_engine__Ast.Make(InputLanguage).impl_item' -> Hax_engine__Ast.Make(InputLanguage).impl_item' ; visit_int_kind : unit -> Ast.int_kind -> Ast.int_kind ; visit_item : unit -> Hax_engine__Ast.Make(InputLanguage).item -> Hax_engine__Ast.Make(InputLanguage).item ; visit_item' : unit -> Hax_engine__Ast.Make(InputLanguage).item' -> Hax_engine__Ast.Make(InputLanguage).item' ; visit_item_quote_origin : unit -> Ast.item_quote_origin -> Ast.item_quote_origin ; visit_lhs : unit -> Hax_engine__Ast.Make(InputLanguage).lhs -> Hax_engine__Ast.Make(InputLanguage).lhs ; visit_list : 'a. (unit -> 'a -> 'a) -> unit -> 'a Base.list -> 'a Base.list ; visit_literal : unit -> Ast.literal -> Ast.literal ; visit_local_ident : unit -> Ast.local_ident -> Ast.local_ident ; visit_loop_kind : unit -> Hax_engine__Ast.Make(InputLanguage).loop_kind -> Hax_engine__Ast.Make(InputLanguage).loop_kind ; visit_loop_state : unit -> Hax_engine__Ast.Make(InputLanguage).loop_state -> Hax_engine__Ast.Make(InputLanguage).loop_state ; visit_modul : unit -> Hax_engine__Ast.Make(InputLanguage).item Prelude.list -> Hax_engine__Ast.Make(InputLanguage).item Prelude.list ; visit_mutability : 'mut_witness. (unit -> 'mut_witness -> 'mut_witness) -> unit -> 'mut_witness Ast.mutability -> 'mut_witness Ast.mutability ; visit_option : 'a. (unit -> 'a -> 'a) -> unit -> 'a Base.option -> 'a Base.option ; visit_param : unit -> Hax_engine__Ast.Make(InputLanguage).param -> Hax_engine__Ast.Make(InputLanguage).param ; visit_pat : unit -> Hax_engine__Ast.Make(InputLanguage).pat -> Hax_engine__Ast.Make(InputLanguage).pat ; visit_pat' : unit -> Hax_engine__Ast.Make(InputLanguage).pat' -> Hax_engine__Ast.Make(InputLanguage).pat' ; visit_prim___tuple_2 : 't0 't1. (unit -> 't0 -> 't0) -> (unit -> 't1 -> 't1) -> unit -> ('t0 * 't1) -> 't0 * 't1 ; visit_prim___tuple_3 : 't0 't1 't2. (unit -> 't0 -> 't0) -> (unit -> 't1 -> 't1) -> (unit -> 't2 -> 't2) -> unit -> ('t0 * 't1 * 't2) -> 't0 * 't1 * 't2 ; visit_prim___tuple_4 : 't0 't1 't2 't3. (unit -> 't0 -> 't0) -> (unit -> 't1 -> 't1) -> (unit -> 't2 -> 't2) -> (unit -> 't3 -> 't3) -> unit -> ('t0 * 't1 * 't2 * 't3) -> 't0 * 't1 * 't2 * 't3 ; visit_projection_predicate : unit -> Hax_engine__Ast.Make(InputLanguage).projection_predicate -> Hax_engine__Ast.Make(InputLanguage).projection_predicate ; visit_quote : unit -> Hax_engine__Ast.Make(InputLanguage).quote -> Hax_engine__Ast.Make(InputLanguage).quote ; visit_safety_kind : unit -> Hax_engine__Ast.Make(InputLanguage).safety_kind -> Hax_engine__Ast.Make(InputLanguage).safety_kind ; visit_span : unit -> Ast.span -> Ast.span ; visit_string : unit -> Base.string -> Base.string ; visit_supported_monads : unit -> Hax_engine__Ast.Make(InputLanguage).supported_monads -> Hax_engine__Ast.Make(InputLanguage).supported_monads ; visit_todo : unit -> Ast.todo -> Ast.todo ; visit_trait_goal : unit -> Hax_engine__Ast.Make(InputLanguage).trait_goal -> Hax_engine__Ast.Make(InputLanguage).trait_goal ; visit_trait_item : unit -> Hax_engine__Ast.Make(InputLanguage).trait_item -> Hax_engine__Ast.Make(InputLanguage).trait_item ; visit_trait_item' : unit -> Hax_engine__Ast.Make(InputLanguage).trait_item' -> Hax_engine__Ast.Make(InputLanguage).trait_item' ; visit_ty : unit -> Hax_engine__Ast.Make(InputLanguage).ty -> Hax_engine__Ast.Make(InputLanguage).ty ; visit_variant : unit -> Hax_engine__Ast.Make(InputLanguage).variant -> Hax_engine__Ast.Make(InputLanguage).variant >
val rename_local_idents : (Ast.local_ident -> Ast.local_ident) -> < visit_F__arbitrary_lhs : unit -> InputLanguage.arbitrary_lhs -> InputLanguage.arbitrary_lhs ; visit_F__as_pattern : unit -> InputLanguage.as_pattern -> InputLanguage.as_pattern ; visit_F__block : unit -> InputLanguage.block -> InputLanguage.block ; visit_F__break : unit -> InputLanguage.break -> InputLanguage.break ; visit_F__construct_base : unit -> InputLanguage.construct_base -> InputLanguage.construct_base ; visit_F__continue : unit -> InputLanguage.continue -> InputLanguage.continue ; visit_F__dyn : unit -> InputLanguage.dyn -> InputLanguage.dyn ; visit_F__early_exit : unit -> InputLanguage.early_exit -> InputLanguage.early_exit ; visit_F__fold_like_loop : unit -> InputLanguage.fold_like_loop -> InputLanguage.fold_like_loop ; visit_F__for_index_loop : unit -> InputLanguage.for_index_loop -> InputLanguage.for_index_loop ; visit_F__for_loop : unit -> InputLanguage.for_loop -> InputLanguage.for_loop ; visit_F__lifetime : unit -> InputLanguage.lifetime -> InputLanguage.lifetime ; visit_F__loop : unit -> InputLanguage.loop -> InputLanguage.loop ; visit_F__macro : unit -> InputLanguage.macro -> InputLanguage.macro ; visit_F__match_guard : unit -> InputLanguage.match_guard -> InputLanguage.match_guard ; visit_F__monadic_action : unit -> InputLanguage.monadic_action -> InputLanguage.monadic_action ; visit_F__monadic_binding : unit -> InputLanguage.monadic_binding -> InputLanguage.monadic_binding ; visit_F__mutable_pointer : unit -> InputLanguage.mutable_pointer -> InputLanguage.mutable_pointer ; visit_F__mutable_reference : unit -> InputLanguage.mutable_reference -> InputLanguage.mutable_reference ; visit_F__mutable_variable : unit -> InputLanguage.mutable_variable -> InputLanguage.mutable_variable ; visit_F__nontrivial_lhs : unit -> InputLanguage.nontrivial_lhs -> InputLanguage.nontrivial_lhs ; visit_F__question_mark : unit -> InputLanguage.question_mark -> InputLanguage.question_mark ; visit_F__raw_pointer : unit -> InputLanguage.raw_pointer -> InputLanguage.raw_pointer ; visit_F__reference : unit -> InputLanguage.reference -> InputLanguage.reference ; visit_F__slice : unit -> InputLanguage.slice -> InputLanguage.slice ; visit_F__state_passing_loop : unit -> InputLanguage.state_passing_loop -> InputLanguage.state_passing_loop ; visit_F__trait_item_default : unit -> InputLanguage.trait_item_default -> InputLanguage.trait_item_default ; visit_F__unsafe : unit -> InputLanguage.unsafe -> InputLanguage.unsafe ; visit_F__while_loop : unit -> InputLanguage.while_loop -> InputLanguage.while_loop ; visit_Local_ident__t : unit -> Local_ident.t -> Local_ident.t ; visit_arm : unit -> Hax_engine__Ast.Make(InputLanguage).arm -> Hax_engine__Ast.Make(InputLanguage).arm ; visit_arm' : unit -> Hax_engine__Ast.Make(InputLanguage).arm' -> Hax_engine__Ast.Make(InputLanguage).arm' ; visit_attr : unit -> Ast.attr -> Ast.attr ; visit_attrs : unit -> Ast.attrs -> Ast.attrs ; visit_binding_mode : unit -> Hax_engine__Ast.Make(InputLanguage).binding_mode -> Hax_engine__Ast.Make(InputLanguage).binding_mode ; visit_bool : unit -> Base.bool -> Base.bool ; visit_borrow_kind : unit -> Hax_engine__Ast.Make(InputLanguage).borrow_kind -> Hax_engine__Ast.Make(InputLanguage).borrow_kind ; visit_cf_kind : unit -> Hax_engine__Ast.Make(InputLanguage).cf_kind -> Hax_engine__Ast.Make(InputLanguage).cf_kind ; visit_char : unit -> Base.char -> Base.char ; visit_concrete_ident : unit -> Ast.concrete_ident -> Ast.concrete_ident ; visit_dyn_trait_goal : unit -> Hax_engine__Ast.Make(InputLanguage).dyn_trait_goal -> Hax_engine__Ast.Make(InputLanguage).dyn_trait_goal ; visit_expr : unit -> Hax_engine__Ast.Make(InputLanguage).expr -> Hax_engine__Ast.Make(InputLanguage).expr ; visit_expr' : unit -> Hax_engine__Ast.Make(InputLanguage).expr' -> Hax_engine__Ast.Make(InputLanguage).expr' ; visit_field_pat : unit -> Hax_engine__Ast.Make(InputLanguage).field_pat -> Hax_engine__Ast.Make(InputLanguage).field_pat ; visit_float_kind : unit -> Ast.float_kind -> Ast.float_kind ; visit_generic_constraint : unit -> Hax_engine__Ast.Make(InputLanguage).generic_constraint -> Hax_engine__Ast.Make(InputLanguage).generic_constraint ; visit_generic_param : unit -> Hax_engine__Ast.Make(InputLanguage).generic_param -> Hax_engine__Ast.Make(InputLanguage).generic_param ; visit_generic_param_kind : unit -> Hax_engine__Ast.Make(InputLanguage).generic_param_kind -> Hax_engine__Ast.Make(InputLanguage).generic_param_kind ; visit_generic_value : unit -> Hax_engine__Ast.Make(InputLanguage).generic_value -> Hax_engine__Ast.Make(InputLanguage).generic_value ; visit_generics : unit -> Hax_engine__Ast.Make(InputLanguage).generics -> Hax_engine__Ast.Make(InputLanguage).generics ; visit_global_ident : unit -> Ast.global_ident -> Ast.global_ident ; visit_guard : unit -> Hax_engine__Ast.Make(InputLanguage).guard -> Hax_engine__Ast.Make(InputLanguage).guard ; visit_guard' : unit -> Hax_engine__Ast.Make(InputLanguage).guard' -> Hax_engine__Ast.Make(InputLanguage).guard' ; visit_impl_expr : unit -> Hax_engine__Ast.Make(InputLanguage).impl_expr -> Hax_engine__Ast.Make(InputLanguage).impl_expr ; visit_impl_expr_kind : unit -> Hax_engine__Ast.Make(InputLanguage).impl_expr_kind -> Hax_engine__Ast.Make(InputLanguage).impl_expr_kind ; visit_impl_ident : unit -> Hax_engine__Ast.Make(InputLanguage).impl_ident -> Hax_engine__Ast.Make(InputLanguage).impl_ident ; visit_impl_item : unit -> Hax_engine__Ast.Make(InputLanguage).impl_item -> Hax_engine__Ast.Make(InputLanguage).impl_item ; visit_impl_item' : unit -> Hax_engine__Ast.Make(InputLanguage).impl_item' -> Hax_engine__Ast.Make(InputLanguage).impl_item' ; visit_int_kind : unit -> Ast.int_kind -> Ast.int_kind ; visit_item : unit -> Hax_engine__Ast.Make(InputLanguage).item -> Hax_engine__Ast.Make(InputLanguage).item ; visit_item' : unit -> Hax_engine__Ast.Make(InputLanguage).item' -> Hax_engine__Ast.Make(InputLanguage).item' ; visit_item_quote_origin : unit -> Ast.item_quote_origin -> Ast.item_quote_origin ; visit_lhs : unit -> Hax_engine__Ast.Make(InputLanguage).lhs -> Hax_engine__Ast.Make(InputLanguage).lhs ; visit_list : 'a. (unit -> 'a -> 'a) -> unit -> 'a Base.list -> 'a Base.list ; visit_literal : unit -> Ast.literal -> Ast.literal ; visit_local_ident : unit -> Ast.local_ident -> Ast.local_ident ; visit_loop_kind : unit -> Hax_engine__Ast.Make(InputLanguage).loop_kind -> Hax_engine__Ast.Make(InputLanguage).loop_kind ; visit_loop_state : unit -> Hax_engine__Ast.Make(InputLanguage).loop_state -> Hax_engine__Ast.Make(InputLanguage).loop_state ; visit_modul : unit -> Hax_engine__Ast.Make(InputLanguage).item Prelude.list -> Hax_engine__Ast.Make(InputLanguage).item Prelude.list ; visit_mutability : 'mut_witness. (unit -> 'mut_witness -> 'mut_witness) -> unit -> 'mut_witness Ast.mutability -> 'mut_witness Ast.mutability ; visit_option : 'a. (unit -> 'a -> 'a) -> unit -> 'a Base.option -> 'a Base.option ; visit_param : unit -> Hax_engine__Ast.Make(InputLanguage).param -> Hax_engine__Ast.Make(InputLanguage).param ; visit_pat : unit -> Hax_engine__Ast.Make(InputLanguage).pat -> Hax_engine__Ast.Make(InputLanguage).pat ; visit_pat' : unit -> Hax_engine__Ast.Make(InputLanguage).pat' -> Hax_engine__Ast.Make(InputLanguage).pat' ; visit_prim___tuple_2 : 't0 't1. (unit -> 't0 -> 't0) -> (unit -> 't1 -> 't1) -> unit -> ('t0 * 't1) -> 't0 * 't1 ; visit_prim___tuple_3 : 't0 't1 't2. (unit -> 't0 -> 't0) -> (unit -> 't1 -> 't1) -> (unit -> 't2 -> 't2) -> unit -> ('t0 * 't1 * 't2) -> 't0 * 't1 * 't2 ; visit_prim___tuple_4 : 't0 't1 't2 't3. (unit -> 't0 -> 't0) -> (unit -> 't1 -> 't1) -> (unit -> 't2 -> 't2) -> (unit -> 't3 -> 't3) -> unit -> ('t0 * 't1 * 't2 * 't3) -> 't0 * 't1 * 't2 * 't3 ; visit_projection_predicate : unit -> Hax_engine__Ast.Make(InputLanguage).projection_predicate -> Hax_engine__Ast.Make(InputLanguage).projection_predicate ; visit_quote : unit -> Hax_engine__Ast.Make(InputLanguage).quote -> Hax_engine__Ast.Make(InputLanguage).quote ; visit_safety_kind : unit -> Hax_engine__Ast.Make(InputLanguage).safety_kind -> Hax_engine__Ast.Make(InputLanguage).safety_kind ; visit_span : unit -> Ast.span -> Ast.span ; visit_string : unit -> Base.string -> Base.string ; visit_supported_monads : unit -> Hax_engine__Ast.Make(InputLanguage).supported_monads -> Hax_engine__Ast.Make(InputLanguage).supported_monads ; visit_todo : unit -> Ast.todo -> Ast.todo ; visit_trait_goal : unit -> Hax_engine__Ast.Make(InputLanguage).trait_goal -> Hax_engine__Ast.Make(InputLanguage).trait_goal ; visit_trait_item : unit -> Hax_engine__Ast.Make(InputLanguage).trait_item -> Hax_engine__Ast.Make(InputLanguage).trait_item ; visit_trait_item' : unit -> Hax_engine__Ast.Make(InputLanguage).trait_item' -> Hax_engine__Ast.Make(InputLanguage).trait_item' ; visit_ty : unit -> Hax_engine__Ast.Make(InputLanguage).ty -> Hax_engine__Ast.Make(InputLanguage).ty ; visit_variant : unit -> Hax_engine__Ast.Make(InputLanguage).variant -> Hax_engine__Ast.Make(InputLanguage).variant >
val rename_global_idents : (Hax_engine__Ast_utils.visit_level -> Ast.global_ident -> Ast.global_ident) -> < visit_F__arbitrary_lhs : Hax_engine__Ast_utils.visit_level -> InputLanguage.arbitrary_lhs -> InputLanguage.arbitrary_lhs ; visit_F__as_pattern : Hax_engine__Ast_utils.visit_level -> InputLanguage.as_pattern -> InputLanguage.as_pattern ; visit_F__block : Hax_engine__Ast_utils.visit_level -> InputLanguage.block -> InputLanguage.block ; visit_F__break : Hax_engine__Ast_utils.visit_level -> InputLanguage.break -> InputLanguage.break ; visit_F__construct_base : Hax_engine__Ast_utils.visit_level -> InputLanguage.construct_base -> InputLanguage.construct_base ; visit_F__continue : Hax_engine__Ast_utils.visit_level -> InputLanguage.continue -> InputLanguage.continue ; visit_F__dyn : Hax_engine__Ast_utils.visit_level -> InputLanguage.dyn -> InputLanguage.dyn ; visit_F__early_exit : Hax_engine__Ast_utils.visit_level -> InputLanguage.early_exit -> InputLanguage.early_exit ; visit_F__fold_like_loop : Hax_engine__Ast_utils.visit_level -> InputLanguage.fold_like_loop -> InputLanguage.fold_like_loop ; visit_F__for_index_loop : Hax_engine__Ast_utils.visit_level -> InputLanguage.for_index_loop -> InputLanguage.for_index_loop ; visit_F__for_loop : Hax_engine__Ast_utils.visit_level -> InputLanguage.for_loop -> InputLanguage.for_loop ; visit_F__lifetime : Hax_engine__Ast_utils.visit_level -> InputLanguage.lifetime -> InputLanguage.lifetime ; visit_F__loop : Hax_engine__Ast_utils.visit_level -> InputLanguage.loop -> InputLanguage.loop ; visit_F__macro : Hax_engine__Ast_utils.visit_level -> InputLanguage.macro -> InputLanguage.macro ; visit_F__match_guard : Hax_engine__Ast_utils.visit_level -> InputLanguage.match_guard -> InputLanguage.match_guard ; visit_F__monadic_action : Hax_engine__Ast_utils.visit_level -> InputLanguage.monadic_action -> InputLanguage.monadic_action ; visit_F__monadic_binding : Hax_engine__Ast_utils.visit_level -> InputLanguage.monadic_binding -> InputLanguage.monadic_binding ; visit_F__mutable_pointer : Hax_engine__Ast_utils.visit_level -> InputLanguage.mutable_pointer -> InputLanguage.mutable_pointer ; visit_F__mutable_reference : Hax_engine__Ast_utils.visit_level -> InputLanguage.mutable_reference -> InputLanguage.mutable_reference ; visit_F__mutable_variable : Hax_engine__Ast_utils.visit_level -> InputLanguage.mutable_variable -> InputLanguage.mutable_variable ; visit_F__nontrivial_lhs : Hax_engine__Ast_utils.visit_level -> InputLanguage.nontrivial_lhs -> InputLanguage.nontrivial_lhs ; visit_F__question_mark : Hax_engine__Ast_utils.visit_level -> InputLanguage.question_mark -> InputLanguage.question_mark ; visit_F__raw_pointer : Hax_engine__Ast_utils.visit_level -> InputLanguage.raw_pointer -> InputLanguage.raw_pointer ; visit_F__reference : Hax_engine__Ast_utils.visit_level -> InputLanguage.reference -> InputLanguage.reference ; visit_F__slice : Hax_engine__Ast_utils.visit_level -> InputLanguage.slice -> InputLanguage.slice ; visit_F__state_passing_loop : Hax_engine__Ast_utils.visit_level -> InputLanguage.state_passing_loop -> InputLanguage.state_passing_loop ; visit_F__trait_item_default : Hax_engine__Ast_utils.visit_level -> InputLanguage.trait_item_default -> InputLanguage.trait_item_default ; visit_F__unsafe : Hax_engine__Ast_utils.visit_level -> InputLanguage.unsafe -> InputLanguage.unsafe ; visit_F__while_loop : Hax_engine__Ast_utils.visit_level -> InputLanguage.while_loop -> InputLanguage.while_loop ; visit_Local_ident__t : Hax_engine__Ast_utils.visit_level -> Local_ident.t -> Local_ident.t ; visit_arm : Hax_engine__Ast_utils.visit_level -> Hax_engine__Ast.Make(InputLanguage).arm -> Hax_engine__Ast.Make(InputLanguage).arm ; visit_arm' : Hax_engine__Ast_utils.visit_level -> Hax_engine__Ast.Make(InputLanguage).arm' -> Hax_engine__Ast.Make(InputLanguage).arm' ; visit_attr : Hax_engine__Ast_utils.visit_level -> Ast.attr -> Ast.attr ; visit_attrs : Hax_engine__Ast_utils.visit_level -> Ast.attrs -> Ast.attrs ; visit_binding_mode : Hax_engine__Ast_utils.visit_level -> Hax_engine__Ast.Make(InputLanguage).binding_mode -> Hax_engine__Ast.Make(InputLanguage).binding_mode ; visit_bool : Hax_engine__Ast_utils.visit_level -> Base.bool -> Base.bool ; visit_borrow_kind : Hax_engine__Ast_utils.visit_level -> Hax_engine__Ast.Make(InputLanguage).borrow_kind -> Hax_engine__Ast.Make(InputLanguage).borrow_kind ; visit_cf_kind : Hax_engine__Ast_utils.visit_level -> Hax_engine__Ast.Make(InputLanguage).cf_kind -> Hax_engine__Ast.Make(InputLanguage).cf_kind ; visit_char : Hax_engine__Ast_utils.visit_level -> Base.char -> Base.char ; visit_concrete_ident : Hax_engine__Ast_utils.visit_level -> Ast.concrete_ident -> Ast.concrete_ident ; visit_dyn_trait_goal : Hax_engine__Ast_utils.visit_level -> Hax_engine__Ast.Make(InputLanguage).dyn_trait_goal -> Hax_engine__Ast.Make(InputLanguage).dyn_trait_goal ; visit_expr : Hax_engine__Ast_utils.visit_level -> Hax_engine__Ast.Make(InputLanguage).expr -> Hax_engine__Ast.Make(InputLanguage).expr ; visit_expr' : Hax_engine__Ast_utils.visit_level -> Hax_engine__Ast.Make(InputLanguage).expr' -> Hax_engine__Ast.Make(InputLanguage).expr' ; visit_field_pat : Hax_engine__Ast_utils.visit_level -> Hax_engine__Ast.Make(InputLanguage).field_pat -> Hax_engine__Ast.Make(InputLanguage).field_pat ; visit_float_kind : Hax_engine__Ast_utils.visit_level -> Ast.float_kind -> Ast.float_kind ; visit_generic_constraint : Hax_engine__Ast_utils.visit_level -> Hax_engine__Ast.Make(InputLanguage).generic_constraint -> Hax_engine__Ast.Make(InputLanguage).generic_constraint ; visit_generic_param : Hax_engine__Ast_utils.visit_level -> Hax_engine__Ast.Make(InputLanguage).generic_param -> Hax_engine__Ast.Make(InputLanguage).generic_param ; visit_generic_param_kind : Hax_engine__Ast_utils.visit_level -> Hax_engine__Ast.Make(InputLanguage).generic_param_kind -> Hax_engine__Ast.Make(InputLanguage).generic_param_kind ; visit_generic_value : Hax_engine__Ast_utils.visit_level -> Hax_engine__Ast.Make(InputLanguage).generic_value -> Hax_engine__Ast.Make(InputLanguage).generic_value ; visit_generics : Hax_engine__Ast_utils.visit_level -> Hax_engine__Ast.Make(InputLanguage).generics -> Hax_engine__Ast.Make(InputLanguage).generics ; visit_global_ident : Hax_engine__Ast_utils.visit_level -> Ast.global_ident -> Ast.global_ident ; visit_guard : Hax_engine__Ast_utils.visit_level -> Hax_engine__Ast.Make(InputLanguage).guard -> Hax_engine__Ast.Make(InputLanguage).guard ; visit_guard' : Hax_engine__Ast_utils.visit_level -> Hax_engine__Ast.Make(InputLanguage).guard' -> Hax_engine__Ast.Make(InputLanguage).guard' ; visit_impl_expr : Hax_engine__Ast_utils.visit_level -> Hax_engine__Ast.Make(InputLanguage).impl_expr -> Hax_engine__Ast.Make(InputLanguage).impl_expr ; visit_impl_expr_kind : Hax_engine__Ast_utils.visit_level -> Hax_engine__Ast.Make(InputLanguage).impl_expr_kind -> Hax_engine__Ast.Make(InputLanguage).impl_expr_kind ; visit_impl_ident : Hax_engine__Ast_utils.visit_level -> Hax_engine__Ast.Make(InputLanguage).impl_ident -> Hax_engine__Ast.Make(InputLanguage).impl_ident ; visit_impl_item : Hax_engine__Ast_utils.visit_level -> Hax_engine__Ast.Make(InputLanguage).impl_item -> Hax_engine__Ast.Make(InputLanguage).impl_item ; visit_impl_item' : Hax_engine__Ast_utils.visit_level -> Hax_engine__Ast.Make(InputLanguage).impl_item' -> Hax_engine__Ast.Make(InputLanguage).impl_item' ; visit_int_kind : Hax_engine__Ast_utils.visit_level -> Ast.int_kind -> Ast.int_kind ; visit_item : Hax_engine__Ast_utils.visit_level -> Hax_engine__Ast.Make(InputLanguage).item -> Hax_engine__Ast.Make(InputLanguage).item ; visit_item' : Hax_engine__Ast_utils.visit_level -> Hax_engine__Ast.Make(InputLanguage).item' -> Hax_engine__Ast.Make(InputLanguage).item' ; visit_item_quote_origin : Hax_engine__Ast_utils.visit_level -> Ast.item_quote_origin -> Ast.item_quote_origin ; visit_lhs : Hax_engine__Ast_utils.visit_level -> Hax_engine__Ast.Make(InputLanguage).lhs -> Hax_engine__Ast.Make(InputLanguage).lhs ; visit_list : 'a. (Hax_engine__Ast_utils.visit_level -> 'a -> 'a) -> Hax_engine__Ast_utils.visit_level -> 'a Base.list -> 'a Base.list ; visit_literal : Hax_engine__Ast_utils.visit_level -> Ast.literal -> Ast.literal ; visit_local_ident : Hax_engine__Ast_utils.visit_level -> Ast.local_ident -> Ast.local_ident ; visit_loop_kind : Hax_engine__Ast_utils.visit_level -> Hax_engine__Ast.Make(InputLanguage).loop_kind -> Hax_engine__Ast.Make(InputLanguage).loop_kind ; visit_loop_state : Hax_engine__Ast_utils.visit_level -> Hax_engine__Ast.Make(InputLanguage).loop_state -> Hax_engine__Ast.Make(InputLanguage).loop_state ; visit_modul : Hax_engine__Ast_utils.visit_level -> Hax_engine__Ast.Make(InputLanguage).item Prelude.list -> Hax_engine__Ast.Make(InputLanguage).item Prelude.list ; visit_mutability : 'mut_witness. (Hax_engine__Ast_utils.visit_level -> 'mut_witness -> 'mut_witness) -> Hax_engine__Ast_utils.visit_level -> 'mut_witness Ast.mutability -> 'mut_witness Ast.mutability ; visit_option : 'a. (Hax_engine__Ast_utils.visit_level -> 'a -> 'a) -> Hax_engine__Ast_utils.visit_level -> 'a Base.option -> 'a Base.option ; visit_param : Hax_engine__Ast_utils.visit_level -> Hax_engine__Ast.Make(InputLanguage).param -> Hax_engine__Ast.Make(InputLanguage).param ; visit_pat : Hax_engine__Ast_utils.visit_level -> Hax_engine__Ast.Make(InputLanguage).pat -> Hax_engine__Ast.Make(InputLanguage).pat ; visit_pat' : Hax_engine__Ast_utils.visit_level -> Hax_engine__Ast.Make(InputLanguage).pat' -> Hax_engine__Ast.Make(InputLanguage).pat' ; visit_prim___tuple_2 : 't0 't1. (Hax_engine__Ast_utils.visit_level -> 't0 -> 't0) -> (Hax_engine__Ast_utils.visit_level -> 't1 -> 't1) -> Hax_engine__Ast_utils.visit_level -> ('t0 * 't1) -> 't0 * 't1 ; visit_prim___tuple_3 : 't0 't1 't2. (Hax_engine__Ast_utils.visit_level -> 't0 -> 't0) -> (Hax_engine__Ast_utils.visit_level -> 't1 -> 't1) -> (Hax_engine__Ast_utils.visit_level -> 't2 -> 't2) -> Hax_engine__Ast_utils.visit_level -> ('t0 * 't1 * 't2) -> 't0 * 't1 * 't2 ; visit_prim___tuple_4 : 't0 't1 't2 't3. (Hax_engine__Ast_utils.visit_level -> 't0 -> 't0) -> (Hax_engine__Ast_utils.visit_level -> 't1 -> 't1) -> (Hax_engine__Ast_utils.visit_level -> 't2 -> 't2) -> (Hax_engine__Ast_utils.visit_level -> 't3 -> 't3) -> Hax_engine__Ast_utils.visit_level -> ('t0 * 't1 * 't2 * 't3) -> 't0 * 't1 * 't2 * 't3 ; visit_projection_predicate : Hax_engine__Ast_utils.visit_level -> Hax_engine__Ast.Make(InputLanguage).projection_predicate -> Hax_engine__Ast.Make(InputLanguage).projection_predicate ; visit_quote : Hax_engine__Ast_utils.visit_level -> Hax_engine__Ast.Make(InputLanguage).quote -> Hax_engine__Ast.Make(InputLanguage).quote ; visit_safety_kind : Hax_engine__Ast_utils.visit_level -> Hax_engine__Ast.Make(InputLanguage).safety_kind -> Hax_engine__Ast.Make(InputLanguage).safety_kind ; visit_span : Hax_engine__Ast_utils.visit_level -> Ast.span -> Ast.span ; visit_string : Hax_engine__Ast_utils.visit_level -> Base.string -> Base.string ; visit_supported_monads : Hax_engine__Ast_utils.visit_level -> Hax_engine__Ast.Make(InputLanguage).supported_monads -> Hax_engine__Ast.Make(InputLanguage).supported_monads ; visit_todo : Hax_engine__Ast_utils.visit_level -> Ast.todo -> Ast.todo ; visit_trait_goal : Hax_engine__Ast_utils.visit_level -> Hax_engine__Ast.Make(InputLanguage).trait_goal -> Hax_engine__Ast.Make(InputLanguage).trait_goal ; visit_trait_item : Hax_engine__Ast_utils.visit_level -> Hax_engine__Ast.Make(InputLanguage).trait_item -> Hax_engine__Ast.Make(InputLanguage).trait_item ; visit_trait_item' : Hax_engine__Ast_utils.visit_level -> Hax_engine__Ast.Make(InputLanguage).trait_item' -> Hax_engine__Ast.Make(InputLanguage).trait_item' ; visit_ty : Hax_engine__Ast_utils.visit_level -> Hax_engine__Ast.Make(InputLanguage).ty -> Hax_engine__Ast.Make(InputLanguage).ty ; visit_variant : Hax_engine__Ast_utils.visit_level -> Hax_engine__Ast.Make(InputLanguage).variant -> Hax_engine__Ast.Make(InputLanguage).variant >
val rename_concrete_idents : (Hax_engine__Ast_utils.visit_level -> Concrete_ident.t -> Concrete_ident.t) -> < visit_F__arbitrary_lhs : Hax_engine__Ast_utils.visit_level -> InputLanguage.arbitrary_lhs -> InputLanguage.arbitrary_lhs ; visit_F__as_pattern : Hax_engine__Ast_utils.visit_level -> InputLanguage.as_pattern -> InputLanguage.as_pattern ; visit_F__block : Hax_engine__Ast_utils.visit_level -> InputLanguage.block -> InputLanguage.block ; visit_F__break : Hax_engine__Ast_utils.visit_level -> InputLanguage.break -> InputLanguage.break ; visit_F__construct_base : Hax_engine__Ast_utils.visit_level -> InputLanguage.construct_base -> InputLanguage.construct_base ; visit_F__continue : Hax_engine__Ast_utils.visit_level -> InputLanguage.continue -> InputLanguage.continue ; visit_F__dyn : Hax_engine__Ast_utils.visit_level -> InputLanguage.dyn -> InputLanguage.dyn ; visit_F__early_exit : Hax_engine__Ast_utils.visit_level -> InputLanguage.early_exit -> InputLanguage.early_exit ; visit_F__fold_like_loop : Hax_engine__Ast_utils.visit_level -> InputLanguage.fold_like_loop -> InputLanguage.fold_like_loop ; visit_F__for_index_loop : Hax_engine__Ast_utils.visit_level -> InputLanguage.for_index_loop -> InputLanguage.for_index_loop ; visit_F__for_loop : Hax_engine__Ast_utils.visit_level -> InputLanguage.for_loop -> InputLanguage.for_loop ; visit_F__lifetime : Hax_engine__Ast_utils.visit_level -> InputLanguage.lifetime -> InputLanguage.lifetime ; visit_F__loop : Hax_engine__Ast_utils.visit_level -> InputLanguage.loop -> InputLanguage.loop ; visit_F__macro : Hax_engine__Ast_utils.visit_level -> InputLanguage.macro -> InputLanguage.macro ; visit_F__match_guard : Hax_engine__Ast_utils.visit_level -> InputLanguage.match_guard -> InputLanguage.match_guard ; visit_F__monadic_action : Hax_engine__Ast_utils.visit_level -> InputLanguage.monadic_action -> InputLanguage.monadic_action ; visit_F__monadic_binding : Hax_engine__Ast_utils.visit_level -> InputLanguage.monadic_binding -> InputLanguage.monadic_binding ; visit_F__mutable_pointer : Hax_engine__Ast_utils.visit_level -> InputLanguage.mutable_pointer -> InputLanguage.mutable_pointer ; visit_F__mutable_reference : Hax_engine__Ast_utils.visit_level -> InputLanguage.mutable_reference -> InputLanguage.mutable_reference ; visit_F__mutable_variable : Hax_engine__Ast_utils.visit_level -> InputLanguage.mutable_variable -> InputLanguage.mutable_variable ; visit_F__nontrivial_lhs : Hax_engine__Ast_utils.visit_level -> InputLanguage.nontrivial_lhs -> InputLanguage.nontrivial_lhs ; visit_F__question_mark : Hax_engine__Ast_utils.visit_level -> InputLanguage.question_mark -> InputLanguage.question_mark ; visit_F__raw_pointer : Hax_engine__Ast_utils.visit_level -> InputLanguage.raw_pointer -> InputLanguage.raw_pointer ; visit_F__reference : Hax_engine__Ast_utils.visit_level -> InputLanguage.reference -> InputLanguage.reference ; visit_F__slice : Hax_engine__Ast_utils.visit_level -> InputLanguage.slice -> InputLanguage.slice ; visit_F__state_passing_loop : Hax_engine__Ast_utils.visit_level -> InputLanguage.state_passing_loop -> InputLanguage.state_passing_loop ; visit_F__trait_item_default : Hax_engine__Ast_utils.visit_level -> InputLanguage.trait_item_default -> InputLanguage.trait_item_default ; visit_F__unsafe : Hax_engine__Ast_utils.visit_level -> InputLanguage.unsafe -> InputLanguage.unsafe ; visit_F__while_loop : Hax_engine__Ast_utils.visit_level -> InputLanguage.while_loop -> InputLanguage.while_loop ; visit_Local_ident__t : Hax_engine__Ast_utils.visit_level -> Local_ident.t -> Local_ident.t ; visit_arm : Hax_engine__Ast_utils.visit_level -> Hax_engine__Ast.Make(InputLanguage).arm -> Hax_engine__Ast.Make(InputLanguage).arm ; visit_arm' : Hax_engine__Ast_utils.visit_level -> Hax_engine__Ast.Make(InputLanguage).arm' -> Hax_engine__Ast.Make(InputLanguage).arm' ; visit_attr : Hax_engine__Ast_utils.visit_level -> Ast.attr -> Ast.attr ; visit_attrs : Hax_engine__Ast_utils.visit_level -> Ast.attrs -> Ast.attrs ; visit_binding_mode : Hax_engine__Ast_utils.visit_level -> Hax_engine__Ast.Make(InputLanguage).binding_mode -> Hax_engine__Ast.Make(InputLanguage).binding_mode ; visit_bool : Hax_engine__Ast_utils.visit_level -> Base.bool -> Base.bool ; visit_borrow_kind : Hax_engine__Ast_utils.visit_level -> Hax_engine__Ast.Make(InputLanguage).borrow_kind -> Hax_engine__Ast.Make(InputLanguage).borrow_kind ; visit_cf_kind : Hax_engine__Ast_utils.visit_level -> Hax_engine__Ast.Make(InputLanguage).cf_kind -> Hax_engine__Ast.Make(InputLanguage).cf_kind ; visit_char : Hax_engine__Ast_utils.visit_level -> Base.char -> Base.char ; visit_concrete_ident : Hax_engine__Ast_utils.visit_level -> Ast.concrete_ident -> Ast.concrete_ident ; visit_dyn_trait_goal : Hax_engine__Ast_utils.visit_level -> Hax_engine__Ast.Make(InputLanguage).dyn_trait_goal -> Hax_engine__Ast.Make(InputLanguage).dyn_trait_goal ; visit_expr : Hax_engine__Ast_utils.visit_level -> Hax_engine__Ast.Make(InputLanguage).expr -> Hax_engine__Ast.Make(InputLanguage).expr ; visit_expr' : Hax_engine__Ast_utils.visit_level -> Hax_engine__Ast.Make(InputLanguage).expr' -> Hax_engine__Ast.Make(InputLanguage).expr' ; visit_field_pat : Hax_engine__Ast_utils.visit_level -> Hax_engine__Ast.Make(InputLanguage).field_pat -> Hax_engine__Ast.Make(InputLanguage).field_pat ; visit_float_kind : Hax_engine__Ast_utils.visit_level -> Ast.float_kind -> Ast.float_kind ; visit_generic_constraint : Hax_engine__Ast_utils.visit_level -> Hax_engine__Ast.Make(InputLanguage).generic_constraint -> Hax_engine__Ast.Make(InputLanguage).generic_constraint ; visit_generic_param : Hax_engine__Ast_utils.visit_level -> Hax_engine__Ast.Make(InputLanguage).generic_param -> Hax_engine__Ast.Make(InputLanguage).generic_param ; visit_generic_param_kind : Hax_engine__Ast_utils.visit_level -> Hax_engine__Ast.Make(InputLanguage).generic_param_kind -> Hax_engine__Ast.Make(InputLanguage).generic_param_kind ; visit_generic_value : Hax_engine__Ast_utils.visit_level -> Hax_engine__Ast.Make(InputLanguage).generic_value -> Hax_engine__Ast.Make(InputLanguage).generic_value ; visit_generics : Hax_engine__Ast_utils.visit_level -> Hax_engine__Ast.Make(InputLanguage).generics -> Hax_engine__Ast.Make(InputLanguage).generics ; visit_global_ident : Hax_engine__Ast_utils.visit_level -> Ast.global_ident -> Ast.global_ident ; visit_guard : Hax_engine__Ast_utils.visit_level -> Hax_engine__Ast.Make(InputLanguage).guard -> Hax_engine__Ast.Make(InputLanguage).guard ; visit_guard' : Hax_engine__Ast_utils.visit_level -> Hax_engine__Ast.Make(InputLanguage).guard' -> Hax_engine__Ast.Make(InputLanguage).guard' ; visit_impl_expr : Hax_engine__Ast_utils.visit_level -> Hax_engine__Ast.Make(InputLanguage).impl_expr -> Hax_engine__Ast.Make(InputLanguage).impl_expr ; visit_impl_expr_kind : Hax_engine__Ast_utils.visit_level -> Hax_engine__Ast.Make(InputLanguage).impl_expr_kind -> Hax_engine__Ast.Make(InputLanguage).impl_expr_kind ; visit_impl_ident : Hax_engine__Ast_utils.visit_level -> Hax_engine__Ast.Make(InputLanguage).impl_ident -> Hax_engine__Ast.Make(InputLanguage).impl_ident ; visit_impl_item : Hax_engine__Ast_utils.visit_level -> Hax_engine__Ast.Make(InputLanguage).impl_item -> Hax_engine__Ast.Make(InputLanguage).impl_item ; visit_impl_item' : Hax_engine__Ast_utils.visit_level -> Hax_engine__Ast.Make(InputLanguage).impl_item' -> Hax_engine__Ast.Make(InputLanguage).impl_item' ; visit_int_kind : Hax_engine__Ast_utils.visit_level -> Ast.int_kind -> Ast.int_kind ; visit_item : Hax_engine__Ast_utils.visit_level -> Hax_engine__Ast.Make(InputLanguage).item -> Hax_engine__Ast.Make(InputLanguage).item ; visit_item' : Hax_engine__Ast_utils.visit_level -> Hax_engine__Ast.Make(InputLanguage).item' -> Hax_engine__Ast.Make(InputLanguage).item' ; visit_item_quote_origin : Hax_engine__Ast_utils.visit_level -> Ast.item_quote_origin -> Ast.item_quote_origin ; visit_lhs : Hax_engine__Ast_utils.visit_level -> Hax_engine__Ast.Make(InputLanguage).lhs -> Hax_engine__Ast.Make(InputLanguage).lhs ; visit_list : 'a. (Hax_engine__Ast_utils.visit_level -> 'a -> 'a) -> Hax_engine__Ast_utils.visit_level -> 'a Base.list -> 'a Base.list ; visit_literal : Hax_engine__Ast_utils.visit_level -> Ast.literal -> Ast.literal ; visit_local_ident : Hax_engine__Ast_utils.visit_level -> Ast.local_ident -> Ast.local_ident ; visit_loop_kind : Hax_engine__Ast_utils.visit_level -> Hax_engine__Ast.Make(InputLanguage).loop_kind -> Hax_engine__Ast.Make(InputLanguage).loop_kind ; visit_loop_state : Hax_engine__Ast_utils.visit_level -> Hax_engine__Ast.Make(InputLanguage).loop_state -> Hax_engine__Ast.Make(InputLanguage).loop_state ; visit_modul : Hax_engine__Ast_utils.visit_level -> Hax_engine__Ast.Make(InputLanguage).item Prelude.list -> Hax_engine__Ast.Make(InputLanguage).item Prelude.list ; visit_mutability : 'mut_witness. (Hax_engine__Ast_utils.visit_level -> 'mut_witness -> 'mut_witness) -> Hax_engine__Ast_utils.visit_level -> 'mut_witness Ast.mutability -> 'mut_witness Ast.mutability ; visit_option : 'a. (Hax_engine__Ast_utils.visit_level -> 'a -> 'a) -> Hax_engine__Ast_utils.visit_level -> 'a Base.option -> 'a Base.option ; visit_param : Hax_engine__Ast_utils.visit_level -> Hax_engine__Ast.Make(InputLanguage).param -> Hax_engine__Ast.Make(InputLanguage).param ; visit_pat : Hax_engine__Ast_utils.visit_level -> Hax_engine__Ast.Make(InputLanguage).pat -> Hax_engine__Ast.Make(InputLanguage).pat ; visit_pat' : Hax_engine__Ast_utils.visit_level -> Hax_engine__Ast.Make(InputLanguage).pat' -> Hax_engine__Ast.Make(InputLanguage).pat' ; visit_prim___tuple_2 : 't0 't1. (Hax_engine__Ast_utils.visit_level -> 't0 -> 't0) -> (Hax_engine__Ast_utils.visit_level -> 't1 -> 't1) -> Hax_engine__Ast_utils.visit_level -> ('t0 * 't1) -> 't0 * 't1 ; visit_prim___tuple_3 : 't0 't1 't2. (Hax_engine__Ast_utils.visit_level -> 't0 -> 't0) -> (Hax_engine__Ast_utils.visit_level -> 't1 -> 't1) -> (Hax_engine__Ast_utils.visit_level -> 't2 -> 't2) -> Hax_engine__Ast_utils.visit_level -> ('t0 * 't1 * 't2) -> 't0 * 't1 * 't2 ; visit_prim___tuple_4 : 't0 't1 't2 't3. (Hax_engine__Ast_utils.visit_level -> 't0 -> 't0) -> (Hax_engine__Ast_utils.visit_level -> 't1 -> 't1) -> (Hax_engine__Ast_utils.visit_level -> 't2 -> 't2) -> (Hax_engine__Ast_utils.visit_level -> 't3 -> 't3) -> Hax_engine__Ast_utils.visit_level -> ('t0 * 't1 * 't2 * 't3) -> 't0 * 't1 * 't2 * 't3 ; visit_projection_predicate : Hax_engine__Ast_utils.visit_level -> Hax_engine__Ast.Make(InputLanguage).projection_predicate -> Hax_engine__Ast.Make(InputLanguage).projection_predicate ; visit_quote : Hax_engine__Ast_utils.visit_level -> Hax_engine__Ast.Make(InputLanguage).quote -> Hax_engine__Ast.Make(InputLanguage).quote ; visit_safety_kind : Hax_engine__Ast_utils.visit_level -> Hax_engine__Ast.Make(InputLanguage).safety_kind -> Hax_engine__Ast.Make(InputLanguage).safety_kind ; visit_span : Hax_engine__Ast_utils.visit_level -> Ast.span -> Ast.span ; visit_string : Hax_engine__Ast_utils.visit_level -> Base.string -> Base.string ; visit_supported_monads : Hax_engine__Ast_utils.visit_level -> Hax_engine__Ast.Make(InputLanguage).supported_monads -> Hax_engine__Ast.Make(InputLanguage).supported_monads ; visit_todo : Hax_engine__Ast_utils.visit_level -> Ast.todo -> Ast.todo ; visit_trait_goal : Hax_engine__Ast_utils.visit_level -> Hax_engine__Ast.Make(InputLanguage).trait_goal -> Hax_engine__Ast.Make(InputLanguage).trait_goal ; visit_trait_item : Hax_engine__Ast_utils.visit_level -> Hax_engine__Ast.Make(InputLanguage).trait_item -> Hax_engine__Ast.Make(InputLanguage).trait_item ; visit_trait_item' : Hax_engine__Ast_utils.visit_level -> Hax_engine__Ast.Make(InputLanguage).trait_item' -> Hax_engine__Ast.Make(InputLanguage).trait_item' ; visit_ty : Hax_engine__Ast_utils.visit_level -> Hax_engine__Ast.Make(InputLanguage).ty -> Hax_engine__Ast.Make(InputLanguage).ty ; visit_variant : Hax_engine__Ast_utils.visit_level -> Hax_engine__Ast.Make(InputLanguage).variant -> Hax_engine__Ast.Make(InputLanguage).variant >
val rename_global_idents_item : (Hax_engine__Ast_utils.visit_level -> Ast.global_ident -> Ast.global_ident) -> AST.item -> AST.item
val add_typ_ascription : Hax_engine__Ast.Make(InputLanguage).item -> Hax_engine__Ast.Make(InputLanguage).item