Module UB.M

module AST : sig ... end
module type SPAN = sig ... end
val expr_If : span:Ast.span -> typ:Hax_engine__Ast.Make(FB).ty -> cond:Hax_engine__Ast.Make(FB).expr -> then_:Hax_engine__Ast.Make(FB).expr -> else_:Hax_engine__Ast.Make(FB).expr Prelude.option -> Hax_engine__Ast.Make(FB).expr
val expr_App : span:Ast.span -> typ:Hax_engine__Ast.Make(FB).ty -> f:Hax_engine__Ast.Make(FB).expr -> args:Hax_engine__Ast.Make(FB).expr Prelude.list -> generic_args:Hax_engine__Ast.Make(FB).generic_value Prelude.list -> bounds_impls:Hax_engine__Ast.Make(FB).impl_expr Prelude.list -> trait: (Hax_engine__Ast.Make(FB).impl_expr * Hax_engine__Ast.Make(FB).generic_value Prelude.list) Prelude.option -> Hax_engine__Ast.Make(FB).expr
val expr_Literal : span:Ast.span -> typ:Hax_engine__Ast.Make(FB).ty -> Ast.literal -> Hax_engine__Ast.Make(FB).expr
val expr_Array : span:Ast.span -> typ:Hax_engine__Ast.Make(FB).ty -> Hax_engine__Ast.Make(FB).expr Prelude.list -> Hax_engine__Ast.Make(FB).expr
val expr_Construct : span:Ast.span -> typ:Hax_engine__Ast.Make(FB).ty -> constructor:Ast.global_ident -> is_record:Prelude.bool -> is_struct:Prelude.bool -> fields:(Ast.global_ident * Hax_engine__Ast.Make(FB).expr) Prelude.list -> base:(Hax_engine__Ast.Make(FB).expr * FB.construct_base) Prelude.option -> Hax_engine__Ast.Make(FB).expr
val expr_Match : span:Ast.span -> typ:Hax_engine__Ast.Make(FB).ty -> scrutinee:Hax_engine__Ast.Make(FB).expr -> arms:Hax_engine__Ast.Make(FB).arm Prelude.list -> Hax_engine__Ast.Make(FB).expr
val expr_Let : span:Ast.span -> typ:Hax_engine__Ast.Make(FB).ty -> monadic: (Hax_engine__Ast.Make(FB).supported_monads * FB.monadic_binding) Prelude.option -> lhs:Hax_engine__Ast.Make(FB).pat -> rhs:Hax_engine__Ast.Make(FB).expr -> body:Hax_engine__Ast.Make(FB).expr -> Hax_engine__Ast.Make(FB).expr
val expr_Block : span:Ast.span -> typ:Hax_engine__Ast.Make(FB).ty -> inner_e:Hax_engine__Ast.Make(FB).expr -> safety_mode:Hax_engine__Ast.Make(FB).safety_kind -> witness:FB.block -> Hax_engine__Ast.Make(FB).expr
val expr_LocalVar : span:Ast.span -> typ:Hax_engine__Ast.Make(FB).ty -> Ast.local_ident -> Hax_engine__Ast.Make(FB).expr
val expr_GlobalVar : span:Ast.span -> typ:Hax_engine__Ast.Make(FB).ty -> Ast.global_ident -> Hax_engine__Ast.Make(FB).expr
val expr_Ascription : span:Ast.span -> typ:Hax_engine__Ast.Make(FB).ty -> inner_e:Hax_engine__Ast.Make(FB).expr -> inner_typ:Hax_engine__Ast.Make(FB).ty -> Hax_engine__Ast.Make(FB).expr
val expr_MacroInvokation : span:Ast.span -> typ:Hax_engine__Ast.Make(FB).ty -> macro:Ast.global_ident -> args:Prelude.string -> witness:FB.macro -> Hax_engine__Ast.Make(FB).expr
val expr_Assign : span:Ast.span -> typ:Hax_engine__Ast.Make(FB).ty -> lhs:Hax_engine__Ast.Make(FB).lhs -> inner_e:Hax_engine__Ast.Make(FB).expr -> witness:FB.mutable_variable -> Hax_engine__Ast.Make(FB).expr
val expr_Loop : span:Ast.span -> typ:Hax_engine__Ast.Make(FB).ty -> body:Hax_engine__Ast.Make(FB).expr -> kind:Hax_engine__Ast.Make(FB).loop_kind -> state:Hax_engine__Ast.Make(FB).loop_state Prelude.option -> label:Prelude.string Prelude.option -> witness:FB.loop -> Hax_engine__Ast.Make(FB).expr
val expr_Break : span:Ast.span -> typ:Hax_engine__Ast.Make(FB).ty -> inner_e:Hax_engine__Ast.Make(FB).expr -> label:Prelude.string Prelude.option -> witness:(FB.break * FB.loop) -> Hax_engine__Ast.Make(FB).expr
val expr_Return : span:Ast.span -> typ:Hax_engine__Ast.Make(FB).ty -> inner_e:Hax_engine__Ast.Make(FB).expr -> witness:FB.early_exit -> Hax_engine__Ast.Make(FB).expr
val expr_QuestionMark : span:Ast.span -> typ:Hax_engine__Ast.Make(FB).ty -> inner_e:Hax_engine__Ast.Make(FB).expr -> return_typ:Hax_engine__Ast.Make(FB).ty -> witness:FB.question_mark -> Hax_engine__Ast.Make(FB).expr
val expr_Continue : span:Ast.span -> typ:Hax_engine__Ast.Make(FB).ty -> inner_e: (FB.state_passing_loop * Hax_engine__Ast.Make(FB).expr) Prelude.option -> label:Prelude.string Prelude.option -> witness:(FB.continue * FB.loop) -> Hax_engine__Ast.Make(FB).expr
val expr_Borrow : span:Ast.span -> typ:Hax_engine__Ast.Make(FB).ty -> kind:Hax_engine__Ast.Make(FB).borrow_kind -> inner_e:Hax_engine__Ast.Make(FB).expr -> witness:FB.reference -> Hax_engine__Ast.Make(FB).expr
val expr_AddressOf : span:Ast.span -> typ:Hax_engine__Ast.Make(FB).ty -> mut:FB.mutable_pointer Ast.mutability -> inner_e:Hax_engine__Ast.Make(FB).expr -> witness:FB.raw_pointer -> Hax_engine__Ast.Make(FB).expr
val expr_Closure : span:Ast.span -> typ:Hax_engine__Ast.Make(FB).ty -> params:Hax_engine__Ast.Make(FB).pat Prelude.list -> body:Hax_engine__Ast.Make(FB).expr -> captures:Hax_engine__Ast.Make(FB).expr Prelude.list -> Hax_engine__Ast.Make(FB).expr
val expr_EffectAction : span:Ast.span -> typ:Hax_engine__Ast.Make(FB).ty -> action:FB.monadic_action -> argument:Hax_engine__Ast.Make(FB).expr -> Hax_engine__Ast.Make(FB).expr
val expr_Quote : span:Ast.span -> typ:Hax_engine__Ast.Make(FB).ty -> Hax_engine__Ast.Make(FB).quote -> Hax_engine__Ast.Make(FB).expr
val pat_PWild : span:Ast.span -> typ:Hax_engine__Ast.Make(FB).ty -> Hax_engine__Ast.Make(FB).pat
val pat_PAscription : span:Ast.span -> typ:Hax_engine__Ast.Make(FB).ty -> inner_typ:Hax_engine__Ast.Make(FB).ty -> typ_span:Ast.span -> pat:Hax_engine__Ast.Make(FB).pat -> Hax_engine__Ast.Make(FB).pat
val pat_PConstruct : span:Ast.span -> typ:Hax_engine__Ast.Make(FB).ty -> name:Ast.global_ident -> args:Hax_engine__Ast.Make(FB).field_pat Prelude.list -> is_record:Prelude.bool -> is_struct:Prelude.bool -> Hax_engine__Ast.Make(FB).pat
val pat_POr : span:Ast.span -> typ:Hax_engine__Ast.Make(FB).ty -> subpats:Hax_engine__Ast.Make(FB).pat Prelude.list -> Hax_engine__Ast.Make(FB).pat
val pat_PArray : span:Ast.span -> typ:Hax_engine__Ast.Make(FB).ty -> args:Hax_engine__Ast.Make(FB).pat Prelude.list -> Hax_engine__Ast.Make(FB).pat
val pat_PDeref : span:Ast.span -> typ:Hax_engine__Ast.Make(FB).ty -> subpat:Hax_engine__Ast.Make(FB).pat -> witness:FB.reference -> Hax_engine__Ast.Make(FB).pat
val pat_PConstant : span:Ast.span -> typ:Hax_engine__Ast.Make(FB).ty -> lit:Ast.literal -> Hax_engine__Ast.Make(FB).pat
val item_Fn : span:Ast.span -> ident:Ast.concrete_ident -> attrs:Ast.attrs -> name:Ast.concrete_ident -> generics:Hax_engine__Ast.Make(FB).generics -> body:Hax_engine__Ast.Make(FB).expr -> params:Hax_engine__Ast.Make(FB).param Prelude.list -> safety:Hax_engine__Ast.Make(FB).safety_kind -> Hax_engine__Ast.Make(FB).item
val item_TyAlias : span:Ast.span -> ident:Ast.concrete_ident -> attrs:Ast.attrs -> name:Ast.concrete_ident -> generics:Hax_engine__Ast.Make(FB).generics -> ty:Hax_engine__Ast.Make(FB).ty -> Hax_engine__Ast.Make(FB).item
val item_Type : span:Ast.span -> ident:Ast.concrete_ident -> attrs:Ast.attrs -> name:Ast.concrete_ident -> generics:Hax_engine__Ast.Make(FB).generics -> variants:Hax_engine__Ast.Make(FB).variant Prelude.list -> is_struct:Prelude.bool -> Hax_engine__Ast.Make(FB).item
val item_IMacroInvokation : span:Ast.span -> ident:Ast.concrete_ident -> attrs:Ast.attrs -> macro:Ast.concrete_ident -> argument:Prelude.string -> inner_span:Ast.span -> witness:FB.macro -> Hax_engine__Ast.Make(FB).item
val item_Trait : span:Ast.span -> ident:Ast.concrete_ident -> attrs:Ast.attrs -> name:Ast.concrete_ident -> generics:Hax_engine__Ast.Make(FB).generics -> items:Hax_engine__Ast.Make(FB).trait_item Prelude.list -> safety:Hax_engine__Ast.Make(FB).safety_kind -> Hax_engine__Ast.Make(FB).item
val item_Impl : span:Ast.span -> ident:Ast.concrete_ident -> attrs:Ast.attrs -> generics:Hax_engine__Ast.Make(FB).generics -> self_ty:Hax_engine__Ast.Make(FB).ty -> of_trait: (Ast.global_ident * Hax_engine__Ast.Make(FB).generic_value Prelude.list) -> items:Hax_engine__Ast.Make(FB).impl_item Prelude.list -> parent_bounds: (Hax_engine__Ast.Make(FB).impl_expr * Hax_engine__Ast.Make(FB).impl_ident) Prelude.list -> safety:Hax_engine__Ast.Make(FB).safety_kind -> Hax_engine__Ast.Make(FB).item
val item_Alias : span:Ast.span -> ident:Ast.concrete_ident -> attrs:Ast.attrs -> name:Ast.concrete_ident -> item:Ast.concrete_ident -> Hax_engine__Ast.Make(FB).item
val item_Use : span:Ast.span -> ident:Ast.concrete_ident -> attrs:Ast.attrs -> path:Prelude.string Prelude.list -> is_external:Prelude.bool -> rename:Prelude.string Prelude.option -> Hax_engine__Ast.Make(FB).item
val item_Quote : span:Ast.span -> ident:Ast.concrete_ident -> attrs:Ast.attrs -> Hax_engine__Ast.Make(FB).quote -> Hax_engine__Ast.Make(FB).item
val item_HaxError : span:Ast.span -> ident:Ast.concrete_ident -> attrs:Ast.attrs -> Prelude.string -> Hax_engine__Ast.Make(FB).item
val item_NotImplementedYet : span:Ast.span -> ident:Ast.concrete_ident -> attrs:Ast.attrs -> Hax_engine__Ast.Make(FB).item
val guard_IfLet : span:Ast.span -> lhs:Hax_engine__Ast.Make(FB).pat -> rhs:Hax_engine__Ast.Make(FB).expr -> witness:FB.match_guard -> Hax_engine__Ast.Make(FB).guard
val trait_item_TIType : ti_span:Ast.span -> ti_generics:Hax_engine__Ast.Make(FB).generics -> ti_ident:Ast.concrete_ident -> ti_attrs:Ast.attrs -> Hax_engine__Ast.Make(FB).impl_ident Prelude.list -> Hax_engine__Ast.Make(FB).trait_item
val trait_item_TIFn : ti_span:Ast.span -> ti_generics:Hax_engine__Ast.Make(FB).generics -> ti_ident:Ast.concrete_ident -> ti_attrs:Ast.attrs -> Hax_engine__Ast.Make(FB).ty -> Hax_engine__Ast.Make(FB).trait_item
val trait_item_TIDefault : ti_span:Ast.span -> ti_generics:Hax_engine__Ast.Make(FB).generics -> ti_ident:Ast.concrete_ident -> ti_attrs:Ast.attrs -> params:Hax_engine__Ast.Make(FB).param Prelude.list -> body:Hax_engine__Ast.Make(FB).expr -> witness:FB.trait_item_default -> Hax_engine__Ast.Make(FB).trait_item
val impl_expr_Self : goal:Hax_engine__Ast.Make(FB).trait_goal -> Hax_engine__Ast.Make(FB).impl_expr
val impl_expr_Concrete : goal:Hax_engine__Ast.Make(FB).trait_goal -> Hax_engine__Ast.Make(FB).trait_goal -> Hax_engine__Ast.Make(FB).impl_expr
val impl_expr_LocalBound : goal:Hax_engine__Ast.Make(FB).trait_goal -> id:Prelude.string -> Hax_engine__Ast.Make(FB).impl_expr
val impl_expr_Parent : goal:Hax_engine__Ast.Make(FB).trait_goal -> impl:Hax_engine__Ast.Make(FB).impl_expr -> ident:Hax_engine__Ast.Make(FB).impl_ident -> Hax_engine__Ast.Make(FB).impl_expr
val impl_expr_Projection : goal:Hax_engine__Ast.Make(FB).trait_goal -> impl:Hax_engine__Ast.Make(FB).impl_expr -> item:Ast.concrete_ident -> ident:Hax_engine__Ast.Make(FB).impl_ident -> Hax_engine__Ast.Make(FB).impl_expr
val impl_expr_ImplApp : goal:Hax_engine__Ast.Make(FB).trait_goal -> impl:Hax_engine__Ast.Make(FB).impl_expr -> args:Hax_engine__Ast.Make(FB).impl_expr Prelude.list -> Hax_engine__Ast.Make(FB).impl_expr
val impl_expr_Dyn : goal:Hax_engine__Ast.Make(FB).trait_goal -> Hax_engine__Ast.Make(FB).impl_expr
val impl_expr_Builtin : goal:Hax_engine__Ast.Make(FB).trait_goal -> Hax_engine__Ast.Make(FB).trait_goal -> Hax_engine__Ast.Make(FB).impl_expr
module NoSpan : sig ... end
val ty_tuple : AST.ty Prelude.list -> AST.ty
val ty_tuple_or_id : AST.ty Prelude.list -> AST.ty
module Explicit : sig ... end
val ty_unit : AST.ty
val expr_unit : span:Ast.span -> Hax_engine__Ast.Make(FB).expr
val pat_PBinding : typ:Hax_engine__Ast.Make(FB).ty -> span:Ast.span -> mut:FB.mutable_variable Ast.mutability -> mode:Hax_engine__Ast.Make(FB).binding_mode -> var:Ast.local_ident -> subpat:(Hax_engine__Ast.Make(FB).pat * FB.as_pattern) Prelude.option -> Hax_engine__Ast.Make(FB).pat
val arm : span:Span.t -> AST.pat -> ?guard:AST.guard Prelude.option -> AST.expr -> AST.arm
module Make0 (Span : sig ... end) : sig ... end
module type S = sig ... end
module Make (Span : sig ... end) : sig ... end
val make : Ast.span -> (module S)