Module Hax_engine.Types

include sig ... end
val hax_version : string
module ParseError : sig ... end
type abi =
  1. | Rust
  2. | C of {
    1. unwind : bool;
    }
  3. | Other of string
and adt_expr = {
  1. base : fru_info option;
  2. fields : field_expr list;
  3. info : variant_informations;
  4. user_ty : canonical_for__user_type option;
}
and alias = {
  1. args : generic_arg list;
  2. def_id : def_id;
  3. kind : alias_kind;
}
and alias_kind =
  1. | Projection of {
    1. assoc_item : assoc_item;
    2. impl_expr : impl_expr;
    }
    (*

    The projection of a trait type: `<Ty as Trait<...>>::Type<...>`

    *)
  2. | Inherent
    (*

    An associated type in an inherent impl.

    *)
  3. | Opaque of {
    1. hidden_ty : node_for__ty_kind;
    }
    (*

    An `impl Trait` opaque type.

    *)
  4. | Weak
    (*

    A type alias that references opaque types. Likely to always be normalized away.

    *)
and align =
  1. | Align of {
    1. todo : string;
    }
and anon_const_for__decorated_for__expr_kind = {
  1. body : decorated_for__expr_kind;
  2. def_id : def_id;
  3. hir_id : hir_id;
}
and arm = {
  1. attributes : attribute list;
  2. body : decorated_for__expr_kind;
  3. guard : decorated_for__expr_kind option;
  4. lint_level : lint_level;
  5. pattern : decorated_for__pat_kind;
  6. scope : scope;
  7. span : span;
}
and ascription = {
  1. annotation : canonical_user_type_annotation;
  2. variance : variance;
}
and assoc_item = {
  1. container : assoc_item_container;
  2. def_id : def_id;
  3. fn_has_self_parameter : bool;
  4. has_value : bool;
    (*

    Whether this item has a value (e.g. this is `false` for trait methods without default implementations).

    *)
  5. kind : assoc_kind;
  6. name : string;
  7. opt_rpitit_info : impl_trait_in_trait_data option;
}
and assoc_item_container =
  1. | TraitContainer of {
    1. trait_ref : trait_ref;
    }
  2. | TraitImplContainer of {
    1. impl_generics : generic_arg list;
    2. impl_id : def_id;
    3. impl_required_impl_exprs : impl_expr list;
    4. implemented_trait_item : def_id;
    5. implemented_trait_ref : trait_ref;
    6. overrides_default : bool;
    }
  3. | InherentImplContainer of {
    1. impl_id : def_id;
    }
and assoc_kind =
  1. | Const
  2. | Fn
  3. | Type
and ast_pass =
  1. | StdImports
  2. | TestHarness
  3. | ProcMacroHarness
and attr_args =
  1. | Empty
  2. | Delimited of delim_args
  3. | Eq of span * attr_args_eq
and attr_args_eq =
  1. | Hir of meta_item_lit
  2. | Ast of string
and attr_item = {
  1. args : attr_args;
  2. path : string;
  3. tokens : string option;
}
and attr_kind =
  1. | Normal of normal_attr
  2. | DocComment of comment_kind * string
and attr_style =
  1. | Outer
  2. | Inner
and attribute = {
  1. id : string;
  2. kind : attr_kind;
  3. span : span;
  4. style : attr_style;
}
and backend_options_for__null = {
  1. backend : backend_for__null;
  2. cli_extension : empty_args_extension;
  3. debug_engine : debug_engine_mode option;
    (*

    Enable engine debugging: dumps the AST at each phase.

    The value of `<DEBUG_ENGINE>` can be either: nn - `interactive` (or `i`): enables debugging of the engine, and visualize interactively in a webapp how a crate was transformed by each phase, both in Rust-like syntax and browsing directly the internal AST. By default, the webapp is hosted on `http://localhost:8000`, the port can be override by setting the `HAX_DEBUGGER_PORT` environment variable. n - `<FILE>` or `file:<FILE>`: outputs the different AST as JSON to `<FILE>`. `<FILE>` can be either - or a path.

    *)
  4. dry_run : bool;
    (*

    Don't write anything on disk. Output everything as JSON to stdout instead.

    *)
  5. extract_type_aliases : bool;
    (*

    Extract type aliases. This is disabled by default, since extracted terms depends on expanded types rather than on type aliases. Turning this option on is discouraged: Rust type synonyms can ommit generic bounds, which are ususally necessary in the hax backends, leading to typechecking errors. For more details see https://github.com/hacspec/hax/issues/708.

    *)
  6. output_dir : string option;
  7. profile : bool;
    (*

    Enables profiling for the engine: for each phase of the engine, time and memory usage are recorded and reported.

    *)
  8. stats : bool;
    (*

    Prints statistics about how many items have been translated successfully by the engine.

    *)
  9. translation_options : translation_options;
  10. verbose : int;
    (*

    Verbose mode for the Hax engine. Set `-vv` for maximal verbosity.

    *)
}
and backend_for__null =
  1. | Fstar of f_star_options_for__null
    (*

    Use the F* backend

    *)
  2. | Coq
    (*

    Use the Coq backend

    *)
  3. | Ssprove
    (*

    Use the SSProve backend

    *)
  4. | Easycrypt
    (*

    Use the EasyCrypt backend (warning: work in progress!)

    *)
  5. | ProVerif of pro_verif_options
    (*

    Use the ProVerif backend (warning: work in progress!)

    *)
and bin_op =
  1. | Add
  2. | Sub
  3. | Mul
  4. | AddWithOverflow
  5. | SubWithOverflow
  6. | MulWithOverflow
  7. | Div
  8. | Rem
  9. | BitXor
  10. | BitAnd
  11. | BitOr
  12. | Shl
  13. | Shr
  14. | Eq
  15. | Lt
  16. | Le
  17. | Ne
  18. | Ge
  19. | Gt
  20. | Cmp
  21. | Offset
and binder_for__clause_kind = {
  1. bound_vars : bound_variable_kind list;
  2. value : clause_kind;
}
and binder_for__existential_predicate = {
  1. bound_vars : bound_variable_kind list;
  2. value : existential_predicate;
}
and binder_for__trait_predicate = {
  1. bound_vars : bound_variable_kind list;
  2. value : trait_predicate;
}
and binder_for__trait_ref = {
  1. bound_vars : bound_variable_kind list;
  2. value : trait_ref;
}
and binder_for__ty_fn_sig = {
  1. bound_vars : bound_variable_kind list;
  2. value : ty_fn_sig;
}
and binding_mode = {
  1. by_ref : by_ref;
  2. mutability : bool;
}
and block = {
  1. expr : decorated_for__expr_kind option;
  2. region_scope : scope;
  3. safety_mode : block_safety;
  4. span : span;
  5. stmts : stmt list;
  6. targeted_by_break : bool;
}
and block_safety =
  1. | Safe
  2. | BuiltinUnsafe
  3. | ExplicitUnsafe
and borrow_kind =
  1. | Shared
  2. | Fake of fake_borrow_kind
  3. | Mut of {
    1. kind : mut_borrow_kind;
    }
and bound_region = {
  1. kind : bound_region_kind;
  2. var : string;
}
and bound_region_kind =
  1. | BrAnon
  2. | BrEnv
  3. | BrNamed of def_id * string
and bound_ty = {
  1. kind : bound_ty_kind;
  2. var : string;
}
and bound_ty_kind =
  1. | Anon
  2. | Param of def_id * string
and bound_variable_kind =
  1. | Const
  2. | Ty of bound_ty_kind
  3. | Region of bound_region_kind
and by_ref =
  1. | No
  2. | Yes of bool
and canonical_ty_var_kind =
  1. | Int
  2. | Float
  3. | General of string
and canonical_user_type_annotation = {
  1. inferred_ty : node_for__ty_kind;
  2. span : span;
  3. user_ty : canonical_for__user_type;
}
and canonical_var_info =
  1. | Effect
  2. | Ty of canonical_ty_var_kind
  3. | PlaceholderTy of placeholder_for__bound_ty
  4. | Region of string
  5. | PlaceholderRegion of placeholder_for__bound_region
  6. | Const of string
  7. | PlaceholderConst of placeholder_for_uint
and canonical_for__user_type = {
  1. max_universe : string;
  2. value : user_type;
  3. variables : canonical_var_info list;
}
and clause = {
  1. id : string;
  2. kind : binder_for__clause_kind;
}
and clause_kind =
  1. | Trait of trait_predicate
  2. | RegionOutlives of outlives_predicate_for__region
  3. | TypeOutlives of outlives_predicate_for__node_for__ty_kind
  4. | Projection of projection_predicate
  5. | ConstArgHasType of decorated_for__constant_expr_kind * node_for__ty_kind
  6. | WellFormed of generic_arg
  7. | ConstEvaluatable of decorated_for__constant_expr_kind
and closure_args = {
  1. kind : closure_kind;
    (*

    The base kind of this closure. The kinds are ordered by inclusion: any `Fn` works as an `FnMut`, and any `FnMut` works as an `FnOnce`.

    *)
  2. parent_args : generic_arg list;
    (*

    The arguments to the parent (i.e., the item which defines the closure).

    *)
  3. parent_trait_refs : impl_expr list;
    (*

    The solved predicates from the parent (i.e., the item which defines the closure).

    *)
  4. tupled_sig : binder_for__ty_fn_sig;
    (*

    The signature of the closure as one input and one output, where the input arguments are tupled. This is relevant to implementing the `Fn*` traits.

    *)
  5. untupled_sig : binder_for__ty_fn_sig;
    (*

    The proper `fn(A, B, C) -> D` signature of the closure.

    *)
  6. upvar_tys : node_for__ty_kind list;
    (*

    The set of captured variables. Together they form the state of the closure.

    *)
}
and closure_kind =
  1. | Fn
  2. | FnMut
  3. | FnOnce
and command_for__null =
  1. | Backend of backend_options_for__null
    (*

    Translate to a backend. The translated modules will be written under the directory `<PKG>/proofs/<BACKEND>/extraction`, where `<PKG>` is the translated cargo package name and `<BACKEND>` the name of the backend.

    *)
  2. | JSON of {
    1. include_extra : bool;
    2. kind : export_body_kind list;
    3. output_file : path_or_dash;
    4. use_ids : bool;
    }
    (*

    Export directly as a JSON file

    *)
  3. | CliExtension of empty_subcommand_extension
and comment_kind =
  1. | Line
  2. | Block
and const_arg_kind_for__decorated_for__expr_kind =
  1. | Path of q_path
  2. | Anon of anon_const_for__decorated_for__expr_kind
and const_arg_for__decorated_for__expr_kind = {
  1. hir_id : hir_id;
  2. is_desugared_from_effects : bool;
  3. kind : const_arg_kind_for__decorated_for__expr_kind;
}
and constant_expr_kind =
  1. | Literal of constant_literal
  2. | Adt of {
    1. fields : constant_field_expr list;
    2. info : variant_informations;
    }
  3. | Array of {
    1. fields : decorated_for__constant_expr_kind list;
    }
  4. | Tuple of {
    1. fields : decorated_for__constant_expr_kind list;
    }
  5. | GlobalName of {
    1. generics : generic_arg list;
    2. id : def_id;
    3. trait_refs : impl_expr list;
    4. variant_information : variant_informations option;
    }
    (*

    A top-level constant or a constant appearing in an impl block.

    Remark: constants *can* have generic parameters. Example: ```text struct V<const N: usize, T> x: [T; N],

    impl<const N: usize, T> V<N, T> const LEN: usize = N; // This has generics <N, T> ```

    *)
  6. | TraitConst of {
    1. impl_expr : impl_expr;
    2. name : string;
    }
    (*

    A trait constant

    Ex.: ```text impl Foo for Bar const C : usize = 32; // <- ```

    *)
  7. | Borrow of decorated_for__constant_expr_kind
    (*

    A shared reference to a static variable.

    *)
  8. | RawBorrow of {
    1. arg : decorated_for__constant_expr_kind;
    2. mutability : bool;
    }
    (*

    A raw borrow (`*const` or `*mut`).

    *)
  9. | Cast of {
    1. source : decorated_for__constant_expr_kind;
    }
    (*

    A cast `<source> as <type>`, `<type>` is stored as the type of the current constant expression. Currently, this is only used to represent `lit as *mut T` or `lit as *const T`, where `lit` is a `usize` literal.

    *)
  10. | ConstRef of {
    1. id : param_const;
    }
  11. | FnPtr of {
    1. def_id : def_id;
    2. generics : generic_arg list;
    3. generics_impls : impl_expr list;
    4. method_impl : impl_expr option;
    }
  12. | Todo of string
and constant_field_expr = {
  1. field : def_id;
  2. value : decorated_for__constant_expr_kind;
}
and constant_int =
  1. | Int of string * int_ty
  2. | Uint of string * uint_ty
and constant_literal =
  1. | Bool of bool
  2. | Char of char
  3. | Float of string * float_ty
  4. | Int of constant_int
  5. | Str of string * str_style
  6. | ByteStr of int list * str_style
and constness =
  1. | Const
  2. | NotConst
and ctor_kind =
  1. | Fn
  2. | Const
and ctor_of =
  1. | Struct
  2. | Variant
and debug_engine_mode =
  1. | Interactive
  2. | File of path_or_dash
and decorated_for__constant_expr_kind = {
  1. attributes : attribute list;
  2. contents : constant_expr_kind;
  3. hir_id : (string * string) option;
  4. span : span;
  5. ty : node_for__ty_kind;
}
and decorated_for__expr_kind = {
  1. attributes : attribute list;
  2. contents : expr_kind;
  3. hir_id : (string * string) option;
  4. span : span;
  5. ty : node_for__ty_kind;
}
and decorated_for__pat_kind = {
  1. attributes : attribute list;
  2. contents : pat_kind;
  3. hir_id : (string * string) option;
  4. span : span;
  5. ty : node_for__ty_kind;
}
and def_id = {
  1. contents : node_for__def_id_contents;
}
and def_id_contents = {
  1. index : Base.Int64.t * Base.Int64.t;
    (*

    Rustc's `CrateNum` and `DefIndex` raw indexes. This can be useful if one needs to convert a `DefId` into a `rustc_hir::def_id::DefId`; there is a `From` instance for that purpose.

    **Warning: this `index` field might not be safe to use**. They are valid only for one Rustc sesssion. Please do not rely on those indexes unless you cannot do otherwise.

    *)
  2. is_local : bool;
  3. kind : def_kind;
    (*

    The kind of definition this `DefId` points to.

    *)
  4. krate : string;
  5. parent : def_id option;
  6. path : disambiguated_def_path_item list;
}
and def_kind =
  1. | Mod
  2. | Struct
  3. | Union
  4. | Enum
  5. | Variant
  6. | Trait
  7. | TyAlias
  8. | ForeignTy
  9. | TraitAlias
  10. | AssocTy
  11. | TyParam
  12. | Fn
  13. | Const
  14. | ConstParam
  15. | AssocFn
  16. | AssocConst
  17. | ExternCrate
  18. | Use
  19. | ForeignMod
  20. | AnonConst
  21. | InlineConst
  22. | OpaqueTy
  23. | Field
  24. | LifetimeParam
  25. | GlobalAsm
  26. | Closure
  27. | SyntheticCoroutineBody
  28. | Static of {
    1. mutability : bool;
    2. nested : bool;
    3. safety : safety;
    }
  29. | Ctor of ctor_of * ctor_kind
  30. | Macro of macro_kind
  31. | Impl of {
    1. of_trait : bool;
    }
and def_path_item =
  1. | Impl
  2. | ForeignMod
  3. | Use
  4. | GlobalAsm
  5. | Closure
  6. | Ctor
  7. | AnonConst
  8. | OpaqueTy
  9. | AnonAdt
  10. | CrateRoot of {
    1. name : string;
    }
  11. | TypeNs of string
  12. | ValueNs of string
  13. | MacroNs of string
  14. | LifetimeNs of string
and defaultness =
  1. | Final
  2. | Default of {
    1. has_value : bool;
    }
and delim_args = {
  1. delim : delimiter;
  2. dspan : delim_span;
  3. tokens : string;
}
and delim_span =
  1. | DelimSpan of {
    1. todo : string;
    }
and delimiter =
  1. | Parenthesis
  2. | Brace
  3. | Bracket
  4. | Invisible
and deps_kind =
  1. | Transitive
  2. | Shallow
  3. | None'
and desugaring_kind =
  1. | CondTemporary
  2. | QuestionMark
  3. | TryBlock
  4. | YeetExpr
  5. | OpaqueTy
  6. | Async
  7. | Await
  8. | ForLoop
  9. | WhileLoop
  10. | BoundModifier
and diagnostics = {
  1. context : string;
  2. kind : kind;
  3. owner_id : def_id option;
  4. span : span list;
}
and disambiguated_def_path_item = {
  1. data : def_path_item;
  2. disambiguator : Base.Int64.t;
}
and discriminant_definition =
  1. | Explicit of def_id
  2. | Relative of Base.Int64.t
and dyn_kind =
  1. | Dyn
  2. | DynStar
and early_param_region = {
  1. index : Base.Int64.t;
  2. name : string;
}
and edition =
  1. | Edition2015
  2. | Edition2018
  3. | Edition2021
  4. | Edition2024
and empty_args_extension =
  1. | EmptyStructempty_args_extension
and empty_subcommand_extension = |
and engine_options = {
  1. backend : backend_options_for__null;
  2. hax_version : string;
  3. impl_infos : (def_id * impl_infos) list;
  4. input : item_for__decorated_for__expr_kind list;
}
and error_guaranteed =
  1. | ErrorGuaranteed of {
    1. todo : string;
    }
and existential_predicate =
  1. | Trait of existential_trait_ref
    (*

    E.g. `From<u64>`. Note that this isn't `T: From<u64>` with a given `T`, this is just `From<u64>`. Could be written `?: From<u64>`.

    *)
  2. | Projection of existential_projection
    (*

    E.g. `Iterator::Item = u64`. Could be written `<? as Iterator>::Item = u64`.

    *)
  3. | AutoTrait of def_id
    (*

    E.g. `Send`.

    *)
and existential_projection = {
  1. args : generic_arg list;
  2. def_id : def_id;
  3. term : term;
}
and existential_trait_ref = {
  1. args : generic_arg list;
  2. def_id : def_id;
}
and expn_data = {
  1. allow_internal_unstable : string list option;
  2. call_site : span;
  3. def_site : span;
  4. edition : edition;
  5. kind : expn_kind;
  6. local_inner_macros : bool;
  7. macro_def_id : def_id option;
  8. parent_module : def_id option;
}
and expn_kind =
  1. | Root
  2. | Macro of macro_kind * string
  3. | AstPass of ast_pass
  4. | Desugaring of desugaring_kind
and export_body_kind =
  1. | Thir
  2. | MirBuilt
and expr_kind =
  1. | Box of {
    1. value : decorated_for__expr_kind;
    }
  2. | MacroInvokation of macro_invokation
  3. | If of {
    1. cond : decorated_for__expr_kind;
    2. else_opt : decorated_for__expr_kind option;
    3. if_then_scope : scope;
    4. then' : decorated_for__expr_kind;
    }
    (*

    Resugared macros calls. This is deprecated: see <https://github.com/hacspec/hax/issues/145>.

    *)
  4. | Call of {
    1. args : decorated_for__expr_kind list;
    2. bounds_impls : impl_expr list;
    3. fn_span : span;
    4. from_hir_call : bool;
    5. fun' : decorated_for__expr_kind;
    6. generic_args : generic_arg list;
    7. trait : (impl_expr * generic_arg list) option;
    8. ty : node_for__ty_kind;
    }
    (*

    A call to a function or a method.

    Example: `f(0i8)`, where `f` has signature `fn f<T: Clone>(t: T) -> ()`.

    *)
  5. | Deref of {
    1. arg : decorated_for__expr_kind;
    }
  6. | Binary of {
    1. lhs : decorated_for__expr_kind;
    2. op : bin_op;
    3. rhs : decorated_for__expr_kind;
    }
  7. | LogicalOp of {
    1. lhs : decorated_for__expr_kind;
    2. op : logical_op;
    3. rhs : decorated_for__expr_kind;
    }
  8. | Unary of {
    1. arg : decorated_for__expr_kind;
    2. op : un_op;
    }
  9. | Cast of {
    1. source : decorated_for__expr_kind;
    }
  10. | Use of {
    1. source : decorated_for__expr_kind;
    }
  11. | NeverToAny of {
    1. source : decorated_for__expr_kind;
    }
  12. | PointerCoercion of {
    1. cast : pointer_coercion;
    2. source : decorated_for__expr_kind;
    }
  13. | Loop of {
    1. body : decorated_for__expr_kind;
    }
  14. | Match of {
    1. arms : arm list;
    2. scrutinee : decorated_for__expr_kind;
    }
  15. | Let of {
    1. expr : decorated_for__expr_kind;
    2. pat : decorated_for__pat_kind;
    }
  16. | Block of {
    1. expr : decorated_for__expr_kind option;
    2. region_scope : scope;
    3. safety_mode : block_safety;
    4. span : span;
    5. stmts : stmt list;
    6. targeted_by_break : bool;
    }
  17. | Assign of {
    1. lhs : decorated_for__expr_kind;
    2. rhs : decorated_for__expr_kind;
    }
  18. | AssignOp of {
    1. lhs : decorated_for__expr_kind;
    2. op : bin_op;
    3. rhs : decorated_for__expr_kind;
    }
  19. | Field of {
    1. field : def_id;
    2. lhs : decorated_for__expr_kind;
    }
  20. | TupleField of {
    1. field : string;
    2. lhs : decorated_for__expr_kind;
    }
  21. | Index of {
    1. index : decorated_for__expr_kind;
    2. lhs : decorated_for__expr_kind;
    }
  22. | VarRef of {
    1. id : local_ident;
    }
  23. | ConstRef of {
    1. id : param_const;
    }
  24. | GlobalName of {
    1. constructor : variant_informations option;
    2. id : def_id;
    }
  25. | UpvarRef of {
    1. closure_def_id : def_id;
    2. var_hir_id : local_ident;
    }
  26. | Borrow of {
    1. arg : decorated_for__expr_kind;
    2. borrow_kind : borrow_kind;
    }
  27. | RawBorrow of {
    1. arg : decorated_for__expr_kind;
    2. mutability : bool;
    }
  28. | Break of {
    1. label : scope;
    2. value : decorated_for__expr_kind option;
    }
  29. | Continue of {
    1. label : scope;
    }
  30. | Return of {
    1. value : decorated_for__expr_kind option;
    }
  31. | ConstBlock of {
    1. args : generic_arg list;
    2. did : def_id;
    }
  32. | Repeat of {
    1. count : decorated_for__constant_expr_kind;
    2. value : decorated_for__expr_kind;
    }
  33. | Array of {
    1. fields : decorated_for__expr_kind list;
    }
  34. | Tuple of {
    1. fields : decorated_for__expr_kind list;
    }
  35. | Adt of adt_expr
  36. | PlaceTypeAscription of {
    1. source : decorated_for__expr_kind;
    2. user_ty : canonical_for__user_type option;
    }
  37. | ValueTypeAscription of {
    1. source : decorated_for__expr_kind;
    2. user_ty : canonical_for__user_type option;
    }
  38. | Closure of {
    1. body : decorated_for__expr_kind;
    2. movability : movability option;
    3. params : param list;
    4. upvars : decorated_for__expr_kind list;
    }
  39. | Literal of {
    1. lit : spanned_for__lit_kind;
    2. neg : bool;
    }
  40. | ZstLiteral of {
    1. user_ty : canonical_for__user_type option;
    }
  41. | NamedConst of {
    1. args : generic_arg list;
    2. def_id : def_id;
    3. impl : impl_expr option;
    4. user_ty : canonical_for__user_type option;
    }
  42. | ConstParam of {
    1. def_id : def_id;
    2. param : param_const;
    }
  43. | StaticRef of {
    1. alloc_id : string;
    2. def_id : def_id;
    3. ty : node_for__ty_kind;
    }
  44. | Yield of {
    1. value : decorated_for__expr_kind;
    }
  45. | Todo of string
and extensible_options_for__null = {
  1. cargo_flags : string list;
    (*

    Semi-colon terminated list of arguments to pass to the `cargo build` invocation. For example, to apply this program on a package `foo`, use `-C -p foo ;`. (make sure to escape `;` correctly in your shell)

    *)
  2. command : command_for__null;
  3. deps : bool;
    (*

    Apply the command to every local package of the dependency closure. By default, the command is only applied to the primary packages (i.e. the package(s) of the current directory, or the ones selected with cargo options like `-C -p <PKG> ;`).

    *)
  4. extension : empty_args_extension;
  5. force_cargo_build : force_cargo_build;
    (*

    `cargo` caching is enable by default, this flag disables it.

    *)
  6. inline_macro_calls : namespace list;
    (*

    Replace the expansion of each macro matching PATTERN by their invocation. PATTERN denotes a rust path (i.e. `A::B::c`) in which glob patterns are allowed. The glob pattern * matches any name, the glob pattern ** matches zero, one or more names. For instance, `A::B::C::D::X` and `A::E::F::D::Y` matches `A::**::D::*`.

    *)
  7. message_format : message_format;
    (*

    Diagnostic format. Sets `cargo`'s `--message-format` as well, if not present.

    *)
  8. no_custom_target_directory : bool;
    (*

    By default, hax uses `$CARGO_TARGET_DIR/hax` as target folder, to avoid recompilation when working both with `cargo hax` and `cargo build` (or, e.g. `rust-analyzer`). This option disables this behavior.

    *)
}
and f_star_options_for__null = {
  1. cli_extension : empty_args_extension;
  2. fuel : Base.Int64.t;
    (*

    Number of unrolling of recursive functions to try

    *)
  3. ifuel : Base.Int64.t;
    (*

    Number of unrolling of inductive datatypes to try

    *)
  4. interfaces : inclusion_clause list;
    (*

    Modules for which Hax should extract interfaces (`*.fsti` files) in supplement to implementations (`*.fst` files). By default we extract no interface, only implementations. If a item is signature only (see the `+:` prefix of the `--include_namespaces` flag of the `into` subcommand), then its namespace is extracted with an interface. This flag expects a space-separated list of inclusion clauses. An inclusion clause is a Rust path prefixed with `+`, `+!` or `-`. `-` means implementation only, `+!` means interface only and `+` means implementation and interface. Rust path chunks can be either a concrete string, or a glob (just like bash globs, but with Rust paths).

    *)
  5. line_width : int;
  6. z3rlimit : Base.Int64.t;
    (*

    Set the Z3 per-query resource limit

    *)
}
and fake_borrow_kind =
  1. | Deep
    (*

    A shared (deep) borrow. Data must be immutable and is aliasable.

    *)
  2. | Shallow
    (*

    The immediately borrowed place must be immutable, but projections from it don't need to be. This is used to prevent match guards from replacing the scrutinee. For example, a fake borrow of `a.b` doesn't conflict with a mutable borrow of `a.b.c`.

    *)
and field_expr = {
  1. field : def_id;
  2. value : decorated_for__expr_kind;
}
and field_pat = {
  1. field : def_id;
  2. pattern : decorated_for__pat_kind;
}
and file = {
  1. contents : string;
  2. path : string;
  3. sourcemap : source_map option;
}
and file_name =
  1. | Real of real_file_name
  2. | QuoteExpansion of string
  3. | Anon of string
  4. | MacroExpansion of string
  5. | ProcMacroSourceCode of string
  6. | CliCrateAttr of string
  7. | Custom of string
  8. | DocTest of string
  9. | InlineAsm of string
and float_ty =
  1. | F16
  2. | F32
  3. | F64
  4. | F128
and fn_decl = {
  1. c_variadic : bool;
  2. implicit_self : implicit_self_kind;
  3. inputs : node_for__ty_kind list;
  4. lifetime_elision_allowed : bool;
  5. output : fn_ret_ty;
}
and fn_def_for__decorated_for__expr_kind = {
  1. body : decorated_for__expr_kind;
  2. header : fn_header;
  3. params : param list;
  4. ret : node_for__ty_kind;
  5. sig_span : span;
}
and fn_header = {
  1. abi : abi;
  2. asyncness : is_async;
  3. constness : constness;
  4. safety : safety;
}
and fn_ret_ty =
  1. | DefaultReturn of span
  2. | Return of node_for__ty_kind
and fn_sig = {
  1. decl : fn_decl;
  2. header : fn_header;
  3. span : span;
}
and force_cargo_build = {
  1. data : string;
}
and foreign_item_kind_for__decorated_for__expr_kind =
  1. | Type
  2. | Fn of fn_sig * (string * span) list * generics_for__decorated_for__expr_kind
  3. | Static of node_for__ty_kind * bool * safety
and foreign_item_for__decorated_for__expr_kind = {
  1. ident : string * span;
  2. kind : foreign_item_kind_for__decorated_for__expr_kind;
  3. owner_id : def_id;
  4. span : span;
  5. vis_span : span;
}
and from_engine =
  1. | Exit
  2. | Ping
  3. | Diagnostic of diagnostics
  4. | File of file
  5. | PrettyPrintDiagnostic of diagnostics
  6. | PrettyPrintRust of string
  7. | DebugString of string
  8. | ProfilingData of profiling_data
  9. | ItemProcessed of def_id list
    (*

    Declares a list of items that will be processed by the engine

    *)
and fru_info = {
  1. base : decorated_for__expr_kind;
    (*

    The base, e.g. `Foo x: 1, .. base`

    *)
  2. field_types : node_for__ty_kind list;
}
and generic_arg =
  1. | Lifetime of region
  2. | Type of node_for__ty_kind
  3. | Const of decorated_for__constant_expr_kind
and generic_param_def = {
  1. def_id : def_id;
  2. index : Base.Int64.t;
  3. kind : generic_param_def_kind;
  4. name : string;
  5. pure_wrt_drop : bool;
}
and generic_param_def_kind =
  1. | Lifetime
  2. | Type of {
    1. has_default : bool;
    2. synthetic : bool;
    }
  3. | Const of {
    1. has_default : bool;
    2. is_host_effect : bool;
    3. ty : node_for__ty_kind;
    }
and generic_param_kind_for__decorated_for__expr_kind =
  1. | Lifetime of {
    1. kind : lifetime_param_kind;
    }
  2. | Type of {
    1. default : unit;
    2. synthetic : bool;
    }
  3. | Const of {
    1. default : const_arg_for__decorated_for__expr_kind option;
    2. ty : node_for__ty_kind;
    }
and generic_param_for__decorated_for__expr_kind = {
  1. attributes : attribute list;
  2. colon_span : span option;
  3. def_id : def_id;
  4. hir_id : hir_id;
  5. kind : generic_param_kind_for__decorated_for__expr_kind;
  6. name : param_name;
  7. pure_wrt_drop : bool;
  8. span : span;
}
and generics_for__decorated_for__expr_kind = {
  1. bounds : clause list;
  2. has_where_clause_predicates : bool;
  3. params : generic_param_for__decorated_for__expr_kind list;
  4. span : span;
  5. where_clause_span : span;
}
and glob =
  1. | One
  2. | Many
and ha_assoc_role =
  1. | Requires
  2. | Ensures
  3. | Decreases
  4. | Refine
  5. | ProcessRead
  6. | ProcessWrite
  7. | ProcessInit
  8. | ProtocolMessages
  9. | ItemQuote
    (*

    A quoted piece of backend code to place after or before the extraction of the marked item

    *)
and ha_item_quote = {
  1. fstar_options : ha_item_quote_f_star_opts option;
  2. position : ha_item_quote_position;
}
and ha_item_quote_f_star_opts = {
  1. impl : bool;
    (*

    Shall we output this in F* implementations (`*.fst` files)?

    *)
  2. intf : bool;
    (*

    Shall we output this in F* interfaces (`*.fsti` files)?

    *)
}
and ha_item_quote_position =
  1. | Before
    (*

    Should appear just before the item in the extraction

    *)
  2. | After
    (*

    Should appear right after the item in the extraction

    *)
and ha_item_status =
  1. | Included of {
    1. late_skip : bool;
    }
    (*

    Include this item in the translation

    *)
  2. | Excluded of {
    1. modeled_by : string option;
    }
    (*

    Exclude this item from the translation, optionally replacing it in the backends

    *)
and ha_payload =
  1. | NewtypeAsRefinement
  2. | Language
  3. | ProcessRead
  4. | ProcessWrite
  5. | ProcessInit
  6. | ProtocolMessages
  7. | PVConstructor
  8. | PVHandwritten
  9. | TraitMethodNoPrePost
  10. | ItemStatus of ha_item_status
  11. | AssociatedItem of {
    1. item : ha_uid;
    2. role : ha_assoc_role;
    }
    (*

    Mark an item as associated with another one

    *)
  12. | Uid of ha_uid
  13. | ItemQuote of ha_item_quote
    (*

    Decides of the position of a item quote

    *)
  14. | NeverErased
    (*

    Mark an item so that hax never drop its body (this is useful for pre- and post- conditions of a function we dropped the body of: pre and post are part of type signature)

    *)
  15. | Lemma
    (*

    Mark an item as a lemma statement to prove in the backend

    *)
  16. | Erased
    (*

    Make an item opaque

    *)
and ha_uid = {
  1. uid : string;
    (*

    Currently, this is a UUID.

    *)
}
and hir_field_def = {
  1. attributes : attribute list;
  2. def_id : def_id;
  3. hir_id : hir_id;
  4. ident : string * span;
  5. span : span;
  6. ty : node_for__ty_kind;
  7. vis_span : span;
}
and hir_generic_args =
  1. | GenericArgs of {
    1. todo : string;
    }
and hir_id = {
  1. local_id : string;
  2. owner : def_id;
}
and impl_expr = {
  1. args : impl_expr list;
    (*

    A list of `ImplExpr`s required to fully specify the trait references in `impl`.

    *)
  2. impl : impl_expr_atom;
    (*

    The kind of implemention of the root of the tree.

    *)
  3. trait : binder_for__trait_ref;
    (*

    The trait this is an impl for.

    *)
}
and impl_expr_atom =
  1. | Concrete of {
    1. generics : generic_arg list;
    2. id : def_id;
    }
    (*

    A concrete `impl Trait for Type {

    }

    ` item.

    *)
  2. | LocalBound of {
    1. index : string;
    2. path : impl_expr_path_chunk list;
    3. predicate_id : string;
    4. trait : binder_for__trait_ref;
    }
    (*

    A context-bound clause like `where T: Trait`.

    *)
  3. | SelfImpl of {
    1. path : impl_expr_path_chunk list;
    2. trait : binder_for__trait_ref;
    }
    (*

    The implicit `Self: Trait` clause present inside a `trait Trait {

    }

    ` item.

    *)
  4. | Dyn
    (*

    `dyn Trait` is a wrapped value with a virtual table for trait `Trait`. In other words, a value `dyn Trait` is a dependent triple that gathers a type τ, a value of type τ and an instance of type `Trait`. `dyn Trait` implements `Trait` using a built-in implementation; this refers to that built-in implementation.

    *)
  5. | Builtin of {
    1. trait : binder_for__trait_ref;
    }
    (*

    A built-in trait whose implementation is computed by the compiler, such as `Sync`.

    *)
  6. | Error of string
    (*

    An error happened while resolving traits.

    *)
and impl_expr_path_chunk =
  1. | AssocItem of {
    1. generic_args : generic_arg list;
    2. impl_exprs : impl_expr list;
    3. index : string;
    4. item : assoc_item;
    5. predicate : binder_for__trait_predicate;
    6. predicate_id : string;
    }
  2. | Parent of {
    1. index : string;
    2. predicate : binder_for__trait_predicate;
    3. predicate_id : string;
    }
and impl_infos = {
  1. clauses : (clause * span) list;
  2. generics : ty_generics;
  3. trait_ref : trait_ref option;
  4. typ : node_for__ty_kind;
}
and impl_item_kind_for__decorated_for__expr_kind =
  1. | Const of node_for__ty_kind * decorated_for__expr_kind
  2. | Fn of fn_def_for__decorated_for__expr_kind
  3. | Type of {
    1. parent_bounds : (clause * impl_expr * span) list;
    2. ty : node_for__ty_kind;
    }
    (*

    An associated type with its parent bounds inlined.

    *)
and impl_item_for__decorated_for__expr_kind = {
  1. attributes : item_attributes;
    (*

    the attributes on this impl item

    *)
  2. defaultness : defaultness;
  3. generics : generics_for__decorated_for__expr_kind;
  4. ident : string * span;
  5. kind : impl_item_kind_for__decorated_for__expr_kind;
  6. owner_id : def_id;
  7. span : span;
  8. vis_span : span;
}
and impl_polarity =
  1. | Positive
  2. | Negative of span
and impl_trait_in_trait_data =
  1. | Trait of {
    1. fn_def_id : def_id;
    2. opaque_def_id : def_id;
    }
  2. | Impl of {
    1. fn_def_id : def_id;
    }
and impl_for__decorated_for__expr_kind = {
  1. defaultness : defaultness;
  2. defaultness_span : span option;
  3. generics : generics_for__decorated_for__expr_kind;
  4. items : impl_item_for__decorated_for__expr_kind list;
  5. of_trait : trait_ref option;
  6. parent_bounds : (clause * impl_expr * span) list;
    (*

    The clauses and impl expressions corresponding to the impl's trait (if not inherent) super bounds (if any).

    *)
  7. polarity : impl_polarity;
  8. safety : safety;
  9. self_ty : node_for__ty_kind;
}
and implicit_self_kind =
  1. | Imm
  2. | Mut
  3. | RefImm
  4. | RefMut
  5. | None'
and inclusion_clause = {
  1. kind : inclusion_kind;
  2. namespace : namespace;
}
and inclusion_kind =
  1. | SignatureOnly
  2. | Excluded
  3. | Included of deps_kind
    (*

    `+query` include the items selected by `query`

    *)
and infer_ty =
  1. | TyVar
  2. | IntVar
  3. | FloatVar
  4. | FreshTy of Base.Int64.t
  5. | FreshIntTy of Base.Int64.t
  6. | FreshFloatTy of Base.Int64.t
and inline_asm =
  1. | InlineAsm of {
    1. todo : string;
    }
and int_ty =
  1. | Isize
  2. | I8
  3. | I16
  4. | I32
  5. | I64
  6. | I128
and integer_type =
  1. | IntegerType of {
    1. todo : string;
    }
and is_async =
  1. | NotAsync
  2. | Async of span
and is_auto =
  1. | Yes
  2. | No
and item_attributes = {
  1. attributes : attribute list;
  2. parent_attributes : attribute list;
}
and item_for__decorated_for__expr_kind = {
  1. attributes : item_attributes;
  2. def_id : def_id option;
  3. expn_backtrace : expn_data list;
  4. kind : item_kind_for__decorated_for__expr_kind;
  5. owner_id : def_id;
  6. span : span;
  7. vis_span : span;
}
and kind =
  1. | ExpectedMutRef
  2. | UnsafeBlock
    (*

    Unsafe code is not supported

    *)
  3. | Unimplemented of {
    1. details : string option;
    2. issue_id : Base.Int64.t option;
    }
    (*

    A feature is not currently implemented, but

    *)
  4. | AssertionFailure of {
    1. details : string;
    }
    (*

    Unknown error

    *)
  5. | UnallowedMutRef
    (*

    Unallowed mutable reference

    *)
  6. | UnsupportedMacro of {
    1. id : string;
    }
    (*

    Unsupported macro invokation

    *)
  7. | ErrorParsingMacroInvocation of {
    1. details : string;
    2. macro_id : string;
    }
    (*

    Error parsing a macro invocation to a macro treated specifcially by a backend

    *)
  8. | ClosureMutatesParentBindings of {
    1. bindings : string list;
    }
    (*

    Mutation of bindings living outside a closure scope are not supported

    *)
  9. | ArbitraryLHS
    (*

    Assignation of an arbitrary left-hand side is not supported. `lhs = e` is fine only when `lhs` is a combination of local identifiers, field accessors and index accessors.

    *)
  10. | ExplicitRejection of {
    1. reason : string;
    }
    (*

    A phase explicitely rejected this chunk of code

    *)
  11. | UnsupportedTupleSize of {
    1. reason : string;
    2. tuple_size : Base.Int64.t;
    }
    (*

    A backend doesn't support a tuple size

    *)
  12. | NonTrivialAndMutFnInput
    (*

    &mut inputs should be trivial patterns

    *)
  13. | AttributeRejected of {
    1. reason : string;
    }
    (*

    An hax attribute (from `hax-lib-macros`) was rejected

    *)
  14. | FStarParseError of {
    1. details : string;
    2. fstar_snippet : string;
    }
    (*

    A snippet of F* code could not be parsed

    *)
and late_param_region = {
  1. bound_region : bound_region_kind;
  2. scope : def_id;
}
and lifetime_param_kind =
  1. | Explicit
  2. | Error
  3. | Elided of missing_lifetime_kind
and lint_level =
  1. | Inherited
  2. | Explicit of hir_id
and lit_float_type =
  1. | Unsuffixed
  2. | Suffixed of float_ty
and lit_int_type =
  1. | Unsuffixed
  2. | Signed of int_ty
  3. | Unsigned of uint_ty
and lit_kind =
  1. | Str of string * str_style
  2. | ByteStr of int list * str_style
  3. | CStr of int list * str_style
  4. | Byte of int
  5. | Char of char
  6. | Int of string * lit_int_type
  7. | Float of string * lit_float_type
  8. | Bool of bool
  9. | Err of error_guaranteed
and loc = {
  1. col : string;
  2. line : string;
}
and local_ident = {
  1. id : hir_id;
  2. name : string;
}
and logical_op =
  1. | And
  2. | Or
and macro_def = {
  1. body : delim_args;
  2. macro_rules : bool;
}
and macro_invokation = {
  1. argument : string;
  2. macro_ident : def_id;
  3. span : span;
}
and macro_kind =
  1. | Bang
  2. | Attr
  3. | Derive
and message_format =
  1. | Human
  2. | Json
and meta_item_lit = {
  1. kind : lit_kind;
  2. span : span;
  3. suffix : string option;
  4. symbol : string;
}
and missing_lifetime_kind =
  1. | MissingLifetimeKind of {
    1. todo : string;
    }
and movability =
  1. | Static
  2. | Movable
and mut_borrow_kind =
  1. | Default
  2. | TwoPhaseBorrow
  3. | ClosureCapture
and namespace = {
  1. chunks : namespace_chunk list;
}
and namespace_chunk =
  1. | Glob of glob
  2. | Exact of string
and node_for_def_id_contents_generated = {
  1. id : Base.Int64.t;
  2. value : def_id_contents;
}
and node_for_ty_kind_generated = {
  1. id : Base.Int64.t;
  2. value : ty_kind;
}
and non_macro_attr_kind =
  1. | Tool
  2. | DeriveHelper
  3. | DeriveHelperCompat
  4. | Builtin of string
and normal_attr = {
  1. item : attr_item;
  2. tokens : string option;
}
and outlives_predicate_for__node_for__ty_kind = {
  1. lhs : node_for__ty_kind;
  2. rhs : region;
}
and outlives_predicate_for__region = {
  1. lhs : region;
  2. rhs : region;
}
and output = {
  1. debug_json : string option;
  2. diagnostics : diagnostics list;
  3. files : file list;
}
and param = {
  1. attributes : attribute list;
    (*

    attributes on this parameter

    *)
  2. hir_id : hir_id option;
  3. pat : decorated_for__pat_kind option;
  4. self_kind : implicit_self_kind option;
  5. ty : node_for__ty_kind;
  6. ty_span : span option;
}
and param_const = {
  1. index : Base.Int64.t;
  2. name : string;
}
and param_name =
  1. | Fresh
  2. | Error
  3. | Plain of local_ident
and param_ty = {
  1. index : Base.Int64.t;
  2. name : string;
}
and pat_kind =
  1. | Wild
  2. | Never
  3. | AscribeUserType of {
    1. ascription : ascription;
    2. subpattern : decorated_for__pat_kind;
    }
  4. | Binding of {
    1. is_primary : bool;
    2. mode : binding_mode;
    3. subpattern : decorated_for__pat_kind option;
    4. ty : node_for__ty_kind;
    5. var : local_ident;
    }
  5. | Variant of {
    1. args : generic_arg list;
    2. info : variant_informations;
    3. subpatterns : field_pat list;
    }
  6. | Tuple of {
    1. subpatterns : decorated_for__pat_kind list;
    }
  7. | Deref of {
    1. subpattern : decorated_for__pat_kind;
    }
  8. | DerefPattern of {
    1. subpattern : decorated_for__pat_kind;
    }
  9. | Constant of {
    1. value : decorated_for__constant_expr_kind;
    }
  10. | InlineConstant of {
    1. def : def_id;
    2. subpattern : decorated_for__pat_kind;
    }
  11. | Range of pat_range
  12. | Slice of {
    1. prefix : decorated_for__pat_kind list;
    2. slice : decorated_for__pat_kind option;
    3. suffix : decorated_for__pat_kind list;
    }
  13. | Array of {
    1. prefix : decorated_for__pat_kind list;
    2. slice : decorated_for__pat_kind option;
    3. suffix : decorated_for__pat_kind list;
    }
  14. | Or of {
    1. pats : decorated_for__pat_kind list;
    }
  15. | Error of error_guaranteed
and pat_range = {
  1. end' : range_end;
  2. hi : pat_range_boundary;
  3. lo : pat_range_boundary;
}
and pat_range_boundary =
  1. | NegInfinity
  2. | PosInfinity
  3. | Finite of decorated_for__constant_expr_kind
and path_or_dash =
  1. | Dash
  2. | Path of string
and path_segment = {
  1. args : hir_generic_args option;
  2. hir_id : hir_id;
  3. ident : string * span;
  4. infer_args : bool;
  5. res : res;
}
and placeholder_for__bound_region = {
  1. bound : bound_region;
  2. universe : string;
}
and placeholder_for__bound_ty = {
  1. bound : bound_ty;
  2. universe : string;
}
and placeholder_for_uint = {
  1. bound : string;
  2. universe : string;
}
and pointer_coercion =
  1. | ReifyFnPointer
  2. | UnsafeFnPointer
  3. | MutToConstPointer
  4. | ArrayToPointer
  5. | DynStar
  6. | Unsize
  7. | ClosureFnPointer of safety
and prim_ty =
  1. | Str
  2. | Bool
  3. | Char
  4. | Int of int_ty
  5. | Uint of uint_ty
  6. | Float of float_ty
and pro_verif_options = {
  1. assume_items : inclusion_clause list;
    (*

    Items for which hax should extract a default-valued process macro with a corresponding type signature. This flag expects a space-separated list of inclusion clauses. An inclusion clause is a Rust path prefixed with `+`, `+!` or `-`. `-` means implementation only, `+!` means interface only and `+` means implementation and interface. Rust path chunks can be either a concrete string, or a glob (just like bash globs, but with Rust paths).

    *)
}
and profiling_data = {
  1. context : string;
    (*

    What context are we profiling?

    *)
  2. errored : bool;
    (*

    Did the action errored? This is important since a failed action might have exited very early, making the numbers unusable.

    *)
  3. memory : string;
    (*

    How much memory this took? This is using OCaml's `Gc.minor_words`, and is probably not very precise.

    *)
  4. quantity : Base.Int64.t;
    (*

    How many things were processed? (often, this is the number of items a phase processes)

    *)
  5. time_ns : string;
    (*

    How long this took?

    *)
}
and projection_predicate = {
  1. assoc_item : assoc_item;
    (*

    The `Type` in `Ty: Trait<..., Type = U>`.

    *)
  2. impl_expr : impl_expr;
    (*

    The `impl Trait for Ty` in `Ty: Trait<..., Type = U>`.

    *)
  3. ty : node_for__ty_kind;
    (*

    The type `U` in `Ty: Trait<..., Type = U>`.

    *)
}
and q_path =
  1. | QPath of {
    1. todo : string;
    }
and range_end =
  1. | Included
  2. | Excluded
and real_file_name =
  1. | LocalPath of string
  2. | Remapped of {
    1. local_path : string option;
    2. virtual_name : string;
    }
and region = {
  1. kind : region_kind;
}
and region_kind =
  1. | ReStatic
  2. | ReErased
  3. | ReEarlyParam of early_param_region
  4. | ReBound of string * bound_region
  5. | ReLateParam of late_param_region
  6. | ReVar of string
  7. | RePlaceholder of placeholder_for__bound_region
  8. | ReError of error_guaranteed
and repr_flags =
  1. | ReprFlags of {
    1. todo : string;
    }
and repr_options = {
  1. align : align option;
  2. field_shuffle_seed : string;
  3. flags : repr_flags;
  4. int : integer_type option;
  5. pack : align option;
  6. typ : node_for__ty_kind;
}
and res =
  1. | ToolMod
  2. | Err
  3. | Def of def_kind * def_id
  4. | PrimTy of prim_ty
  5. | SelfTyParam of {
    1. trait_ : def_id;
    }
  6. | SelfTyAlias of {
    1. alias_to : def_id;
    2. forbid_generic : bool;
    3. is_trait_impl : bool;
    }
  7. | SelfCtor of def_id
  8. | Local of hir_id
  9. | NonMacroAttr of non_macro_attr_kind
and result_of__string_or__string =
  1. | Ok of string
  2. | Err of string
and safety =
  1. | Unsafe
  2. | Safe
and scope = {
  1. data : scope_data;
  2. id : string;
}
and scope_data =
  1. | Node
  2. | CallSite
  3. | Arguments
  4. | Destruction
  5. | IfThen
  6. | IfThenRescope
  7. | Remainder of string
and source_map = {
  1. file : string;
  2. mappings : string;
  3. names : string list;
  4. sourceRoot : string;
  5. sources : string list;
  6. sourcesContent : string option list;
  7. version : int;
}
and span = {
  1. filename : file_name;
  2. hi : loc;
  3. lo : loc;
}
and spanned_for__lit_kind = {
  1. node : lit_kind;
  2. span : span;
}
and stmt = {
  1. kind : stmt_kind;
}
and stmt_kind =
  1. | Expr of {
    1. expr : decorated_for__expr_kind;
    2. scope : scope;
    }
  2. | Let of {
    1. attributes : attribute list;
    2. else_block : block option;
    3. init_scope : scope;
    4. initializer' : decorated_for__expr_kind option;
    5. lint_level : lint_level;
    6. pattern : decorated_for__pat_kind;
    7. remainder_scope : scope;
    }
and str_style =
  1. | Cooked
  2. | Raw of int
and to_engine =
  1. | Pong
  2. | PrettyPrintedDiagnostic of string
  3. | PrettyPrintedRust of result_of__string_or__string
and trait_item_kind_for__decorated_for__expr_kind =
  1. | Const of node_for__ty_kind * decorated_for__expr_kind option
  2. | RequiredFn of fn_sig * (string * span) list
    (*

    Reflects a required `hir::TraitItemKind::Fn`

    *)
  3. | ProvidedFn of fn_sig * fn_def_for__decorated_for__expr_kind
    (*

    Reflects a provided `hir::TraitItemKind::Fn`

    *)
  4. | Type of clause list * node_for__ty_kind option
and trait_item_for__decorated_for__expr_kind = {
  1. attributes : item_attributes;
    (*

    The attributes on this trait item

    *)
  2. defaultness : defaultness;
  3. generics : generics_for__decorated_for__expr_kind;
  4. ident : string * span;
  5. kind : trait_item_kind_for__decorated_for__expr_kind;
  6. owner_id : def_id;
  7. span : span;
}
and trait_predicate = {
  1. is_positive : bool;
  2. trait_ref : trait_ref;
}
and trait_ref = {
  1. def_id : def_id;
  2. generic_args : generic_arg list;
    (*

    reflects the `args` field

    *)
}
and translation_options = {
  1. include_namespaces : inclusion_clause list;
    (*

    Controls which Rust item should be extracted or not.

    This is a space-separated list of patterns prefixed with a modifier, read from the left to the right.

    A pattern is a Rust path (say `mycrate::mymod::myfn`) where globs are allowed: `*` matches any name (e.g. `mycrate::mymod::myfn` is matched by `mycrate::*::myfn`), while `**` matches any subpath, empty included (e.g. `mycrate::mymod::myfn` is matched by `**::myfn`). By default, hax includes all items. Then, the patterns prefixed by modifiers are processed from left to right, excluding or including items. Each pattern selects a number of item. The modifiers are: nn - `+`: includes the selected items with their dependencies, transitively (e.g. if function `f` calls `g` which in turn calls `h`, then `+k::f` includes `f`, `g` and `h`) n - `+~`: includes the selected items with their direct dependencies only (following the previous example, `+~k::f` would select `f` and `g`, but not `h`) n - `+!`: includes the selected items, without their dependencies (`+!k::f` would only select `f`) n - `+:`: only includes the type of the selected items (no dependencies). This includes full struct and enums, but only the type signature of functions and trait impls (except when they contain associated types), dropping their bodies.

    *)
}
and ty_fn_sig = {
  1. abi : abi;
  2. c_variadic : bool;
  3. inputs : node_for__ty_kind list;
  4. output : node_for__ty_kind;
  5. safety : safety;
}
and ty_generics = {
  1. has_late_bound_regions : span option;
  2. has_self : bool;
  3. params : generic_param_def list;
  4. parent : def_id option;
  5. parent_count : string;
}
and ty_kind =
  1. | Bool
  2. | Char
  3. | Str
  4. | Never
  5. | Error
  6. | Int of int_ty
  7. | Uint of uint_ty
  8. | Float of float_ty
  9. | Arrow of binder_for__ty_fn_sig
    (*

    Reflects `ty::TyKind::FnPtr` and `ty::TyKind::FnDef`

    *)
  10. | Closure of def_id * closure_args
  11. | Adt of {
    1. def_id : def_id;
    2. generic_args : generic_arg list;
    3. trait_refs : impl_expr list;
    }
  12. | Foreign of def_id
  13. | Array of node_for__ty_kind * decorated_for__constant_expr_kind
  14. | Slice of node_for__ty_kind
  15. | RawPtr of node_for__ty_kind * bool
  16. | Ref of region * node_for__ty_kind * bool
  17. | Dynamic of binder_for__existential_predicate list * region * dyn_kind
  18. | Coroutine of def_id * generic_arg list
  19. | Tuple of node_for__ty_kind list
  20. | Alias of alias
  21. | Param of param_ty
  22. | Bound of string * bound_ty
  23. | Placeholder of placeholder_for__bound_ty
  24. | Infer of infer_ty
  25. | Todo of string
and uint_ty =
  1. | Usize
  2. | U8
  3. | U16
  4. | U32
  5. | U64
  6. | U128
and un_op =
  1. | Not
  2. | Neg
  3. | PtrMetadata
and use_kind =
  1. | Single
  2. | Glob
  3. | ListStem
and use_path = {
  1. rename : string option;
  2. res : res list;
  3. segments : path_segment list;
  4. span : span;
}
and user_type =
  1. | Todo of string
and variance =
  1. | Covariant
  2. | Invariant
  3. | Contravariant
  4. | Bivariant
and variant_data =
  1. | Struct of {
    1. fields : hir_field_def list;
    2. recovered : bool;
    }
  2. | Tuple of hir_field_def list * hir_id * def_id
  3. | Unit of hir_id * def_id
and variant_informations = {
  1. kind : variant_kind;
  2. typ : def_id;
  3. type_namespace : def_id;
  4. variant : def_id;
}
and variant_kind =
  1. | Struct of {
    1. named : bool;
    }
    (*

    The variant is the only variant of a `struct` type

    *)
  2. | Union
    (*

    The variant is the only variant of a `union` type

    *)
  3. | Enum of {
    1. index : string;
    2. named : bool;
    }
    (*

    The variant is one of the many variants of a `enum` type

    *)
and variant_for__decorated_for__expr_kind = {
  1. attributes : attribute list;
  2. data : variant_data;
  3. def_id : def_id;
  4. discr : discriminant_definition;
  5. disr_expr : anon_const_for__decorated_for__expr_kind option;
  6. hir_id : hir_id;
  7. ident : string * span;
  8. span : span;
}
and with_def_ids_for__decorated_for__expr_kind = {
  1. comments : (span * string) list;
  2. def_ids : def_id list;
  3. impl_infos : (def_id * impl_infos) list;
  4. items : item_for__decorated_for__expr_kind list;
}
and node_for__ty_kind = node_for_ty_kind_generated
and node_for__def_id_contents = node_for_def_id_contents_generated
val pp_abi : Ppx_deriving_runtime.Format.formatter -> abi -> Ppx_deriving_runtime.unit
val show_abi : abi -> Ppx_deriving_runtime.string
val pp_adt_expr : Ppx_deriving_runtime.Format.formatter -> adt_expr -> Ppx_deriving_runtime.unit
val show_adt_expr : adt_expr -> Ppx_deriving_runtime.string
val pp_alias : Ppx_deriving_runtime.Format.formatter -> alias -> Ppx_deriving_runtime.unit
val show_alias : alias -> Ppx_deriving_runtime.string
val pp_alias_kind : Ppx_deriving_runtime.Format.formatter -> alias_kind -> Ppx_deriving_runtime.unit
val show_alias_kind : alias_kind -> Ppx_deriving_runtime.string
val pp_align : Ppx_deriving_runtime.Format.formatter -> align -> Ppx_deriving_runtime.unit
val show_align : align -> Ppx_deriving_runtime.string
val pp_anon_const_for__decorated_for__expr_kind : Ppx_deriving_runtime.Format.formatter -> anon_const_for__decorated_for__expr_kind -> Ppx_deriving_runtime.unit
val show_anon_const_for__decorated_for__expr_kind : anon_const_for__decorated_for__expr_kind -> Ppx_deriving_runtime.string
val pp_arm : Ppx_deriving_runtime.Format.formatter -> arm -> Ppx_deriving_runtime.unit
val show_arm : arm -> Ppx_deriving_runtime.string
val pp_ascription : Ppx_deriving_runtime.Format.formatter -> ascription -> Ppx_deriving_runtime.unit
val show_ascription : ascription -> Ppx_deriving_runtime.string
val pp_assoc_item : Ppx_deriving_runtime.Format.formatter -> assoc_item -> Ppx_deriving_runtime.unit
val show_assoc_item : assoc_item -> Ppx_deriving_runtime.string
val pp_assoc_item_container : Ppx_deriving_runtime.Format.formatter -> assoc_item_container -> Ppx_deriving_runtime.unit
val show_assoc_item_container : assoc_item_container -> Ppx_deriving_runtime.string
val pp_assoc_kind : Ppx_deriving_runtime.Format.formatter -> assoc_kind -> Ppx_deriving_runtime.unit
val show_assoc_kind : assoc_kind -> Ppx_deriving_runtime.string
val pp_ast_pass : Ppx_deriving_runtime.Format.formatter -> ast_pass -> Ppx_deriving_runtime.unit
val show_ast_pass : ast_pass -> Ppx_deriving_runtime.string
val pp_attr_args : Ppx_deriving_runtime.Format.formatter -> attr_args -> Ppx_deriving_runtime.unit
val show_attr_args : attr_args -> Ppx_deriving_runtime.string
val pp_attr_args_eq : Ppx_deriving_runtime.Format.formatter -> attr_args_eq -> Ppx_deriving_runtime.unit
val show_attr_args_eq : attr_args_eq -> Ppx_deriving_runtime.string
val pp_attr_item : Ppx_deriving_runtime.Format.formatter -> attr_item -> Ppx_deriving_runtime.unit
val show_attr_item : attr_item -> Ppx_deriving_runtime.string
val pp_attr_kind : Ppx_deriving_runtime.Format.formatter -> attr_kind -> Ppx_deriving_runtime.unit
val show_attr_kind : attr_kind -> Ppx_deriving_runtime.string
val pp_attr_style : Ppx_deriving_runtime.Format.formatter -> attr_style -> Ppx_deriving_runtime.unit
val show_attr_style : attr_style -> Ppx_deriving_runtime.string
val pp_attribute : Ppx_deriving_runtime.Format.formatter -> attribute -> Ppx_deriving_runtime.unit
val show_attribute : attribute -> Ppx_deriving_runtime.string
val pp_backend_options_for__null : Ppx_deriving_runtime.Format.formatter -> backend_options_for__null -> Ppx_deriving_runtime.unit
val show_backend_options_for__null : backend_options_for__null -> Ppx_deriving_runtime.string
val pp_backend_for__null : Ppx_deriving_runtime.Format.formatter -> backend_for__null -> Ppx_deriving_runtime.unit
val show_backend_for__null : backend_for__null -> Ppx_deriving_runtime.string
val pp_bin_op : Ppx_deriving_runtime.Format.formatter -> bin_op -> Ppx_deriving_runtime.unit
val show_bin_op : bin_op -> Ppx_deriving_runtime.string
val pp_binder_for__clause_kind : Ppx_deriving_runtime.Format.formatter -> binder_for__clause_kind -> Ppx_deriving_runtime.unit
val show_binder_for__clause_kind : binder_for__clause_kind -> Ppx_deriving_runtime.string
val pp_binder_for__existential_predicate : Ppx_deriving_runtime.Format.formatter -> binder_for__existential_predicate -> Ppx_deriving_runtime.unit
val show_binder_for__existential_predicate : binder_for__existential_predicate -> Ppx_deriving_runtime.string
val pp_binder_for__trait_predicate : Ppx_deriving_runtime.Format.formatter -> binder_for__trait_predicate -> Ppx_deriving_runtime.unit
val show_binder_for__trait_predicate : binder_for__trait_predicate -> Ppx_deriving_runtime.string
val pp_binder_for__trait_ref : Ppx_deriving_runtime.Format.formatter -> binder_for__trait_ref -> Ppx_deriving_runtime.unit
val show_binder_for__trait_ref : binder_for__trait_ref -> Ppx_deriving_runtime.string
val pp_binder_for__ty_fn_sig : Ppx_deriving_runtime.Format.formatter -> binder_for__ty_fn_sig -> Ppx_deriving_runtime.unit
val show_binder_for__ty_fn_sig : binder_for__ty_fn_sig -> Ppx_deriving_runtime.string
val pp_binding_mode : Ppx_deriving_runtime.Format.formatter -> binding_mode -> Ppx_deriving_runtime.unit
val show_binding_mode : binding_mode -> Ppx_deriving_runtime.string
val pp_block : Ppx_deriving_runtime.Format.formatter -> block -> Ppx_deriving_runtime.unit
val show_block : block -> Ppx_deriving_runtime.string
val pp_block_safety : Ppx_deriving_runtime.Format.formatter -> block_safety -> Ppx_deriving_runtime.unit
val show_block_safety : block_safety -> Ppx_deriving_runtime.string
val pp_borrow_kind : Ppx_deriving_runtime.Format.formatter -> borrow_kind -> Ppx_deriving_runtime.unit
val show_borrow_kind : borrow_kind -> Ppx_deriving_runtime.string
val pp_bound_region : Ppx_deriving_runtime.Format.formatter -> bound_region -> Ppx_deriving_runtime.unit
val show_bound_region : bound_region -> Ppx_deriving_runtime.string
val pp_bound_region_kind : Ppx_deriving_runtime.Format.formatter -> bound_region_kind -> Ppx_deriving_runtime.unit
val show_bound_region_kind : bound_region_kind -> Ppx_deriving_runtime.string
val pp_bound_ty : Ppx_deriving_runtime.Format.formatter -> bound_ty -> Ppx_deriving_runtime.unit
val show_bound_ty : bound_ty -> Ppx_deriving_runtime.string
val pp_bound_ty_kind : Ppx_deriving_runtime.Format.formatter -> bound_ty_kind -> Ppx_deriving_runtime.unit
val show_bound_ty_kind : bound_ty_kind -> Ppx_deriving_runtime.string
val pp_bound_variable_kind : Ppx_deriving_runtime.Format.formatter -> bound_variable_kind -> Ppx_deriving_runtime.unit
val show_bound_variable_kind : bound_variable_kind -> Ppx_deriving_runtime.string
val pp_by_ref : Ppx_deriving_runtime.Format.formatter -> by_ref -> Ppx_deriving_runtime.unit
val show_by_ref : by_ref -> Ppx_deriving_runtime.string
val pp_canonical_ty_var_kind : Ppx_deriving_runtime.Format.formatter -> canonical_ty_var_kind -> Ppx_deriving_runtime.unit
val show_canonical_ty_var_kind : canonical_ty_var_kind -> Ppx_deriving_runtime.string
val pp_canonical_user_type_annotation : Ppx_deriving_runtime.Format.formatter -> canonical_user_type_annotation -> Ppx_deriving_runtime.unit
val show_canonical_user_type_annotation : canonical_user_type_annotation -> Ppx_deriving_runtime.string
val pp_canonical_var_info : Ppx_deriving_runtime.Format.formatter -> canonical_var_info -> Ppx_deriving_runtime.unit
val show_canonical_var_info : canonical_var_info -> Ppx_deriving_runtime.string
val pp_canonical_for__user_type : Ppx_deriving_runtime.Format.formatter -> canonical_for__user_type -> Ppx_deriving_runtime.unit
val show_canonical_for__user_type : canonical_for__user_type -> Ppx_deriving_runtime.string
val pp_clause : Ppx_deriving_runtime.Format.formatter -> clause -> Ppx_deriving_runtime.unit
val show_clause : clause -> Ppx_deriving_runtime.string
val pp_clause_kind : Ppx_deriving_runtime.Format.formatter -> clause_kind -> Ppx_deriving_runtime.unit
val show_clause_kind : clause_kind -> Ppx_deriving_runtime.string
val pp_closure_args : Ppx_deriving_runtime.Format.formatter -> closure_args -> Ppx_deriving_runtime.unit
val show_closure_args : closure_args -> Ppx_deriving_runtime.string
val pp_closure_kind : Ppx_deriving_runtime.Format.formatter -> closure_kind -> Ppx_deriving_runtime.unit
val show_closure_kind : closure_kind -> Ppx_deriving_runtime.string
val pp_command_for__null : Ppx_deriving_runtime.Format.formatter -> command_for__null -> Ppx_deriving_runtime.unit
val show_command_for__null : command_for__null -> Ppx_deriving_runtime.string
val pp_comment_kind : Ppx_deriving_runtime.Format.formatter -> comment_kind -> Ppx_deriving_runtime.unit
val show_comment_kind : comment_kind -> Ppx_deriving_runtime.string
val pp_const_arg_kind_for__decorated_for__expr_kind : Ppx_deriving_runtime.Format.formatter -> const_arg_kind_for__decorated_for__expr_kind -> Ppx_deriving_runtime.unit
val show_const_arg_kind_for__decorated_for__expr_kind : const_arg_kind_for__decorated_for__expr_kind -> Ppx_deriving_runtime.string
val pp_const_arg_for__decorated_for__expr_kind : Ppx_deriving_runtime.Format.formatter -> const_arg_for__decorated_for__expr_kind -> Ppx_deriving_runtime.unit
val show_const_arg_for__decorated_for__expr_kind : const_arg_for__decorated_for__expr_kind -> Ppx_deriving_runtime.string
val pp_constant_expr_kind : Ppx_deriving_runtime.Format.formatter -> constant_expr_kind -> Ppx_deriving_runtime.unit
val show_constant_expr_kind : constant_expr_kind -> Ppx_deriving_runtime.string
val pp_constant_field_expr : Ppx_deriving_runtime.Format.formatter -> constant_field_expr -> Ppx_deriving_runtime.unit
val show_constant_field_expr : constant_field_expr -> Ppx_deriving_runtime.string
val pp_constant_int : Ppx_deriving_runtime.Format.formatter -> constant_int -> Ppx_deriving_runtime.unit
val show_constant_int : constant_int -> Ppx_deriving_runtime.string
val pp_constant_literal : Ppx_deriving_runtime.Format.formatter -> constant_literal -> Ppx_deriving_runtime.unit
val show_constant_literal : constant_literal -> Ppx_deriving_runtime.string
val pp_constness : Ppx_deriving_runtime.Format.formatter -> constness -> Ppx_deriving_runtime.unit
val show_constness : constness -> Ppx_deriving_runtime.string
val pp_ctor_kind : Ppx_deriving_runtime.Format.formatter -> ctor_kind -> Ppx_deriving_runtime.unit
val show_ctor_kind : ctor_kind -> Ppx_deriving_runtime.string
val pp_ctor_of : Ppx_deriving_runtime.Format.formatter -> ctor_of -> Ppx_deriving_runtime.unit
val show_ctor_of : ctor_of -> Ppx_deriving_runtime.string
val pp_debug_engine_mode : Ppx_deriving_runtime.Format.formatter -> debug_engine_mode -> Ppx_deriving_runtime.unit
val show_debug_engine_mode : debug_engine_mode -> Ppx_deriving_runtime.string
val pp_decorated_for__constant_expr_kind : Ppx_deriving_runtime.Format.formatter -> decorated_for__constant_expr_kind -> Ppx_deriving_runtime.unit
val show_decorated_for__constant_expr_kind : decorated_for__constant_expr_kind -> Ppx_deriving_runtime.string
val pp_decorated_for__expr_kind : Ppx_deriving_runtime.Format.formatter -> decorated_for__expr_kind -> Ppx_deriving_runtime.unit
val show_decorated_for__expr_kind : decorated_for__expr_kind -> Ppx_deriving_runtime.string
val pp_decorated_for__pat_kind : Ppx_deriving_runtime.Format.formatter -> decorated_for__pat_kind -> Ppx_deriving_runtime.unit
val show_decorated_for__pat_kind : decorated_for__pat_kind -> Ppx_deriving_runtime.string
val pp_def_id : Ppx_deriving_runtime.Format.formatter -> def_id -> Ppx_deriving_runtime.unit
val show_def_id : def_id -> Ppx_deriving_runtime.string
val pp_def_id_contents : Ppx_deriving_runtime.Format.formatter -> def_id_contents -> Ppx_deriving_runtime.unit
val show_def_id_contents : def_id_contents -> Ppx_deriving_runtime.string
val pp_def_kind : Ppx_deriving_runtime.Format.formatter -> def_kind -> Ppx_deriving_runtime.unit
val show_def_kind : def_kind -> Ppx_deriving_runtime.string
val pp_def_path_item : Ppx_deriving_runtime.Format.formatter -> def_path_item -> Ppx_deriving_runtime.unit
val show_def_path_item : def_path_item -> Ppx_deriving_runtime.string
val pp_defaultness : Ppx_deriving_runtime.Format.formatter -> defaultness -> Ppx_deriving_runtime.unit
val show_defaultness : defaultness -> Ppx_deriving_runtime.string
val pp_delim_args : Ppx_deriving_runtime.Format.formatter -> delim_args -> Ppx_deriving_runtime.unit
val show_delim_args : delim_args -> Ppx_deriving_runtime.string
val pp_delim_span : Ppx_deriving_runtime.Format.formatter -> delim_span -> Ppx_deriving_runtime.unit
val show_delim_span : delim_span -> Ppx_deriving_runtime.string
val pp_delimiter : Ppx_deriving_runtime.Format.formatter -> delimiter -> Ppx_deriving_runtime.unit
val show_delimiter : delimiter -> Ppx_deriving_runtime.string
val pp_deps_kind : Ppx_deriving_runtime.Format.formatter -> deps_kind -> Ppx_deriving_runtime.unit
val show_deps_kind : deps_kind -> Ppx_deriving_runtime.string
val pp_desugaring_kind : Ppx_deriving_runtime.Format.formatter -> desugaring_kind -> Ppx_deriving_runtime.unit
val show_desugaring_kind : desugaring_kind -> Ppx_deriving_runtime.string
val pp_diagnostics : Ppx_deriving_runtime.Format.formatter -> diagnostics -> Ppx_deriving_runtime.unit
val show_diagnostics : diagnostics -> Ppx_deriving_runtime.string
val pp_disambiguated_def_path_item : Ppx_deriving_runtime.Format.formatter -> disambiguated_def_path_item -> Ppx_deriving_runtime.unit
val show_disambiguated_def_path_item : disambiguated_def_path_item -> Ppx_deriving_runtime.string
val pp_discriminant_definition : Ppx_deriving_runtime.Format.formatter -> discriminant_definition -> Ppx_deriving_runtime.unit
val show_discriminant_definition : discriminant_definition -> Ppx_deriving_runtime.string
val pp_dyn_kind : Ppx_deriving_runtime.Format.formatter -> dyn_kind -> Ppx_deriving_runtime.unit
val show_dyn_kind : dyn_kind -> Ppx_deriving_runtime.string
val pp_early_param_region : Ppx_deriving_runtime.Format.formatter -> early_param_region -> Ppx_deriving_runtime.unit
val show_early_param_region : early_param_region -> Ppx_deriving_runtime.string
val pp_edition : Ppx_deriving_runtime.Format.formatter -> edition -> Ppx_deriving_runtime.unit
val show_edition : edition -> Ppx_deriving_runtime.string
val pp_empty_args_extension : Ppx_deriving_runtime.Format.formatter -> empty_args_extension -> Ppx_deriving_runtime.unit
val show_empty_args_extension : empty_args_extension -> Ppx_deriving_runtime.string
val pp_empty_subcommand_extension : Ppx_deriving_runtime.Format.formatter -> empty_subcommand_extension -> Ppx_deriving_runtime.unit
val show_empty_subcommand_extension : empty_subcommand_extension -> Ppx_deriving_runtime.string
val pp_engine_options : Ppx_deriving_runtime.Format.formatter -> engine_options -> Ppx_deriving_runtime.unit
val show_engine_options : engine_options -> Ppx_deriving_runtime.string
val pp_error_guaranteed : Ppx_deriving_runtime.Format.formatter -> error_guaranteed -> Ppx_deriving_runtime.unit
val show_error_guaranteed : error_guaranteed -> Ppx_deriving_runtime.string
val pp_existential_predicate : Ppx_deriving_runtime.Format.formatter -> existential_predicate -> Ppx_deriving_runtime.unit
val show_existential_predicate : existential_predicate -> Ppx_deriving_runtime.string
val pp_existential_projection : Ppx_deriving_runtime.Format.formatter -> existential_projection -> Ppx_deriving_runtime.unit
val show_existential_projection : existential_projection -> Ppx_deriving_runtime.string
val pp_existential_trait_ref : Ppx_deriving_runtime.Format.formatter -> existential_trait_ref -> Ppx_deriving_runtime.unit
val show_existential_trait_ref : existential_trait_ref -> Ppx_deriving_runtime.string
val pp_expn_data : Ppx_deriving_runtime.Format.formatter -> expn_data -> Ppx_deriving_runtime.unit
val show_expn_data : expn_data -> Ppx_deriving_runtime.string
val pp_expn_kind : Ppx_deriving_runtime.Format.formatter -> expn_kind -> Ppx_deriving_runtime.unit
val show_expn_kind : expn_kind -> Ppx_deriving_runtime.string
val pp_export_body_kind : Ppx_deriving_runtime.Format.formatter -> export_body_kind -> Ppx_deriving_runtime.unit
val show_export_body_kind : export_body_kind -> Ppx_deriving_runtime.string
val pp_expr_kind : Ppx_deriving_runtime.Format.formatter -> expr_kind -> Ppx_deriving_runtime.unit
val show_expr_kind : expr_kind -> Ppx_deriving_runtime.string
val pp_extensible_options_for__null : Ppx_deriving_runtime.Format.formatter -> extensible_options_for__null -> Ppx_deriving_runtime.unit
val show_extensible_options_for__null : extensible_options_for__null -> Ppx_deriving_runtime.string
val pp_f_star_options_for__null : Ppx_deriving_runtime.Format.formatter -> f_star_options_for__null -> Ppx_deriving_runtime.unit
val show_f_star_options_for__null : f_star_options_for__null -> Ppx_deriving_runtime.string
val pp_fake_borrow_kind : Ppx_deriving_runtime.Format.formatter -> fake_borrow_kind -> Ppx_deriving_runtime.unit
val show_fake_borrow_kind : fake_borrow_kind -> Ppx_deriving_runtime.string
val pp_field_expr : Ppx_deriving_runtime.Format.formatter -> field_expr -> Ppx_deriving_runtime.unit
val show_field_expr : field_expr -> Ppx_deriving_runtime.string
val pp_field_pat : Ppx_deriving_runtime.Format.formatter -> field_pat -> Ppx_deriving_runtime.unit
val show_field_pat : field_pat -> Ppx_deriving_runtime.string
val pp_file : Ppx_deriving_runtime.Format.formatter -> file -> Ppx_deriving_runtime.unit
val show_file : file -> Ppx_deriving_runtime.string
val pp_file_name : Ppx_deriving_runtime.Format.formatter -> file_name -> Ppx_deriving_runtime.unit
val show_file_name : file_name -> Ppx_deriving_runtime.string
val pp_float_ty : Ppx_deriving_runtime.Format.formatter -> float_ty -> Ppx_deriving_runtime.unit
val show_float_ty : float_ty -> Ppx_deriving_runtime.string
val pp_fn_decl : Ppx_deriving_runtime.Format.formatter -> fn_decl -> Ppx_deriving_runtime.unit
val show_fn_decl : fn_decl -> Ppx_deriving_runtime.string
val pp_fn_def_for__decorated_for__expr_kind : Ppx_deriving_runtime.Format.formatter -> fn_def_for__decorated_for__expr_kind -> Ppx_deriving_runtime.unit
val show_fn_def_for__decorated_for__expr_kind : fn_def_for__decorated_for__expr_kind -> Ppx_deriving_runtime.string
val pp_fn_header : Ppx_deriving_runtime.Format.formatter -> fn_header -> Ppx_deriving_runtime.unit
val show_fn_header : fn_header -> Ppx_deriving_runtime.string
val pp_fn_ret_ty : Ppx_deriving_runtime.Format.formatter -> fn_ret_ty -> Ppx_deriving_runtime.unit
val show_fn_ret_ty : fn_ret_ty -> Ppx_deriving_runtime.string
val pp_fn_sig : Ppx_deriving_runtime.Format.formatter -> fn_sig -> Ppx_deriving_runtime.unit
val show_fn_sig : fn_sig -> Ppx_deriving_runtime.string
val pp_force_cargo_build : Ppx_deriving_runtime.Format.formatter -> force_cargo_build -> Ppx_deriving_runtime.unit
val show_force_cargo_build : force_cargo_build -> Ppx_deriving_runtime.string
val pp_foreign_item_kind_for__decorated_for__expr_kind : Ppx_deriving_runtime.Format.formatter -> foreign_item_kind_for__decorated_for__expr_kind -> Ppx_deriving_runtime.unit
val show_foreign_item_kind_for__decorated_for__expr_kind : foreign_item_kind_for__decorated_for__expr_kind -> Ppx_deriving_runtime.string
val pp_foreign_item_for__decorated_for__expr_kind : Ppx_deriving_runtime.Format.formatter -> foreign_item_for__decorated_for__expr_kind -> Ppx_deriving_runtime.unit
val show_foreign_item_for__decorated_for__expr_kind : foreign_item_for__decorated_for__expr_kind -> Ppx_deriving_runtime.string
val pp_from_engine : Ppx_deriving_runtime.Format.formatter -> from_engine -> Ppx_deriving_runtime.unit
val show_from_engine : from_engine -> Ppx_deriving_runtime.string
val pp_fru_info : Ppx_deriving_runtime.Format.formatter -> fru_info -> Ppx_deriving_runtime.unit
val show_fru_info : fru_info -> Ppx_deriving_runtime.string
val pp_generic_arg : Ppx_deriving_runtime.Format.formatter -> generic_arg -> Ppx_deriving_runtime.unit
val show_generic_arg : generic_arg -> Ppx_deriving_runtime.string
val pp_generic_param_def : Ppx_deriving_runtime.Format.formatter -> generic_param_def -> Ppx_deriving_runtime.unit
val show_generic_param_def : generic_param_def -> Ppx_deriving_runtime.string
val pp_generic_param_def_kind : Ppx_deriving_runtime.Format.formatter -> generic_param_def_kind -> Ppx_deriving_runtime.unit
val show_generic_param_def_kind : generic_param_def_kind -> Ppx_deriving_runtime.string
val pp_generic_param_kind_for__decorated_for__expr_kind : Ppx_deriving_runtime.Format.formatter -> generic_param_kind_for__decorated_for__expr_kind -> Ppx_deriving_runtime.unit
val show_generic_param_kind_for__decorated_for__expr_kind : generic_param_kind_for__decorated_for__expr_kind -> Ppx_deriving_runtime.string
val pp_generic_param_for__decorated_for__expr_kind : Ppx_deriving_runtime.Format.formatter -> generic_param_for__decorated_for__expr_kind -> Ppx_deriving_runtime.unit
val show_generic_param_for__decorated_for__expr_kind : generic_param_for__decorated_for__expr_kind -> Ppx_deriving_runtime.string
val pp_generics_for__decorated_for__expr_kind : Ppx_deriving_runtime.Format.formatter -> generics_for__decorated_for__expr_kind -> Ppx_deriving_runtime.unit
val show_generics_for__decorated_for__expr_kind : generics_for__decorated_for__expr_kind -> Ppx_deriving_runtime.string
val pp_glob : Ppx_deriving_runtime.Format.formatter -> glob -> Ppx_deriving_runtime.unit
val show_glob : glob -> Ppx_deriving_runtime.string
val pp_ha_assoc_role : Ppx_deriving_runtime.Format.formatter -> ha_assoc_role -> Ppx_deriving_runtime.unit
val show_ha_assoc_role : ha_assoc_role -> Ppx_deriving_runtime.string
val pp_ha_item_quote : Ppx_deriving_runtime.Format.formatter -> ha_item_quote -> Ppx_deriving_runtime.unit
val show_ha_item_quote : ha_item_quote -> Ppx_deriving_runtime.string
val pp_ha_item_quote_f_star_opts : Ppx_deriving_runtime.Format.formatter -> ha_item_quote_f_star_opts -> Ppx_deriving_runtime.unit
val show_ha_item_quote_f_star_opts : ha_item_quote_f_star_opts -> Ppx_deriving_runtime.string
val pp_ha_item_quote_position : Ppx_deriving_runtime.Format.formatter -> ha_item_quote_position -> Ppx_deriving_runtime.unit
val show_ha_item_quote_position : ha_item_quote_position -> Ppx_deriving_runtime.string
val pp_ha_item_status : Ppx_deriving_runtime.Format.formatter -> ha_item_status -> Ppx_deriving_runtime.unit
val show_ha_item_status : ha_item_status -> Ppx_deriving_runtime.string
val pp_ha_payload : Ppx_deriving_runtime.Format.formatter -> ha_payload -> Ppx_deriving_runtime.unit
val show_ha_payload : ha_payload -> Ppx_deriving_runtime.string
val pp_ha_uid : Ppx_deriving_runtime.Format.formatter -> ha_uid -> Ppx_deriving_runtime.unit
val show_ha_uid : ha_uid -> Ppx_deriving_runtime.string
val pp_hir_field_def : Ppx_deriving_runtime.Format.formatter -> hir_field_def -> Ppx_deriving_runtime.unit
val show_hir_field_def : hir_field_def -> Ppx_deriving_runtime.string
val pp_hir_generic_args : Ppx_deriving_runtime.Format.formatter -> hir_generic_args -> Ppx_deriving_runtime.unit
val show_hir_generic_args : hir_generic_args -> Ppx_deriving_runtime.string
val pp_hir_id : Ppx_deriving_runtime.Format.formatter -> hir_id -> Ppx_deriving_runtime.unit
val show_hir_id : hir_id -> Ppx_deriving_runtime.string
val pp_impl_expr : Ppx_deriving_runtime.Format.formatter -> impl_expr -> Ppx_deriving_runtime.unit
val show_impl_expr : impl_expr -> Ppx_deriving_runtime.string
val pp_impl_expr_atom : Ppx_deriving_runtime.Format.formatter -> impl_expr_atom -> Ppx_deriving_runtime.unit
val show_impl_expr_atom : impl_expr_atom -> Ppx_deriving_runtime.string
val pp_impl_expr_path_chunk : Ppx_deriving_runtime.Format.formatter -> impl_expr_path_chunk -> Ppx_deriving_runtime.unit
val show_impl_expr_path_chunk : impl_expr_path_chunk -> Ppx_deriving_runtime.string
val pp_impl_infos : Ppx_deriving_runtime.Format.formatter -> impl_infos -> Ppx_deriving_runtime.unit
val show_impl_infos : impl_infos -> Ppx_deriving_runtime.string
val pp_impl_item_kind_for__decorated_for__expr_kind : Ppx_deriving_runtime.Format.formatter -> impl_item_kind_for__decorated_for__expr_kind -> Ppx_deriving_runtime.unit
val show_impl_item_kind_for__decorated_for__expr_kind : impl_item_kind_for__decorated_for__expr_kind -> Ppx_deriving_runtime.string
val pp_impl_item_for__decorated_for__expr_kind : Ppx_deriving_runtime.Format.formatter -> impl_item_for__decorated_for__expr_kind -> Ppx_deriving_runtime.unit
val show_impl_item_for__decorated_for__expr_kind : impl_item_for__decorated_for__expr_kind -> Ppx_deriving_runtime.string
val pp_impl_polarity : Ppx_deriving_runtime.Format.formatter -> impl_polarity -> Ppx_deriving_runtime.unit
val show_impl_polarity : impl_polarity -> Ppx_deriving_runtime.string
val pp_impl_trait_in_trait_data : Ppx_deriving_runtime.Format.formatter -> impl_trait_in_trait_data -> Ppx_deriving_runtime.unit
val show_impl_trait_in_trait_data : impl_trait_in_trait_data -> Ppx_deriving_runtime.string
val pp_impl_for__decorated_for__expr_kind : Ppx_deriving_runtime.Format.formatter -> impl_for__decorated_for__expr_kind -> Ppx_deriving_runtime.unit
val show_impl_for__decorated_for__expr_kind : impl_for__decorated_for__expr_kind -> Ppx_deriving_runtime.string
val pp_implicit_self_kind : Ppx_deriving_runtime.Format.formatter -> implicit_self_kind -> Ppx_deriving_runtime.unit
val show_implicit_self_kind : implicit_self_kind -> Ppx_deriving_runtime.string
val pp_inclusion_clause : Ppx_deriving_runtime.Format.formatter -> inclusion_clause -> Ppx_deriving_runtime.unit
val show_inclusion_clause : inclusion_clause -> Ppx_deriving_runtime.string
val pp_inclusion_kind : Ppx_deriving_runtime.Format.formatter -> inclusion_kind -> Ppx_deriving_runtime.unit
val show_inclusion_kind : inclusion_kind -> Ppx_deriving_runtime.string
val pp_infer_ty : Ppx_deriving_runtime.Format.formatter -> infer_ty -> Ppx_deriving_runtime.unit
val show_infer_ty : infer_ty -> Ppx_deriving_runtime.string
val pp_inline_asm : Ppx_deriving_runtime.Format.formatter -> inline_asm -> Ppx_deriving_runtime.unit
val show_inline_asm : inline_asm -> Ppx_deriving_runtime.string
val pp_int_ty : Ppx_deriving_runtime.Format.formatter -> int_ty -> Ppx_deriving_runtime.unit
val show_int_ty : int_ty -> Ppx_deriving_runtime.string
val pp_integer_type : Ppx_deriving_runtime.Format.formatter -> integer_type -> Ppx_deriving_runtime.unit
val show_integer_type : integer_type -> Ppx_deriving_runtime.string
val pp_is_async : Ppx_deriving_runtime.Format.formatter -> is_async -> Ppx_deriving_runtime.unit
val show_is_async : is_async -> Ppx_deriving_runtime.string
val pp_is_auto : Ppx_deriving_runtime.Format.formatter -> is_auto -> Ppx_deriving_runtime.unit
val show_is_auto : is_auto -> Ppx_deriving_runtime.string
val pp_item_attributes : Ppx_deriving_runtime.Format.formatter -> item_attributes -> Ppx_deriving_runtime.unit
val show_item_attributes : item_attributes -> Ppx_deriving_runtime.string
val pp_item_kind_for__decorated_for__expr_kind : Ppx_deriving_runtime.Format.formatter -> item_kind_for__decorated_for__expr_kind -> Ppx_deriving_runtime.unit
val show_item_kind_for__decorated_for__expr_kind : item_kind_for__decorated_for__expr_kind -> Ppx_deriving_runtime.string
val pp_item_for__decorated_for__expr_kind : Ppx_deriving_runtime.Format.formatter -> item_for__decorated_for__expr_kind -> Ppx_deriving_runtime.unit
val show_item_for__decorated_for__expr_kind : item_for__decorated_for__expr_kind -> Ppx_deriving_runtime.string
val pp_kind : Ppx_deriving_runtime.Format.formatter -> kind -> Ppx_deriving_runtime.unit
val show_kind : kind -> Ppx_deriving_runtime.string
val pp_late_param_region : Ppx_deriving_runtime.Format.formatter -> late_param_region -> Ppx_deriving_runtime.unit
val show_late_param_region : late_param_region -> Ppx_deriving_runtime.string
val pp_lifetime_param_kind : Ppx_deriving_runtime.Format.formatter -> lifetime_param_kind -> Ppx_deriving_runtime.unit
val show_lifetime_param_kind : lifetime_param_kind -> Ppx_deriving_runtime.string
val pp_lint_level : Ppx_deriving_runtime.Format.formatter -> lint_level -> Ppx_deriving_runtime.unit
val show_lint_level : lint_level -> Ppx_deriving_runtime.string
val pp_lit_float_type : Ppx_deriving_runtime.Format.formatter -> lit_float_type -> Ppx_deriving_runtime.unit
val show_lit_float_type : lit_float_type -> Ppx_deriving_runtime.string
val pp_lit_int_type : Ppx_deriving_runtime.Format.formatter -> lit_int_type -> Ppx_deriving_runtime.unit
val show_lit_int_type : lit_int_type -> Ppx_deriving_runtime.string
val pp_lit_kind : Ppx_deriving_runtime.Format.formatter -> lit_kind -> Ppx_deriving_runtime.unit
val show_lit_kind : lit_kind -> Ppx_deriving_runtime.string
val pp_loc : Ppx_deriving_runtime.Format.formatter -> loc -> Ppx_deriving_runtime.unit
val show_loc : loc -> Ppx_deriving_runtime.string
val pp_local_ident : Ppx_deriving_runtime.Format.formatter -> local_ident -> Ppx_deriving_runtime.unit
val show_local_ident : local_ident -> Ppx_deriving_runtime.string
val pp_logical_op : Ppx_deriving_runtime.Format.formatter -> logical_op -> Ppx_deriving_runtime.unit
val show_logical_op : logical_op -> Ppx_deriving_runtime.string
val pp_macro_def : Ppx_deriving_runtime.Format.formatter -> macro_def -> Ppx_deriving_runtime.unit
val show_macro_def : macro_def -> Ppx_deriving_runtime.string
val pp_macro_invokation : Ppx_deriving_runtime.Format.formatter -> macro_invokation -> Ppx_deriving_runtime.unit
val show_macro_invokation : macro_invokation -> Ppx_deriving_runtime.string
val pp_macro_kind : Ppx_deriving_runtime.Format.formatter -> macro_kind -> Ppx_deriving_runtime.unit
val show_macro_kind : macro_kind -> Ppx_deriving_runtime.string
val pp_message_format : Ppx_deriving_runtime.Format.formatter -> message_format -> Ppx_deriving_runtime.unit
val show_message_format : message_format -> Ppx_deriving_runtime.string
val pp_meta_item_lit : Ppx_deriving_runtime.Format.formatter -> meta_item_lit -> Ppx_deriving_runtime.unit
val show_meta_item_lit : meta_item_lit -> Ppx_deriving_runtime.string
val pp_missing_lifetime_kind : Ppx_deriving_runtime.Format.formatter -> missing_lifetime_kind -> Ppx_deriving_runtime.unit
val show_missing_lifetime_kind : missing_lifetime_kind -> Ppx_deriving_runtime.string
val pp_movability : Ppx_deriving_runtime.Format.formatter -> movability -> Ppx_deriving_runtime.unit
val show_movability : movability -> Ppx_deriving_runtime.string
val pp_mut_borrow_kind : Ppx_deriving_runtime.Format.formatter -> mut_borrow_kind -> Ppx_deriving_runtime.unit
val show_mut_borrow_kind : mut_borrow_kind -> Ppx_deriving_runtime.string
val pp_namespace : Ppx_deriving_runtime.Format.formatter -> namespace -> Ppx_deriving_runtime.unit
val show_namespace : namespace -> Ppx_deriving_runtime.string
val pp_namespace_chunk : Ppx_deriving_runtime.Format.formatter -> namespace_chunk -> Ppx_deriving_runtime.unit
val show_namespace_chunk : namespace_chunk -> Ppx_deriving_runtime.string
val pp_node_for_def_id_contents_generated : Ppx_deriving_runtime.Format.formatter -> node_for__def_id_contents -> Ppx_deriving_runtime.unit
val show_node_for_def_id_contents_generated : node_for_def_id_contents_generated -> Ppx_deriving_runtime.string
val pp_node_for_ty_kind_generated : Ppx_deriving_runtime.Format.formatter -> node_for__ty_kind -> Ppx_deriving_runtime.unit
val show_node_for_ty_kind_generated : node_for_ty_kind_generated -> Ppx_deriving_runtime.string
val pp_non_macro_attr_kind : Ppx_deriving_runtime.Format.formatter -> non_macro_attr_kind -> Ppx_deriving_runtime.unit
val show_non_macro_attr_kind : non_macro_attr_kind -> Ppx_deriving_runtime.string
val pp_normal_attr : Ppx_deriving_runtime.Format.formatter -> normal_attr -> Ppx_deriving_runtime.unit
val show_normal_attr : normal_attr -> Ppx_deriving_runtime.string
val pp_outlives_predicate_for__node_for__ty_kind : Ppx_deriving_runtime.Format.formatter -> outlives_predicate_for__node_for__ty_kind -> Ppx_deriving_runtime.unit
val show_outlives_predicate_for__node_for__ty_kind : outlives_predicate_for__node_for__ty_kind -> Ppx_deriving_runtime.string
val pp_outlives_predicate_for__region : Ppx_deriving_runtime.Format.formatter -> outlives_predicate_for__region -> Ppx_deriving_runtime.unit
val show_outlives_predicate_for__region : outlives_predicate_for__region -> Ppx_deriving_runtime.string
val pp_output : Ppx_deriving_runtime.Format.formatter -> output -> Ppx_deriving_runtime.unit
val show_output : output -> Ppx_deriving_runtime.string
val pp_param : Ppx_deriving_runtime.Format.formatter -> param -> Ppx_deriving_runtime.unit
val show_param : param -> Ppx_deriving_runtime.string
val pp_param_const : Ppx_deriving_runtime.Format.formatter -> param_const -> Ppx_deriving_runtime.unit
val show_param_const : param_const -> Ppx_deriving_runtime.string
val pp_param_name : Ppx_deriving_runtime.Format.formatter -> param_name -> Ppx_deriving_runtime.unit
val show_param_name : param_name -> Ppx_deriving_runtime.string
val pp_param_ty : Ppx_deriving_runtime.Format.formatter -> param_ty -> Ppx_deriving_runtime.unit
val show_param_ty : param_ty -> Ppx_deriving_runtime.string
val pp_pat_kind : Ppx_deriving_runtime.Format.formatter -> pat_kind -> Ppx_deriving_runtime.unit
val show_pat_kind : pat_kind -> Ppx_deriving_runtime.string
val pp_pat_range : Ppx_deriving_runtime.Format.formatter -> pat_range -> Ppx_deriving_runtime.unit
val show_pat_range : pat_range -> Ppx_deriving_runtime.string
val pp_pat_range_boundary : Ppx_deriving_runtime.Format.formatter -> pat_range_boundary -> Ppx_deriving_runtime.unit
val show_pat_range_boundary : pat_range_boundary -> Ppx_deriving_runtime.string
val pp_path_or_dash : Ppx_deriving_runtime.Format.formatter -> path_or_dash -> Ppx_deriving_runtime.unit
val show_path_or_dash : path_or_dash -> Ppx_deriving_runtime.string
val pp_path_segment : Ppx_deriving_runtime.Format.formatter -> path_segment -> Ppx_deriving_runtime.unit
val show_path_segment : path_segment -> Ppx_deriving_runtime.string
val pp_placeholder_for__bound_region : Ppx_deriving_runtime.Format.formatter -> placeholder_for__bound_region -> Ppx_deriving_runtime.unit
val show_placeholder_for__bound_region : placeholder_for__bound_region -> Ppx_deriving_runtime.string
val pp_placeholder_for__bound_ty : Ppx_deriving_runtime.Format.formatter -> placeholder_for__bound_ty -> Ppx_deriving_runtime.unit
val show_placeholder_for__bound_ty : placeholder_for__bound_ty -> Ppx_deriving_runtime.string
val pp_placeholder_for_uint : Ppx_deriving_runtime.Format.formatter -> placeholder_for_uint -> Ppx_deriving_runtime.unit
val show_placeholder_for_uint : placeholder_for_uint -> Ppx_deriving_runtime.string
val pp_pointer_coercion : Ppx_deriving_runtime.Format.formatter -> pointer_coercion -> Ppx_deriving_runtime.unit
val show_pointer_coercion : pointer_coercion -> Ppx_deriving_runtime.string
val pp_prim_ty : Ppx_deriving_runtime.Format.formatter -> prim_ty -> Ppx_deriving_runtime.unit
val show_prim_ty : prim_ty -> Ppx_deriving_runtime.string
val pp_pro_verif_options : Ppx_deriving_runtime.Format.formatter -> pro_verif_options -> Ppx_deriving_runtime.unit
val show_pro_verif_options : pro_verif_options -> Ppx_deriving_runtime.string
val pp_profiling_data : Ppx_deriving_runtime.Format.formatter -> profiling_data -> Ppx_deriving_runtime.unit
val show_profiling_data : profiling_data -> Ppx_deriving_runtime.string
val pp_projection_predicate : Ppx_deriving_runtime.Format.formatter -> projection_predicate -> Ppx_deriving_runtime.unit
val show_projection_predicate : projection_predicate -> Ppx_deriving_runtime.string
val pp_q_path : Ppx_deriving_runtime.Format.formatter -> q_path -> Ppx_deriving_runtime.unit
val show_q_path : q_path -> Ppx_deriving_runtime.string
val pp_range_end : Ppx_deriving_runtime.Format.formatter -> range_end -> Ppx_deriving_runtime.unit
val show_range_end : range_end -> Ppx_deriving_runtime.string
val pp_real_file_name : Ppx_deriving_runtime.Format.formatter -> real_file_name -> Ppx_deriving_runtime.unit
val show_real_file_name : real_file_name -> Ppx_deriving_runtime.string
val pp_region : Ppx_deriving_runtime.Format.formatter -> region -> Ppx_deriving_runtime.unit
val show_region : region -> Ppx_deriving_runtime.string
val pp_region_kind : Ppx_deriving_runtime.Format.formatter -> region_kind -> Ppx_deriving_runtime.unit
val show_region_kind : region_kind -> Ppx_deriving_runtime.string
val pp_repr_flags : Ppx_deriving_runtime.Format.formatter -> repr_flags -> Ppx_deriving_runtime.unit
val show_repr_flags : repr_flags -> Ppx_deriving_runtime.string
val pp_repr_options : Ppx_deriving_runtime.Format.formatter -> repr_options -> Ppx_deriving_runtime.unit
val show_repr_options : repr_options -> Ppx_deriving_runtime.string
val pp_res : Ppx_deriving_runtime.Format.formatter -> res -> Ppx_deriving_runtime.unit
val show_res : res -> Ppx_deriving_runtime.string
val pp_result_of__string_or__string : Ppx_deriving_runtime.Format.formatter -> result_of__string_or__string -> Ppx_deriving_runtime.unit
val show_result_of__string_or__string : result_of__string_or__string -> Ppx_deriving_runtime.string
val pp_safety : Ppx_deriving_runtime.Format.formatter -> safety -> Ppx_deriving_runtime.unit
val show_safety : safety -> Ppx_deriving_runtime.string
val pp_scope : Ppx_deriving_runtime.Format.formatter -> scope -> Ppx_deriving_runtime.unit
val show_scope : scope -> Ppx_deriving_runtime.string
val pp_scope_data : Ppx_deriving_runtime.Format.formatter -> scope_data -> Ppx_deriving_runtime.unit
val show_scope_data : scope_data -> Ppx_deriving_runtime.string
val pp_source_map : Ppx_deriving_runtime.Format.formatter -> source_map -> Ppx_deriving_runtime.unit
val show_source_map : source_map -> Ppx_deriving_runtime.string
val pp_span : Ppx_deriving_runtime.Format.formatter -> span -> Ppx_deriving_runtime.unit
val show_span : span -> Ppx_deriving_runtime.string
val pp_spanned_for__lit_kind : Ppx_deriving_runtime.Format.formatter -> spanned_for__lit_kind -> Ppx_deriving_runtime.unit
val show_spanned_for__lit_kind : spanned_for__lit_kind -> Ppx_deriving_runtime.string
val pp_stmt : Ppx_deriving_runtime.Format.formatter -> stmt -> Ppx_deriving_runtime.unit
val show_stmt : stmt -> Ppx_deriving_runtime.string
val pp_stmt_kind : Ppx_deriving_runtime.Format.formatter -> stmt_kind -> Ppx_deriving_runtime.unit
val show_stmt_kind : stmt_kind -> Ppx_deriving_runtime.string
val pp_str_style : Ppx_deriving_runtime.Format.formatter -> str_style -> Ppx_deriving_runtime.unit
val show_str_style : str_style -> Ppx_deriving_runtime.string
val pp_term : Ppx_deriving_runtime.Format.formatter -> term -> Ppx_deriving_runtime.unit
val show_term : term -> Ppx_deriving_runtime.string
val pp_to_engine : Ppx_deriving_runtime.Format.formatter -> to_engine -> Ppx_deriving_runtime.unit
val show_to_engine : to_engine -> Ppx_deriving_runtime.string
val pp_trait_item_kind_for__decorated_for__expr_kind : Ppx_deriving_runtime.Format.formatter -> trait_item_kind_for__decorated_for__expr_kind -> Ppx_deriving_runtime.unit
val show_trait_item_kind_for__decorated_for__expr_kind : trait_item_kind_for__decorated_for__expr_kind -> Ppx_deriving_runtime.string
val pp_trait_item_for__decorated_for__expr_kind : Ppx_deriving_runtime.Format.formatter -> trait_item_for__decorated_for__expr_kind -> Ppx_deriving_runtime.unit
val show_trait_item_for__decorated_for__expr_kind : trait_item_for__decorated_for__expr_kind -> Ppx_deriving_runtime.string
val pp_trait_predicate : Ppx_deriving_runtime.Format.formatter -> trait_predicate -> Ppx_deriving_runtime.unit
val show_trait_predicate : trait_predicate -> Ppx_deriving_runtime.string
val pp_trait_ref : Ppx_deriving_runtime.Format.formatter -> trait_ref -> Ppx_deriving_runtime.unit
val show_trait_ref : trait_ref -> Ppx_deriving_runtime.string
val pp_translation_options : Ppx_deriving_runtime.Format.formatter -> translation_options -> Ppx_deriving_runtime.unit
val show_translation_options : translation_options -> Ppx_deriving_runtime.string
val pp_ty_fn_sig : Ppx_deriving_runtime.Format.formatter -> ty_fn_sig -> Ppx_deriving_runtime.unit
val show_ty_fn_sig : ty_fn_sig -> Ppx_deriving_runtime.string
val pp_ty_generics : Ppx_deriving_runtime.Format.formatter -> ty_generics -> Ppx_deriving_runtime.unit
val show_ty_generics : ty_generics -> Ppx_deriving_runtime.string
val pp_ty_kind : Ppx_deriving_runtime.Format.formatter -> ty_kind -> Ppx_deriving_runtime.unit
val show_ty_kind : ty_kind -> Ppx_deriving_runtime.string
val pp_uint_ty : Ppx_deriving_runtime.Format.formatter -> uint_ty -> Ppx_deriving_runtime.unit
val show_uint_ty : uint_ty -> Ppx_deriving_runtime.string
val pp_un_op : Ppx_deriving_runtime.Format.formatter -> un_op -> Ppx_deriving_runtime.unit
val show_un_op : un_op -> Ppx_deriving_runtime.string
val pp_use_kind : Ppx_deriving_runtime.Format.formatter -> use_kind -> Ppx_deriving_runtime.unit
val show_use_kind : use_kind -> Ppx_deriving_runtime.string
val pp_use_path : Ppx_deriving_runtime.Format.formatter -> use_path -> Ppx_deriving_runtime.unit
val show_use_path : use_path -> Ppx_deriving_runtime.string
val pp_user_type : Ppx_deriving_runtime.Format.formatter -> user_type -> Ppx_deriving_runtime.unit
val show_user_type : user_type -> Ppx_deriving_runtime.string
val pp_variance : Ppx_deriving_runtime.Format.formatter -> variance -> Ppx_deriving_runtime.unit
val show_variance : variance -> Ppx_deriving_runtime.string
val pp_variant_data : Ppx_deriving_runtime.Format.formatter -> variant_data -> Ppx_deriving_runtime.unit
val show_variant_data : variant_data -> Ppx_deriving_runtime.string
val pp_variant_informations : Ppx_deriving_runtime.Format.formatter -> variant_informations -> Ppx_deriving_runtime.unit
val show_variant_informations : variant_informations -> Ppx_deriving_runtime.string
val pp_variant_kind : Ppx_deriving_runtime.Format.formatter -> variant_kind -> Ppx_deriving_runtime.unit
val show_variant_kind : variant_kind -> Ppx_deriving_runtime.string
val pp_variant_for__decorated_for__expr_kind : Ppx_deriving_runtime.Format.formatter -> variant_for__decorated_for__expr_kind -> Ppx_deriving_runtime.unit
val show_variant_for__decorated_for__expr_kind : variant_for__decorated_for__expr_kind -> Ppx_deriving_runtime.string
val pp_with_def_ids_for__decorated_for__expr_kind : Ppx_deriving_runtime.Format.formatter -> with_def_ids_for__decorated_for__expr_kind -> Ppx_deriving_runtime.unit
val show_with_def_ids_for__decorated_for__expr_kind : with_def_ids_for__decorated_for__expr_kind -> Ppx_deriving_runtime.string
val pp_node_for__ty_kind : Ppx_deriving_runtime.Format.formatter -> node_for__ty_kind -> Ppx_deriving_runtime.unit
val show_node_for__ty_kind : node_for__ty_kind -> Ppx_deriving_runtime.string
val pp_node_for__def_id_contents : Ppx_deriving_runtime.Format.formatter -> node_for__def_id_contents -> Ppx_deriving_runtime.unit
val show_node_for__def_id_contents : node_for__def_id_contents -> Ppx_deriving_runtime.string
val equal_abi : abi -> abi -> Ppx_deriving_runtime.bool
val equal_adt_expr : adt_expr -> adt_expr -> Ppx_deriving_runtime.bool
val equal_alias : alias -> alias -> Ppx_deriving_runtime.bool
val equal_alias_kind : alias_kind -> alias_kind -> Ppx_deriving_runtime.bool
val equal_align : align -> align -> Ppx_deriving_runtime.bool
val equal_anon_const_for__decorated_for__expr_kind : anon_const_for__decorated_for__expr_kind -> anon_const_for__decorated_for__expr_kind -> Ppx_deriving_runtime.bool
val equal_arm : arm -> arm -> Ppx_deriving_runtime.bool
val equal_ascription : ascription -> ascription -> Ppx_deriving_runtime.bool
val equal_assoc_item : assoc_item -> assoc_item -> Ppx_deriving_runtime.bool
val equal_assoc_item_container : assoc_item_container -> assoc_item_container -> Ppx_deriving_runtime.bool
val equal_assoc_kind : assoc_kind -> assoc_kind -> Ppx_deriving_runtime.bool
val equal_ast_pass : ast_pass -> ast_pass -> Ppx_deriving_runtime.bool
val equal_attr_args : attr_args -> attr_args -> Ppx_deriving_runtime.bool
val equal_attr_args_eq : attr_args_eq -> attr_args_eq -> Ppx_deriving_runtime.bool
val equal_attr_item : attr_item -> attr_item -> Ppx_deriving_runtime.bool
val equal_attr_kind : attr_kind -> attr_kind -> Ppx_deriving_runtime.bool
val equal_attr_style : attr_style -> attr_style -> Ppx_deriving_runtime.bool
val equal_attribute : attribute -> attribute -> Ppx_deriving_runtime.bool
val equal_backend_options_for__null : backend_options_for__null -> backend_options_for__null -> Ppx_deriving_runtime.bool
val equal_backend_for__null : backend_for__null -> backend_for__null -> Ppx_deriving_runtime.bool
val equal_bin_op : bin_op -> bin_op -> Ppx_deriving_runtime.bool
val equal_binder_for__clause_kind : binder_for__clause_kind -> binder_for__clause_kind -> Ppx_deriving_runtime.bool
val equal_binder_for__existential_predicate : binder_for__existential_predicate -> binder_for__existential_predicate -> Ppx_deriving_runtime.bool
val equal_binder_for__trait_predicate : binder_for__trait_predicate -> binder_for__trait_predicate -> Ppx_deriving_runtime.bool
val equal_binder_for__trait_ref : binder_for__trait_ref -> binder_for__trait_ref -> Ppx_deriving_runtime.bool
val equal_binder_for__ty_fn_sig : binder_for__ty_fn_sig -> binder_for__ty_fn_sig -> Ppx_deriving_runtime.bool
val equal_binding_mode : binding_mode -> binding_mode -> Ppx_deriving_runtime.bool
val equal_block : block -> block -> Ppx_deriving_runtime.bool
val equal_block_safety : block_safety -> block_safety -> Ppx_deriving_runtime.bool
val equal_borrow_kind : borrow_kind -> borrow_kind -> Ppx_deriving_runtime.bool
val equal_bound_region : bound_region -> bound_region -> Ppx_deriving_runtime.bool
val equal_bound_region_kind : bound_region_kind -> bound_region_kind -> Ppx_deriving_runtime.bool
val equal_bound_ty : bound_ty -> bound_ty -> Ppx_deriving_runtime.bool
val equal_bound_ty_kind : bound_ty_kind -> bound_ty_kind -> Ppx_deriving_runtime.bool
val equal_bound_variable_kind : bound_variable_kind -> bound_variable_kind -> Ppx_deriving_runtime.bool
val equal_by_ref : by_ref -> by_ref -> Ppx_deriving_runtime.bool
val equal_canonical_ty_var_kind : canonical_ty_var_kind -> canonical_ty_var_kind -> Ppx_deriving_runtime.bool
val equal_canonical_user_type_annotation : canonical_user_type_annotation -> canonical_user_type_annotation -> Ppx_deriving_runtime.bool
val equal_canonical_var_info : canonical_var_info -> canonical_var_info -> Ppx_deriving_runtime.bool
val equal_canonical_for__user_type : canonical_for__user_type -> canonical_for__user_type -> Ppx_deriving_runtime.bool
val equal_clause : clause -> clause -> Ppx_deriving_runtime.bool
val equal_clause_kind : clause_kind -> clause_kind -> Ppx_deriving_runtime.bool
val equal_closure_args : closure_args -> closure_args -> Ppx_deriving_runtime.bool
val equal_closure_kind : closure_kind -> closure_kind -> Ppx_deriving_runtime.bool
val equal_command_for__null : command_for__null -> command_for__null -> Ppx_deriving_runtime.bool
val equal_comment_kind : comment_kind -> comment_kind -> Ppx_deriving_runtime.bool
val equal_const_arg_kind_for__decorated_for__expr_kind : const_arg_kind_for__decorated_for__expr_kind -> const_arg_kind_for__decorated_for__expr_kind -> Ppx_deriving_runtime.bool
val equal_const_arg_for__decorated_for__expr_kind : const_arg_for__decorated_for__expr_kind -> const_arg_for__decorated_for__expr_kind -> Ppx_deriving_runtime.bool
val equal_constant_expr_kind : constant_expr_kind -> constant_expr_kind -> Ppx_deriving_runtime.bool
val equal_constant_field_expr : constant_field_expr -> constant_field_expr -> Ppx_deriving_runtime.bool
val equal_constant_int : constant_int -> constant_int -> Ppx_deriving_runtime.bool
val equal_constant_literal : constant_literal -> constant_literal -> Ppx_deriving_runtime.bool
val equal_constness : constness -> constness -> Ppx_deriving_runtime.bool
val equal_ctor_kind : ctor_kind -> ctor_kind -> Ppx_deriving_runtime.bool
val equal_ctor_of : ctor_of -> ctor_of -> Ppx_deriving_runtime.bool
val equal_debug_engine_mode : debug_engine_mode -> debug_engine_mode -> Ppx_deriving_runtime.bool
val equal_decorated_for__constant_expr_kind : decorated_for__constant_expr_kind -> decorated_for__constant_expr_kind -> Ppx_deriving_runtime.bool
val equal_decorated_for__expr_kind : decorated_for__expr_kind -> decorated_for__expr_kind -> Ppx_deriving_runtime.bool
val equal_decorated_for__pat_kind : decorated_for__pat_kind -> decorated_for__pat_kind -> Ppx_deriving_runtime.bool
val equal_def_id : def_id -> def_id -> Ppx_deriving_runtime.bool
val equal_def_id_contents : def_id_contents -> def_id_contents -> Ppx_deriving_runtime.bool
val equal_def_kind : def_kind -> def_kind -> Ppx_deriving_runtime.bool
val equal_def_path_item : def_path_item -> def_path_item -> Ppx_deriving_runtime.bool
val equal_defaultness : defaultness -> defaultness -> Ppx_deriving_runtime.bool
val equal_delim_args : delim_args -> delim_args -> Ppx_deriving_runtime.bool
val equal_delim_span : delim_span -> delim_span -> Ppx_deriving_runtime.bool
val equal_delimiter : delimiter -> delimiter -> Ppx_deriving_runtime.bool
val equal_deps_kind : deps_kind -> deps_kind -> Ppx_deriving_runtime.bool
val equal_desugaring_kind : desugaring_kind -> desugaring_kind -> Ppx_deriving_runtime.bool
val equal_diagnostics : diagnostics -> diagnostics -> Ppx_deriving_runtime.bool
val equal_disambiguated_def_path_item : disambiguated_def_path_item -> disambiguated_def_path_item -> Ppx_deriving_runtime.bool
val equal_discriminant_definition : discriminant_definition -> discriminant_definition -> Ppx_deriving_runtime.bool
val equal_dyn_kind : dyn_kind -> dyn_kind -> Ppx_deriving_runtime.bool
val equal_early_param_region : early_param_region -> early_param_region -> Ppx_deriving_runtime.bool
val equal_edition : edition -> edition -> Ppx_deriving_runtime.bool
val equal_empty_args_extension : empty_args_extension -> empty_args_extension -> Ppx_deriving_runtime.bool
val equal_empty_subcommand_extension : empty_subcommand_extension -> empty_subcommand_extension -> Ppx_deriving_runtime.bool
val equal_engine_options : engine_options -> engine_options -> Ppx_deriving_runtime.bool
val equal_error_guaranteed : error_guaranteed -> error_guaranteed -> Ppx_deriving_runtime.bool
val equal_existential_predicate : existential_predicate -> existential_predicate -> Ppx_deriving_runtime.bool
val equal_existential_projection : existential_projection -> existential_projection -> Ppx_deriving_runtime.bool
val equal_existential_trait_ref : existential_trait_ref -> existential_trait_ref -> Ppx_deriving_runtime.bool
val equal_expn_data : expn_data -> expn_data -> Ppx_deriving_runtime.bool
val equal_expn_kind : expn_kind -> expn_kind -> Ppx_deriving_runtime.bool
val equal_export_body_kind : export_body_kind -> export_body_kind -> Ppx_deriving_runtime.bool
val equal_expr_kind : expr_kind -> expr_kind -> Ppx_deriving_runtime.bool
val equal_extensible_options_for__null : extensible_options_for__null -> extensible_options_for__null -> Ppx_deriving_runtime.bool
val equal_f_star_options_for__null : f_star_options_for__null -> f_star_options_for__null -> Ppx_deriving_runtime.bool
val equal_fake_borrow_kind : fake_borrow_kind -> fake_borrow_kind -> Ppx_deriving_runtime.bool
val equal_field_expr : field_expr -> field_expr -> Ppx_deriving_runtime.bool
val equal_field_pat : field_pat -> field_pat -> Ppx_deriving_runtime.bool
val equal_file : file -> file -> Ppx_deriving_runtime.bool
val equal_file_name : file_name -> file_name -> Ppx_deriving_runtime.bool
val equal_float_ty : float_ty -> float_ty -> Ppx_deriving_runtime.bool
val equal_fn_decl : fn_decl -> fn_decl -> Ppx_deriving_runtime.bool
val equal_fn_def_for__decorated_for__expr_kind : fn_def_for__decorated_for__expr_kind -> fn_def_for__decorated_for__expr_kind -> Ppx_deriving_runtime.bool
val equal_fn_header : fn_header -> fn_header -> Ppx_deriving_runtime.bool
val equal_fn_ret_ty : fn_ret_ty -> fn_ret_ty -> Ppx_deriving_runtime.bool
val equal_fn_sig : fn_sig -> fn_sig -> Ppx_deriving_runtime.bool
val equal_force_cargo_build : force_cargo_build -> force_cargo_build -> Ppx_deriving_runtime.bool
val equal_foreign_item_kind_for__decorated_for__expr_kind : foreign_item_kind_for__decorated_for__expr_kind -> foreign_item_kind_for__decorated_for__expr_kind -> Ppx_deriving_runtime.bool
val equal_foreign_item_for__decorated_for__expr_kind : foreign_item_for__decorated_for__expr_kind -> foreign_item_for__decorated_for__expr_kind -> Ppx_deriving_runtime.bool
val equal_from_engine : from_engine -> from_engine -> Ppx_deriving_runtime.bool
val equal_fru_info : fru_info -> fru_info -> Ppx_deriving_runtime.bool
val equal_generic_arg : generic_arg -> generic_arg -> Ppx_deriving_runtime.bool
val equal_generic_param_def : generic_param_def -> generic_param_def -> Ppx_deriving_runtime.bool
val equal_generic_param_def_kind : generic_param_def_kind -> generic_param_def_kind -> Ppx_deriving_runtime.bool
val equal_generic_param_kind_for__decorated_for__expr_kind : generic_param_kind_for__decorated_for__expr_kind -> generic_param_kind_for__decorated_for__expr_kind -> Ppx_deriving_runtime.bool
val equal_generic_param_for__decorated_for__expr_kind : generic_param_for__decorated_for__expr_kind -> generic_param_for__decorated_for__expr_kind -> Ppx_deriving_runtime.bool
val equal_generics_for__decorated_for__expr_kind : generics_for__decorated_for__expr_kind -> generics_for__decorated_for__expr_kind -> Ppx_deriving_runtime.bool
val equal_glob : glob -> glob -> Ppx_deriving_runtime.bool
val equal_ha_assoc_role : ha_assoc_role -> ha_assoc_role -> Ppx_deriving_runtime.bool
val equal_ha_item_quote : ha_item_quote -> ha_item_quote -> Ppx_deriving_runtime.bool
val equal_ha_item_quote_f_star_opts : ha_item_quote_f_star_opts -> ha_item_quote_f_star_opts -> Ppx_deriving_runtime.bool
val equal_ha_item_quote_position : ha_item_quote_position -> ha_item_quote_position -> Ppx_deriving_runtime.bool
val equal_ha_item_status : ha_item_status -> ha_item_status -> Ppx_deriving_runtime.bool
val equal_ha_payload : ha_payload -> ha_payload -> Ppx_deriving_runtime.bool
val equal_ha_uid : ha_uid -> ha_uid -> Ppx_deriving_runtime.bool
val equal_hir_field_def : hir_field_def -> hir_field_def -> Ppx_deriving_runtime.bool
val equal_hir_generic_args : hir_generic_args -> hir_generic_args -> Ppx_deriving_runtime.bool
val equal_hir_id : hir_id -> hir_id -> Ppx_deriving_runtime.bool
val equal_impl_expr : impl_expr -> impl_expr -> Ppx_deriving_runtime.bool
val equal_impl_expr_atom : impl_expr_atom -> impl_expr_atom -> Ppx_deriving_runtime.bool
val equal_impl_expr_path_chunk : impl_expr_path_chunk -> impl_expr_path_chunk -> Ppx_deriving_runtime.bool
val equal_impl_infos : impl_infos -> impl_infos -> Ppx_deriving_runtime.bool
val equal_impl_item_kind_for__decorated_for__expr_kind : impl_item_kind_for__decorated_for__expr_kind -> impl_item_kind_for__decorated_for__expr_kind -> Ppx_deriving_runtime.bool
val equal_impl_item_for__decorated_for__expr_kind : impl_item_for__decorated_for__expr_kind -> impl_item_for__decorated_for__expr_kind -> Ppx_deriving_runtime.bool
val equal_impl_polarity : impl_polarity -> impl_polarity -> Ppx_deriving_runtime.bool
val equal_impl_trait_in_trait_data : impl_trait_in_trait_data -> impl_trait_in_trait_data -> Ppx_deriving_runtime.bool
val equal_impl_for__decorated_for__expr_kind : impl_for__decorated_for__expr_kind -> impl_for__decorated_for__expr_kind -> Ppx_deriving_runtime.bool
val equal_implicit_self_kind : implicit_self_kind -> implicit_self_kind -> Ppx_deriving_runtime.bool
val equal_inclusion_clause : inclusion_clause -> inclusion_clause -> Ppx_deriving_runtime.bool
val equal_inclusion_kind : inclusion_kind -> inclusion_kind -> Ppx_deriving_runtime.bool
val equal_infer_ty : infer_ty -> infer_ty -> Ppx_deriving_runtime.bool
val equal_inline_asm : inline_asm -> inline_asm -> Ppx_deriving_runtime.bool
val equal_int_ty : int_ty -> int_ty -> Ppx_deriving_runtime.bool
val equal_integer_type : integer_type -> integer_type -> Ppx_deriving_runtime.bool
val equal_is_async : is_async -> is_async -> Ppx_deriving_runtime.bool
val equal_is_auto : is_auto -> is_auto -> Ppx_deriving_runtime.bool
val equal_item_attributes : item_attributes -> item_attributes -> Ppx_deriving_runtime.bool
val equal_item_kind_for__decorated_for__expr_kind : item_kind_for__decorated_for__expr_kind -> item_kind_for__decorated_for__expr_kind -> Ppx_deriving_runtime.bool
val equal_item_for__decorated_for__expr_kind : item_for__decorated_for__expr_kind -> item_for__decorated_for__expr_kind -> Ppx_deriving_runtime.bool
val equal_kind : kind -> kind -> Ppx_deriving_runtime.bool
val equal_late_param_region : late_param_region -> late_param_region -> Ppx_deriving_runtime.bool
val equal_lifetime_param_kind : lifetime_param_kind -> lifetime_param_kind -> Ppx_deriving_runtime.bool
val equal_lint_level : lint_level -> lint_level -> Ppx_deriving_runtime.bool
val equal_lit_float_type : lit_float_type -> lit_float_type -> Ppx_deriving_runtime.bool
val equal_lit_int_type : lit_int_type -> lit_int_type -> Ppx_deriving_runtime.bool
val equal_lit_kind : lit_kind -> lit_kind -> Ppx_deriving_runtime.bool
val equal_loc : loc -> loc -> Ppx_deriving_runtime.bool
val equal_local_ident : local_ident -> local_ident -> Ppx_deriving_runtime.bool
val equal_logical_op : logical_op -> logical_op -> Ppx_deriving_runtime.bool
val equal_macro_def : macro_def -> macro_def -> Ppx_deriving_runtime.bool
val equal_macro_invokation : macro_invokation -> macro_invokation -> Ppx_deriving_runtime.bool
val equal_macro_kind : macro_kind -> macro_kind -> Ppx_deriving_runtime.bool
val equal_message_format : message_format -> message_format -> Ppx_deriving_runtime.bool
val equal_meta_item_lit : meta_item_lit -> meta_item_lit -> Ppx_deriving_runtime.bool
val equal_missing_lifetime_kind : missing_lifetime_kind -> missing_lifetime_kind -> Ppx_deriving_runtime.bool
val equal_movability : movability -> movability -> Ppx_deriving_runtime.bool
val equal_mut_borrow_kind : mut_borrow_kind -> mut_borrow_kind -> Ppx_deriving_runtime.bool
val equal_namespace : namespace -> namespace -> Ppx_deriving_runtime.bool
val equal_namespace_chunk : namespace_chunk -> namespace_chunk -> Ppx_deriving_runtime.bool
val equal_node_for_def_id_contents_generated : node_for__def_id_contents -> node_for__def_id_contents -> Ppx_deriving_runtime.bool
val equal_node_for_ty_kind_generated : node_for__ty_kind -> node_for__ty_kind -> Ppx_deriving_runtime.bool
val equal_non_macro_attr_kind : non_macro_attr_kind -> non_macro_attr_kind -> Ppx_deriving_runtime.bool
val equal_normal_attr : normal_attr -> normal_attr -> Ppx_deriving_runtime.bool
val equal_outlives_predicate_for__node_for__ty_kind : outlives_predicate_for__node_for__ty_kind -> outlives_predicate_for__node_for__ty_kind -> Ppx_deriving_runtime.bool
val equal_outlives_predicate_for__region : outlives_predicate_for__region -> outlives_predicate_for__region -> Ppx_deriving_runtime.bool
val equal_output : output -> output -> Ppx_deriving_runtime.bool
val equal_param : param -> param -> Ppx_deriving_runtime.bool
val equal_param_const : param_const -> param_const -> Ppx_deriving_runtime.bool
val equal_param_name : param_name -> param_name -> Ppx_deriving_runtime.bool
val equal_param_ty : param_ty -> param_ty -> Ppx_deriving_runtime.bool
val equal_pat_kind : pat_kind -> pat_kind -> Ppx_deriving_runtime.bool
val equal_pat_range : pat_range -> pat_range -> Ppx_deriving_runtime.bool
val equal_pat_range_boundary : pat_range_boundary -> pat_range_boundary -> Ppx_deriving_runtime.bool
val equal_path_or_dash : path_or_dash -> path_or_dash -> Ppx_deriving_runtime.bool
val equal_path_segment : path_segment -> path_segment -> Ppx_deriving_runtime.bool
val equal_placeholder_for__bound_region : placeholder_for__bound_region -> placeholder_for__bound_region -> Ppx_deriving_runtime.bool
val equal_placeholder_for__bound_ty : placeholder_for__bound_ty -> placeholder_for__bound_ty -> Ppx_deriving_runtime.bool
val equal_placeholder_for_uint : placeholder_for_uint -> placeholder_for_uint -> Ppx_deriving_runtime.bool
val equal_pointer_coercion : pointer_coercion -> pointer_coercion -> Ppx_deriving_runtime.bool
val equal_prim_ty : prim_ty -> prim_ty -> Ppx_deriving_runtime.bool
val equal_pro_verif_options : pro_verif_options -> pro_verif_options -> Ppx_deriving_runtime.bool
val equal_profiling_data : profiling_data -> profiling_data -> Ppx_deriving_runtime.bool
val equal_projection_predicate : projection_predicate -> projection_predicate -> Ppx_deriving_runtime.bool
val equal_q_path : q_path -> q_path -> Ppx_deriving_runtime.bool
val equal_range_end : range_end -> range_end -> Ppx_deriving_runtime.bool
val equal_real_file_name : real_file_name -> real_file_name -> Ppx_deriving_runtime.bool
val equal_region : region -> region -> Ppx_deriving_runtime.bool
val equal_region_kind : region_kind -> region_kind -> Ppx_deriving_runtime.bool
val equal_repr_flags : repr_flags -> repr_flags -> Ppx_deriving_runtime.bool
val equal_repr_options : repr_options -> repr_options -> Ppx_deriving_runtime.bool
val equal_res : res -> res -> Ppx_deriving_runtime.bool
val equal_result_of__string_or__string : result_of__string_or__string -> result_of__string_or__string -> Ppx_deriving_runtime.bool
val equal_safety : safety -> safety -> Ppx_deriving_runtime.bool
val equal_scope : scope -> scope -> Ppx_deriving_runtime.bool
val equal_scope_data : scope_data -> scope_data -> Ppx_deriving_runtime.bool
val equal_source_map : source_map -> source_map -> Ppx_deriving_runtime.bool
val equal_span : span -> span -> Ppx_deriving_runtime.bool
val equal_spanned_for__lit_kind : spanned_for__lit_kind -> spanned_for__lit_kind -> Ppx_deriving_runtime.bool
val equal_stmt : stmt -> stmt -> Ppx_deriving_runtime.bool
val equal_stmt_kind : stmt_kind -> stmt_kind -> Ppx_deriving_runtime.bool
val equal_str_style : str_style -> str_style -> Ppx_deriving_runtime.bool
val equal_term : term -> term -> Ppx_deriving_runtime.bool
val equal_to_engine : to_engine -> to_engine -> Ppx_deriving_runtime.bool
val equal_trait_item_kind_for__decorated_for__expr_kind : trait_item_kind_for__decorated_for__expr_kind -> trait_item_kind_for__decorated_for__expr_kind -> Ppx_deriving_runtime.bool
val equal_trait_item_for__decorated_for__expr_kind : trait_item_for__decorated_for__expr_kind -> trait_item_for__decorated_for__expr_kind -> Ppx_deriving_runtime.bool
val equal_trait_predicate : trait_predicate -> trait_predicate -> Ppx_deriving_runtime.bool
val equal_trait_ref : trait_ref -> trait_ref -> Ppx_deriving_runtime.bool
val equal_translation_options : translation_options -> translation_options -> Ppx_deriving_runtime.bool
val equal_ty_fn_sig : ty_fn_sig -> ty_fn_sig -> Ppx_deriving_runtime.bool
val equal_ty_generics : ty_generics -> ty_generics -> Ppx_deriving_runtime.bool
val equal_ty_kind : ty_kind -> ty_kind -> Ppx_deriving_runtime.bool
val equal_uint_ty : uint_ty -> uint_ty -> Ppx_deriving_runtime.bool
val equal_un_op : un_op -> un_op -> Ppx_deriving_runtime.bool
val equal_use_kind : use_kind -> use_kind -> Ppx_deriving_runtime.bool
val equal_use_path : use_path -> use_path -> Ppx_deriving_runtime.bool
val equal_user_type : user_type -> user_type -> Ppx_deriving_runtime.bool
val equal_variance : variance -> variance -> Ppx_deriving_runtime.bool
val equal_variant_data : variant_data -> variant_data -> Ppx_deriving_runtime.bool
val equal_variant_informations : variant_informations -> variant_informations -> Ppx_deriving_runtime.bool
val equal_variant_kind : variant_kind -> variant_kind -> Ppx_deriving_runtime.bool
val equal_variant_for__decorated_for__expr_kind : variant_for__decorated_for__expr_kind -> variant_for__decorated_for__expr_kind -> Ppx_deriving_runtime.bool
val equal_with_def_ids_for__decorated_for__expr_kind : with_def_ids_for__decorated_for__expr_kind -> with_def_ids_for__decorated_for__expr_kind -> Ppx_deriving_runtime.bool
val equal_node_for__ty_kind : node_for__ty_kind -> node_for__ty_kind -> Ppx_deriving_runtime.bool
val equal_node_for__def_id_contents : node_for__def_id_contents -> node_for__def_id_contents -> Ppx_deriving_runtime.bool
type map_types = [
  1. | `TyKind of ty_kind
  2. | `DefIdContents of def_id_contents
]
val cache_map : (int64, [ `JSON of Yojson.Safe.t | `Value of map_types ]) Base.Hashtbl.t
module Exn : sig ... end
val safe_yojson_of_abi : abi -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_abi_of_yojson : Yojson.Safe.t -> (abi, Base.Error.t) Base.Result.t
val yojson_of_abi : abi -> Yojson.Safe.t
val abi_of_yojson : Yojson.Safe.t -> abi
val safe_yojson_of_adt_expr : adt_expr -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_adt_expr_of_yojson : Yojson.Safe.t -> (adt_expr, Base.Error.t) Base.Result.t
val yojson_of_adt_expr : adt_expr -> Yojson.Safe.t
val adt_expr_of_yojson : Yojson.Safe.t -> adt_expr
val safe_yojson_of_alias : alias -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_alias_of_yojson : Yojson.Safe.t -> (alias, Base.Error.t) Base.Result.t
val yojson_of_alias : alias -> Yojson.Safe.t
val alias_of_yojson : Yojson.Safe.t -> alias
val safe_yojson_of_alias_kind : alias_kind -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_alias_kind_of_yojson : Yojson.Safe.t -> (alias_kind, Base.Error.t) Base.Result.t
val yojson_of_alias_kind : alias_kind -> Yojson.Safe.t
val alias_kind_of_yojson : Yojson.Safe.t -> alias_kind
val safe_yojson_of_align : align -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_align_of_yojson : Yojson.Safe.t -> (align, Base.Error.t) Base.Result.t
val yojson_of_align : align -> Yojson.Safe.t
val align_of_yojson : Yojson.Safe.t -> align
val safe_yojson_of_anon_const_for__decorated_for__expr_kind : anon_const_for__decorated_for__expr_kind -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_anon_const_for__decorated_for__expr_kind_of_yojson : Yojson.Safe.t -> (anon_const_for__decorated_for__expr_kind, Base.Error.t) Base.Result.t
val yojson_of_anon_const_for__decorated_for__expr_kind : anon_const_for__decorated_for__expr_kind -> Yojson.Safe.t
val anon_const_for__decorated_for__expr_kind_of_yojson : Yojson.Safe.t -> anon_const_for__decorated_for__expr_kind
val safe_yojson_of_arm : arm -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_arm_of_yojson : Yojson.Safe.t -> (arm, Base.Error.t) Base.Result.t
val yojson_of_arm : arm -> Yojson.Safe.t
val arm_of_yojson : Yojson.Safe.t -> arm
val safe_yojson_of_ascription : ascription -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_ascription_of_yojson : Yojson.Safe.t -> (ascription, Base.Error.t) Base.Result.t
val yojson_of_ascription : ascription -> Yojson.Safe.t
val ascription_of_yojson : Yojson.Safe.t -> ascription
val safe_yojson_of_assoc_item : assoc_item -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_assoc_item_of_yojson : Yojson.Safe.t -> (assoc_item, Base.Error.t) Base.Result.t
val yojson_of_assoc_item : assoc_item -> Yojson.Safe.t
val assoc_item_of_yojson : Yojson.Safe.t -> assoc_item
val safe_yojson_of_assoc_item_container : assoc_item_container -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_assoc_item_container_of_yojson : Yojson.Safe.t -> (assoc_item_container, Base.Error.t) Base.Result.t
val yojson_of_assoc_item_container : assoc_item_container -> Yojson.Safe.t
val assoc_item_container_of_yojson : Yojson.Safe.t -> assoc_item_container
val safe_yojson_of_assoc_kind : assoc_kind -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_assoc_kind_of_yojson : Yojson.Safe.t -> (assoc_kind, Base.Error.t) Base.Result.t
val yojson_of_assoc_kind : assoc_kind -> Yojson.Safe.t
val assoc_kind_of_yojson : Yojson.Safe.t -> assoc_kind
val safe_yojson_of_ast_pass : ast_pass -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_ast_pass_of_yojson : Yojson.Safe.t -> (ast_pass, Base.Error.t) Base.Result.t
val yojson_of_ast_pass : ast_pass -> Yojson.Safe.t
val ast_pass_of_yojson : Yojson.Safe.t -> ast_pass
val safe_yojson_of_attr_args : attr_args -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_attr_args_of_yojson : Yojson.Safe.t -> (attr_args, Base.Error.t) Base.Result.t
val yojson_of_attr_args : attr_args -> Yojson.Safe.t
val attr_args_of_yojson : Yojson.Safe.t -> attr_args
val safe_yojson_of_attr_args_eq : attr_args_eq -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_attr_args_eq_of_yojson : Yojson.Safe.t -> (attr_args_eq, Base.Error.t) Base.Result.t
val yojson_of_attr_args_eq : attr_args_eq -> Yojson.Safe.t
val attr_args_eq_of_yojson : Yojson.Safe.t -> attr_args_eq
val safe_yojson_of_attr_item : attr_item -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_attr_item_of_yojson : Yojson.Safe.t -> (attr_item, Base.Error.t) Base.Result.t
val yojson_of_attr_item : attr_item -> Yojson.Safe.t
val attr_item_of_yojson : Yojson.Safe.t -> attr_item
val safe_yojson_of_attr_kind : attr_kind -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_attr_kind_of_yojson : Yojson.Safe.t -> (attr_kind, Base.Error.t) Base.Result.t
val yojson_of_attr_kind : attr_kind -> Yojson.Safe.t
val attr_kind_of_yojson : Yojson.Safe.t -> attr_kind
val safe_yojson_of_attr_style : attr_style -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_attr_style_of_yojson : Yojson.Safe.t -> (attr_style, Base.Error.t) Base.Result.t
val yojson_of_attr_style : attr_style -> Yojson.Safe.t
val attr_style_of_yojson : Yojson.Safe.t -> attr_style
val safe_yojson_of_attribute : attribute -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_attribute_of_yojson : Yojson.Safe.t -> (attribute, Base.Error.t) Base.Result.t
val yojson_of_attribute : attribute -> Yojson.Safe.t
val attribute_of_yojson : Yojson.Safe.t -> attribute
val safe_yojson_of_backend_options_for__null : backend_options_for__null -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_backend_options_for__null_of_yojson : Yojson.Safe.t -> (backend_options_for__null, Base.Error.t) Base.Result.t
val yojson_of_backend_options_for__null : backend_options_for__null -> Yojson.Safe.t
val backend_options_for__null_of_yojson : Yojson.Safe.t -> backend_options_for__null
val safe_yojson_of_backend_for__null : backend_for__null -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_backend_for__null_of_yojson : Yojson.Safe.t -> (backend_for__null, Base.Error.t) Base.Result.t
val yojson_of_backend_for__null : backend_for__null -> Yojson.Safe.t
val backend_for__null_of_yojson : Yojson.Safe.t -> backend_for__null
val safe_yojson_of_bin_op : bin_op -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_bin_op_of_yojson : Yojson.Safe.t -> (bin_op, Base.Error.t) Base.Result.t
val yojson_of_bin_op : bin_op -> Yojson.Safe.t
val bin_op_of_yojson : Yojson.Safe.t -> bin_op
val safe_yojson_of_binder_for__clause_kind : binder_for__clause_kind -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_binder_for__clause_kind_of_yojson : Yojson.Safe.t -> (binder_for__clause_kind, Base.Error.t) Base.Result.t
val yojson_of_binder_for__clause_kind : binder_for__clause_kind -> Yojson.Safe.t
val binder_for__clause_kind_of_yojson : Yojson.Safe.t -> binder_for__clause_kind
val safe_yojson_of_binder_for__existential_predicate : binder_for__existential_predicate -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_binder_for__existential_predicate_of_yojson : Yojson.Safe.t -> (binder_for__existential_predicate, Base.Error.t) Base.Result.t
val yojson_of_binder_for__existential_predicate : binder_for__existential_predicate -> Yojson.Safe.t
val binder_for__existential_predicate_of_yojson : Yojson.Safe.t -> binder_for__existential_predicate
val safe_yojson_of_binder_for__trait_predicate : binder_for__trait_predicate -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_binder_for__trait_predicate_of_yojson : Yojson.Safe.t -> (binder_for__trait_predicate, Base.Error.t) Base.Result.t
val yojson_of_binder_for__trait_predicate : binder_for__trait_predicate -> Yojson.Safe.t
val binder_for__trait_predicate_of_yojson : Yojson.Safe.t -> binder_for__trait_predicate
val safe_yojson_of_binder_for__trait_ref : binder_for__trait_ref -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_binder_for__trait_ref_of_yojson : Yojson.Safe.t -> (binder_for__trait_ref, Base.Error.t) Base.Result.t
val yojson_of_binder_for__trait_ref : binder_for__trait_ref -> Yojson.Safe.t
val binder_for__trait_ref_of_yojson : Yojson.Safe.t -> binder_for__trait_ref
val safe_yojson_of_binder_for__ty_fn_sig : binder_for__ty_fn_sig -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_binder_for__ty_fn_sig_of_yojson : Yojson.Safe.t -> (binder_for__ty_fn_sig, Base.Error.t) Base.Result.t
val yojson_of_binder_for__ty_fn_sig : binder_for__ty_fn_sig -> Yojson.Safe.t
val binder_for__ty_fn_sig_of_yojson : Yojson.Safe.t -> binder_for__ty_fn_sig
val safe_yojson_of_binding_mode : binding_mode -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_binding_mode_of_yojson : Yojson.Safe.t -> (binding_mode, Base.Error.t) Base.Result.t
val yojson_of_binding_mode : binding_mode -> Yojson.Safe.t
val binding_mode_of_yojson : Yojson.Safe.t -> binding_mode
val safe_yojson_of_block : block -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_block_of_yojson : Yojson.Safe.t -> (block, Base.Error.t) Base.Result.t
val yojson_of_block : block -> Yojson.Safe.t
val block_of_yojson : Yojson.Safe.t -> block
val safe_yojson_of_block_safety : block_safety -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_block_safety_of_yojson : Yojson.Safe.t -> (block_safety, Base.Error.t) Base.Result.t
val yojson_of_block_safety : block_safety -> Yojson.Safe.t
val block_safety_of_yojson : Yojson.Safe.t -> block_safety
val safe_yojson_of_borrow_kind : borrow_kind -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_borrow_kind_of_yojson : Yojson.Safe.t -> (borrow_kind, Base.Error.t) Base.Result.t
val yojson_of_borrow_kind : borrow_kind -> Yojson.Safe.t
val borrow_kind_of_yojson : Yojson.Safe.t -> borrow_kind
val safe_yojson_of_bound_region : bound_region -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_bound_region_of_yojson : Yojson.Safe.t -> (bound_region, Base.Error.t) Base.Result.t
val yojson_of_bound_region : bound_region -> Yojson.Safe.t
val bound_region_of_yojson : Yojson.Safe.t -> bound_region
val safe_yojson_of_bound_region_kind : bound_region_kind -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_bound_region_kind_of_yojson : Yojson.Safe.t -> (bound_region_kind, Base.Error.t) Base.Result.t
val yojson_of_bound_region_kind : bound_region_kind -> Yojson.Safe.t
val bound_region_kind_of_yojson : Yojson.Safe.t -> bound_region_kind
val safe_yojson_of_bound_ty : bound_ty -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_bound_ty_of_yojson : Yojson.Safe.t -> (bound_ty, Base.Error.t) Base.Result.t
val yojson_of_bound_ty : bound_ty -> Yojson.Safe.t
val bound_ty_of_yojson : Yojson.Safe.t -> bound_ty
val safe_yojson_of_bound_ty_kind : bound_ty_kind -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_bound_ty_kind_of_yojson : Yojson.Safe.t -> (bound_ty_kind, Base.Error.t) Base.Result.t
val yojson_of_bound_ty_kind : bound_ty_kind -> Yojson.Safe.t
val bound_ty_kind_of_yojson : Yojson.Safe.t -> bound_ty_kind
val safe_yojson_of_bound_variable_kind : bound_variable_kind -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_bound_variable_kind_of_yojson : Yojson.Safe.t -> (bound_variable_kind, Base.Error.t) Base.Result.t
val yojson_of_bound_variable_kind : bound_variable_kind -> Yojson.Safe.t
val bound_variable_kind_of_yojson : Yojson.Safe.t -> bound_variable_kind
val safe_yojson_of_by_ref : by_ref -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_by_ref_of_yojson : Yojson.Safe.t -> (by_ref, Base.Error.t) Base.Result.t
val yojson_of_by_ref : by_ref -> Yojson.Safe.t
val by_ref_of_yojson : Yojson.Safe.t -> by_ref
val safe_yojson_of_canonical_ty_var_kind : canonical_ty_var_kind -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_canonical_ty_var_kind_of_yojson : Yojson.Safe.t -> (canonical_ty_var_kind, Base.Error.t) Base.Result.t
val yojson_of_canonical_ty_var_kind : canonical_ty_var_kind -> Yojson.Safe.t
val canonical_ty_var_kind_of_yojson : Yojson.Safe.t -> canonical_ty_var_kind
val safe_yojson_of_canonical_user_type_annotation : canonical_user_type_annotation -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_canonical_user_type_annotation_of_yojson : Yojson.Safe.t -> (canonical_user_type_annotation, Base.Error.t) Base.Result.t
val yojson_of_canonical_user_type_annotation : canonical_user_type_annotation -> Yojson.Safe.t
val canonical_user_type_annotation_of_yojson : Yojson.Safe.t -> canonical_user_type_annotation
val safe_yojson_of_canonical_var_info : canonical_var_info -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_canonical_var_info_of_yojson : Yojson.Safe.t -> (canonical_var_info, Base.Error.t) Base.Result.t
val yojson_of_canonical_var_info : canonical_var_info -> Yojson.Safe.t
val canonical_var_info_of_yojson : Yojson.Safe.t -> canonical_var_info
val safe_yojson_of_canonical_for__user_type : canonical_for__user_type -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_canonical_for__user_type_of_yojson : Yojson.Safe.t -> (canonical_for__user_type, Base.Error.t) Base.Result.t
val yojson_of_canonical_for__user_type : canonical_for__user_type -> Yojson.Safe.t
val canonical_for__user_type_of_yojson : Yojson.Safe.t -> canonical_for__user_type
val safe_yojson_of_clause : clause -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_clause_of_yojson : Yojson.Safe.t -> (clause, Base.Error.t) Base.Result.t
val yojson_of_clause : clause -> Yojson.Safe.t
val clause_of_yojson : Yojson.Safe.t -> clause
val safe_yojson_of_clause_kind : clause_kind -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_clause_kind_of_yojson : Yojson.Safe.t -> (clause_kind, Base.Error.t) Base.Result.t
val yojson_of_clause_kind : clause_kind -> Yojson.Safe.t
val clause_kind_of_yojson : Yojson.Safe.t -> clause_kind
val safe_yojson_of_closure_args : closure_args -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_closure_args_of_yojson : Yojson.Safe.t -> (closure_args, Base.Error.t) Base.Result.t
val yojson_of_closure_args : closure_args -> Yojson.Safe.t
val closure_args_of_yojson : Yojson.Safe.t -> closure_args
val safe_yojson_of_closure_kind : closure_kind -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_closure_kind_of_yojson : Yojson.Safe.t -> (closure_kind, Base.Error.t) Base.Result.t
val yojson_of_closure_kind : closure_kind -> Yojson.Safe.t
val closure_kind_of_yojson : Yojson.Safe.t -> closure_kind
val safe_yojson_of_command_for__null : command_for__null -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_command_for__null_of_yojson : Yojson.Safe.t -> (command_for__null, Base.Error.t) Base.Result.t
val yojson_of_command_for__null : command_for__null -> Yojson.Safe.t
val command_for__null_of_yojson : Yojson.Safe.t -> command_for__null
val safe_yojson_of_comment_kind : comment_kind -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_comment_kind_of_yojson : Yojson.Safe.t -> (comment_kind, Base.Error.t) Base.Result.t
val yojson_of_comment_kind : comment_kind -> Yojson.Safe.t
val comment_kind_of_yojson : Yojson.Safe.t -> comment_kind
val safe_yojson_of_const_arg_kind_for__decorated_for__expr_kind : const_arg_kind_for__decorated_for__expr_kind -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_const_arg_kind_for__decorated_for__expr_kind_of_yojson : Yojson.Safe.t -> (const_arg_kind_for__decorated_for__expr_kind, Base.Error.t) Base.Result.t
val yojson_of_const_arg_kind_for__decorated_for__expr_kind : const_arg_kind_for__decorated_for__expr_kind -> Yojson.Safe.t
val const_arg_kind_for__decorated_for__expr_kind_of_yojson : Yojson.Safe.t -> const_arg_kind_for__decorated_for__expr_kind
val safe_yojson_of_const_arg_for__decorated_for__expr_kind : const_arg_for__decorated_for__expr_kind -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_const_arg_for__decorated_for__expr_kind_of_yojson : Yojson.Safe.t -> (const_arg_for__decorated_for__expr_kind, Base.Error.t) Base.Result.t
val yojson_of_const_arg_for__decorated_for__expr_kind : const_arg_for__decorated_for__expr_kind -> Yojson.Safe.t
val const_arg_for__decorated_for__expr_kind_of_yojson : Yojson.Safe.t -> const_arg_for__decorated_for__expr_kind
val safe_yojson_of_constant_expr_kind : constant_expr_kind -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_constant_expr_kind_of_yojson : Yojson.Safe.t -> (constant_expr_kind, Base.Error.t) Base.Result.t
val yojson_of_constant_expr_kind : constant_expr_kind -> Yojson.Safe.t
val constant_expr_kind_of_yojson : Yojson.Safe.t -> constant_expr_kind
val safe_yojson_of_constant_field_expr : constant_field_expr -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_constant_field_expr_of_yojson : Yojson.Safe.t -> (constant_field_expr, Base.Error.t) Base.Result.t
val yojson_of_constant_field_expr : constant_field_expr -> Yojson.Safe.t
val constant_field_expr_of_yojson : Yojson.Safe.t -> constant_field_expr
val safe_yojson_of_constant_int : constant_int -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_constant_int_of_yojson : Yojson.Safe.t -> (constant_int, Base.Error.t) Base.Result.t
val yojson_of_constant_int : constant_int -> Yojson.Safe.t
val constant_int_of_yojson : Yojson.Safe.t -> constant_int
val safe_yojson_of_constant_literal : constant_literal -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_constant_literal_of_yojson : Yojson.Safe.t -> (constant_literal, Base.Error.t) Base.Result.t
val yojson_of_constant_literal : constant_literal -> Yojson.Safe.t
val constant_literal_of_yojson : Yojson.Safe.t -> constant_literal
val safe_yojson_of_constness : constness -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_constness_of_yojson : Yojson.Safe.t -> (constness, Base.Error.t) Base.Result.t
val yojson_of_constness : constness -> Yojson.Safe.t
val constness_of_yojson : Yojson.Safe.t -> constness
val safe_yojson_of_ctor_kind : ctor_kind -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_ctor_kind_of_yojson : Yojson.Safe.t -> (ctor_kind, Base.Error.t) Base.Result.t
val yojson_of_ctor_kind : ctor_kind -> Yojson.Safe.t
val ctor_kind_of_yojson : Yojson.Safe.t -> ctor_kind
val safe_yojson_of_ctor_of : ctor_of -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_ctor_of_of_yojson : Yojson.Safe.t -> (ctor_of, Base.Error.t) Base.Result.t
val yojson_of_ctor_of : ctor_of -> Yojson.Safe.t
val ctor_of_of_yojson : Yojson.Safe.t -> ctor_of
val safe_yojson_of_debug_engine_mode : debug_engine_mode -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_debug_engine_mode_of_yojson : Yojson.Safe.t -> (debug_engine_mode, Base.Error.t) Base.Result.t
val yojson_of_debug_engine_mode : debug_engine_mode -> Yojson.Safe.t
val debug_engine_mode_of_yojson : Yojson.Safe.t -> debug_engine_mode
val safe_yojson_of_decorated_for__constant_expr_kind : decorated_for__constant_expr_kind -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_decorated_for__constant_expr_kind_of_yojson : Yojson.Safe.t -> (decorated_for__constant_expr_kind, Base.Error.t) Base.Result.t
val yojson_of_decorated_for__constant_expr_kind : decorated_for__constant_expr_kind -> Yojson.Safe.t
val decorated_for__constant_expr_kind_of_yojson : Yojson.Safe.t -> decorated_for__constant_expr_kind
val safe_yojson_of_decorated_for__expr_kind : decorated_for__expr_kind -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_decorated_for__expr_kind_of_yojson : Yojson.Safe.t -> (decorated_for__expr_kind, Base.Error.t) Base.Result.t
val yojson_of_decorated_for__expr_kind : decorated_for__expr_kind -> Yojson.Safe.t
val decorated_for__expr_kind_of_yojson : Yojson.Safe.t -> decorated_for__expr_kind
val safe_yojson_of_decorated_for__pat_kind : decorated_for__pat_kind -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_decorated_for__pat_kind_of_yojson : Yojson.Safe.t -> (decorated_for__pat_kind, Base.Error.t) Base.Result.t
val yojson_of_decorated_for__pat_kind : decorated_for__pat_kind -> Yojson.Safe.t
val decorated_for__pat_kind_of_yojson : Yojson.Safe.t -> decorated_for__pat_kind
val safe_yojson_of_def_id : def_id -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_def_id_of_yojson : Yojson.Safe.t -> (def_id, Base.Error.t) Base.Result.t
val yojson_of_def_id : def_id -> Yojson.Safe.t
val def_id_of_yojson : Yojson.Safe.t -> def_id
val safe_yojson_of_def_id_contents : def_id_contents -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_def_id_contents_of_yojson : Yojson.Safe.t -> (def_id_contents, Base.Error.t) Base.Result.t
val yojson_of_def_id_contents : def_id_contents -> Yojson.Safe.t
val def_id_contents_of_yojson : Yojson.Safe.t -> def_id_contents
val safe_yojson_of_def_kind : def_kind -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_def_kind_of_yojson : Yojson.Safe.t -> (def_kind, Base.Error.t) Base.Result.t
val yojson_of_def_kind : def_kind -> Yojson.Safe.t
val def_kind_of_yojson : Yojson.Safe.t -> def_kind
val safe_yojson_of_def_path_item : def_path_item -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_def_path_item_of_yojson : Yojson.Safe.t -> (def_path_item, Base.Error.t) Base.Result.t
val yojson_of_def_path_item : def_path_item -> Yojson.Safe.t
val def_path_item_of_yojson : Yojson.Safe.t -> def_path_item
val safe_yojson_of_defaultness : defaultness -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_defaultness_of_yojson : Yojson.Safe.t -> (defaultness, Base.Error.t) Base.Result.t
val yojson_of_defaultness : defaultness -> Yojson.Safe.t
val defaultness_of_yojson : Yojson.Safe.t -> defaultness
val safe_yojson_of_delim_args : delim_args -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_delim_args_of_yojson : Yojson.Safe.t -> (delim_args, Base.Error.t) Base.Result.t
val yojson_of_delim_args : delim_args -> Yojson.Safe.t
val delim_args_of_yojson : Yojson.Safe.t -> delim_args
val safe_yojson_of_delim_span : delim_span -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_delim_span_of_yojson : Yojson.Safe.t -> (delim_span, Base.Error.t) Base.Result.t
val yojson_of_delim_span : delim_span -> Yojson.Safe.t
val delim_span_of_yojson : Yojson.Safe.t -> delim_span
val safe_yojson_of_delimiter : delimiter -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_delimiter_of_yojson : Yojson.Safe.t -> (delimiter, Base.Error.t) Base.Result.t
val yojson_of_delimiter : delimiter -> Yojson.Safe.t
val delimiter_of_yojson : Yojson.Safe.t -> delimiter
val safe_yojson_of_deps_kind : deps_kind -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_deps_kind_of_yojson : Yojson.Safe.t -> (deps_kind, Base.Error.t) Base.Result.t
val yojson_of_deps_kind : deps_kind -> Yojson.Safe.t
val deps_kind_of_yojson : Yojson.Safe.t -> deps_kind
val safe_yojson_of_desugaring_kind : desugaring_kind -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_desugaring_kind_of_yojson : Yojson.Safe.t -> (desugaring_kind, Base.Error.t) Base.Result.t
val yojson_of_desugaring_kind : desugaring_kind -> Yojson.Safe.t
val desugaring_kind_of_yojson : Yojson.Safe.t -> desugaring_kind
val safe_yojson_of_diagnostics : diagnostics -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_diagnostics_of_yojson : Yojson.Safe.t -> (diagnostics, Base.Error.t) Base.Result.t
val yojson_of_diagnostics : diagnostics -> Yojson.Safe.t
val diagnostics_of_yojson : Yojson.Safe.t -> diagnostics
val safe_yojson_of_disambiguated_def_path_item : disambiguated_def_path_item -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_disambiguated_def_path_item_of_yojson : Yojson.Safe.t -> (disambiguated_def_path_item, Base.Error.t) Base.Result.t
val yojson_of_disambiguated_def_path_item : disambiguated_def_path_item -> Yojson.Safe.t
val disambiguated_def_path_item_of_yojson : Yojson.Safe.t -> disambiguated_def_path_item
val safe_yojson_of_discriminant_definition : discriminant_definition -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_discriminant_definition_of_yojson : Yojson.Safe.t -> (discriminant_definition, Base.Error.t) Base.Result.t
val yojson_of_discriminant_definition : discriminant_definition -> Yojson.Safe.t
val discriminant_definition_of_yojson : Yojson.Safe.t -> discriminant_definition
val safe_yojson_of_dyn_kind : dyn_kind -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_dyn_kind_of_yojson : Yojson.Safe.t -> (dyn_kind, Base.Error.t) Base.Result.t
val yojson_of_dyn_kind : dyn_kind -> Yojson.Safe.t
val dyn_kind_of_yojson : Yojson.Safe.t -> dyn_kind
val safe_yojson_of_early_param_region : early_param_region -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_early_param_region_of_yojson : Yojson.Safe.t -> (early_param_region, Base.Error.t) Base.Result.t
val yojson_of_early_param_region : early_param_region -> Yojson.Safe.t
val early_param_region_of_yojson : Yojson.Safe.t -> early_param_region
val safe_yojson_of_edition : edition -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_edition_of_yojson : Yojson.Safe.t -> (edition, Base.Error.t) Base.Result.t
val yojson_of_edition : edition -> Yojson.Safe.t
val edition_of_yojson : Yojson.Safe.t -> edition
val safe_yojson_of_empty_args_extension : empty_args_extension -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_empty_args_extension_of_yojson : Yojson.Safe.t -> (empty_args_extension, Base.Error.t) Base.Result.t
val yojson_of_empty_args_extension : empty_args_extension -> Yojson.Safe.t
val empty_args_extension_of_yojson : Yojson.Safe.t -> empty_args_extension
val safe_yojson_of_empty_subcommand_extension : empty_subcommand_extension -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_empty_subcommand_extension_of_yojson : Yojson.Safe.t -> (empty_subcommand_extension, Base.Error.t) Base.Result.t
val yojson_of_empty_subcommand_extension : empty_subcommand_extension -> Yojson.Safe.t
val empty_subcommand_extension_of_yojson : Yojson.Safe.t -> empty_subcommand_extension
val safe_yojson_of_engine_options : engine_options -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_engine_options_of_yojson : Yojson.Safe.t -> (engine_options, Base.Error.t) Base.Result.t
val yojson_of_engine_options : engine_options -> Yojson.Safe.t
val engine_options_of_yojson : Yojson.Safe.t -> engine_options
val safe_yojson_of_error_guaranteed : error_guaranteed -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_error_guaranteed_of_yojson : Yojson.Safe.t -> (error_guaranteed, Base.Error.t) Base.Result.t
val yojson_of_error_guaranteed : error_guaranteed -> Yojson.Safe.t
val error_guaranteed_of_yojson : Yojson.Safe.t -> error_guaranteed
val safe_yojson_of_existential_predicate : existential_predicate -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_existential_predicate_of_yojson : Yojson.Safe.t -> (existential_predicate, Base.Error.t) Base.Result.t
val yojson_of_existential_predicate : existential_predicate -> Yojson.Safe.t
val existential_predicate_of_yojson : Yojson.Safe.t -> existential_predicate
val safe_yojson_of_existential_projection : existential_projection -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_existential_projection_of_yojson : Yojson.Safe.t -> (existential_projection, Base.Error.t) Base.Result.t
val yojson_of_existential_projection : existential_projection -> Yojson.Safe.t
val existential_projection_of_yojson : Yojson.Safe.t -> existential_projection
val safe_yojson_of_existential_trait_ref : existential_trait_ref -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_existential_trait_ref_of_yojson : Yojson.Safe.t -> (existential_trait_ref, Base.Error.t) Base.Result.t
val yojson_of_existential_trait_ref : existential_trait_ref -> Yojson.Safe.t
val existential_trait_ref_of_yojson : Yojson.Safe.t -> existential_trait_ref
val safe_yojson_of_expn_data : expn_data -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_expn_data_of_yojson : Yojson.Safe.t -> (expn_data, Base.Error.t) Base.Result.t
val yojson_of_expn_data : expn_data -> Yojson.Safe.t
val expn_data_of_yojson : Yojson.Safe.t -> expn_data
val safe_yojson_of_expn_kind : expn_kind -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_expn_kind_of_yojson : Yojson.Safe.t -> (expn_kind, Base.Error.t) Base.Result.t
val yojson_of_expn_kind : expn_kind -> Yojson.Safe.t
val expn_kind_of_yojson : Yojson.Safe.t -> expn_kind
val safe_yojson_of_export_body_kind : export_body_kind -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_export_body_kind_of_yojson : Yojson.Safe.t -> (export_body_kind, Base.Error.t) Base.Result.t
val yojson_of_export_body_kind : export_body_kind -> Yojson.Safe.t
val export_body_kind_of_yojson : Yojson.Safe.t -> export_body_kind
val safe_yojson_of_expr_kind : expr_kind -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_expr_kind_of_yojson : Yojson.Safe.t -> (expr_kind, Base.Error.t) Base.Result.t
val yojson_of_expr_kind : expr_kind -> Yojson.Safe.t
val expr_kind_of_yojson : Yojson.Safe.t -> expr_kind
val safe_yojson_of_extensible_options_for__null : extensible_options_for__null -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_extensible_options_for__null_of_yojson : Yojson.Safe.t -> (extensible_options_for__null, Base.Error.t) Base.Result.t
val yojson_of_extensible_options_for__null : extensible_options_for__null -> Yojson.Safe.t
val extensible_options_for__null_of_yojson : Yojson.Safe.t -> extensible_options_for__null
val safe_yojson_of_f_star_options_for__null : f_star_options_for__null -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_f_star_options_for__null_of_yojson : Yojson.Safe.t -> (f_star_options_for__null, Base.Error.t) Base.Result.t
val yojson_of_f_star_options_for__null : f_star_options_for__null -> Yojson.Safe.t
val f_star_options_for__null_of_yojson : Yojson.Safe.t -> f_star_options_for__null
val safe_yojson_of_fake_borrow_kind : fake_borrow_kind -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_fake_borrow_kind_of_yojson : Yojson.Safe.t -> (fake_borrow_kind, Base.Error.t) Base.Result.t
val yojson_of_fake_borrow_kind : fake_borrow_kind -> Yojson.Safe.t
val fake_borrow_kind_of_yojson : Yojson.Safe.t -> fake_borrow_kind
val safe_yojson_of_field_expr : field_expr -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_field_expr_of_yojson : Yojson.Safe.t -> (field_expr, Base.Error.t) Base.Result.t
val yojson_of_field_expr : field_expr -> Yojson.Safe.t
val field_expr_of_yojson : Yojson.Safe.t -> field_expr
val safe_yojson_of_field_pat : field_pat -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_field_pat_of_yojson : Yojson.Safe.t -> (field_pat, Base.Error.t) Base.Result.t
val yojson_of_field_pat : field_pat -> Yojson.Safe.t
val field_pat_of_yojson : Yojson.Safe.t -> field_pat
val safe_yojson_of_file : file -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_file_of_yojson : Yojson.Safe.t -> (file, Base.Error.t) Base.Result.t
val yojson_of_file : file -> Yojson.Safe.t
val file_of_yojson : Yojson.Safe.t -> file
val safe_yojson_of_file_name : file_name -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_file_name_of_yojson : Yojson.Safe.t -> (file_name, Base.Error.t) Base.Result.t
val yojson_of_file_name : file_name -> Yojson.Safe.t
val file_name_of_yojson : Yojson.Safe.t -> file_name
val safe_yojson_of_float_ty : float_ty -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_float_ty_of_yojson : Yojson.Safe.t -> (float_ty, Base.Error.t) Base.Result.t
val yojson_of_float_ty : float_ty -> Yojson.Safe.t
val float_ty_of_yojson : Yojson.Safe.t -> float_ty
val safe_yojson_of_fn_decl : fn_decl -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_fn_decl_of_yojson : Yojson.Safe.t -> (fn_decl, Base.Error.t) Base.Result.t
val yojson_of_fn_decl : fn_decl -> Yojson.Safe.t
val fn_decl_of_yojson : Yojson.Safe.t -> fn_decl
val safe_yojson_of_fn_def_for__decorated_for__expr_kind : fn_def_for__decorated_for__expr_kind -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_fn_def_for__decorated_for__expr_kind_of_yojson : Yojson.Safe.t -> (fn_def_for__decorated_for__expr_kind, Base.Error.t) Base.Result.t
val yojson_of_fn_def_for__decorated_for__expr_kind : fn_def_for__decorated_for__expr_kind -> Yojson.Safe.t
val fn_def_for__decorated_for__expr_kind_of_yojson : Yojson.Safe.t -> fn_def_for__decorated_for__expr_kind
val safe_yojson_of_fn_header : fn_header -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_fn_header_of_yojson : Yojson.Safe.t -> (fn_header, Base.Error.t) Base.Result.t
val yojson_of_fn_header : fn_header -> Yojson.Safe.t
val fn_header_of_yojson : Yojson.Safe.t -> fn_header
val safe_yojson_of_fn_ret_ty : fn_ret_ty -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_fn_ret_ty_of_yojson : Yojson.Safe.t -> (fn_ret_ty, Base.Error.t) Base.Result.t
val yojson_of_fn_ret_ty : fn_ret_ty -> Yojson.Safe.t
val fn_ret_ty_of_yojson : Yojson.Safe.t -> fn_ret_ty
val safe_yojson_of_fn_sig : fn_sig -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_fn_sig_of_yojson : Yojson.Safe.t -> (fn_sig, Base.Error.t) Base.Result.t
val yojson_of_fn_sig : fn_sig -> Yojson.Safe.t
val fn_sig_of_yojson : Yojson.Safe.t -> fn_sig
val safe_yojson_of_force_cargo_build : force_cargo_build -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_force_cargo_build_of_yojson : Yojson.Safe.t -> (force_cargo_build, Base.Error.t) Base.Result.t
val yojson_of_force_cargo_build : force_cargo_build -> Yojson.Safe.t
val force_cargo_build_of_yojson : Yojson.Safe.t -> force_cargo_build
val safe_yojson_of_foreign_item_kind_for__decorated_for__expr_kind : foreign_item_kind_for__decorated_for__expr_kind -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_foreign_item_kind_for__decorated_for__expr_kind_of_yojson : Yojson.Safe.t -> (foreign_item_kind_for__decorated_for__expr_kind, Base.Error.t) Base.Result.t
val yojson_of_foreign_item_kind_for__decorated_for__expr_kind : foreign_item_kind_for__decorated_for__expr_kind -> Yojson.Safe.t
val foreign_item_kind_for__decorated_for__expr_kind_of_yojson : Yojson.Safe.t -> foreign_item_kind_for__decorated_for__expr_kind
val safe_yojson_of_foreign_item_for__decorated_for__expr_kind : foreign_item_for__decorated_for__expr_kind -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_foreign_item_for__decorated_for__expr_kind_of_yojson : Yojson.Safe.t -> (foreign_item_for__decorated_for__expr_kind, Base.Error.t) Base.Result.t
val yojson_of_foreign_item_for__decorated_for__expr_kind : foreign_item_for__decorated_for__expr_kind -> Yojson.Safe.t
val foreign_item_for__decorated_for__expr_kind_of_yojson : Yojson.Safe.t -> foreign_item_for__decorated_for__expr_kind
val safe_yojson_of_from_engine : from_engine -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_from_engine_of_yojson : Yojson.Safe.t -> (from_engine, Base.Error.t) Base.Result.t
val yojson_of_from_engine : from_engine -> Yojson.Safe.t
val from_engine_of_yojson : Yojson.Safe.t -> from_engine
val safe_yojson_of_fru_info : fru_info -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_fru_info_of_yojson : Yojson.Safe.t -> (fru_info, Base.Error.t) Base.Result.t
val yojson_of_fru_info : fru_info -> Yojson.Safe.t
val fru_info_of_yojson : Yojson.Safe.t -> fru_info
val safe_yojson_of_generic_arg : generic_arg -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_generic_arg_of_yojson : Yojson.Safe.t -> (generic_arg, Base.Error.t) Base.Result.t
val yojson_of_generic_arg : generic_arg -> Yojson.Safe.t
val generic_arg_of_yojson : Yojson.Safe.t -> generic_arg
val safe_yojson_of_generic_param_def : generic_param_def -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_generic_param_def_of_yojson : Yojson.Safe.t -> (generic_param_def, Base.Error.t) Base.Result.t
val yojson_of_generic_param_def : generic_param_def -> Yojson.Safe.t
val generic_param_def_of_yojson : Yojson.Safe.t -> generic_param_def
val safe_yojson_of_generic_param_def_kind : generic_param_def_kind -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_generic_param_def_kind_of_yojson : Yojson.Safe.t -> (generic_param_def_kind, Base.Error.t) Base.Result.t
val yojson_of_generic_param_def_kind : generic_param_def_kind -> Yojson.Safe.t
val generic_param_def_kind_of_yojson : Yojson.Safe.t -> generic_param_def_kind
val safe_yojson_of_generic_param_kind_for__decorated_for__expr_kind : generic_param_kind_for__decorated_for__expr_kind -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_generic_param_kind_for__decorated_for__expr_kind_of_yojson : Yojson.Safe.t -> (generic_param_kind_for__decorated_for__expr_kind, Base.Error.t) Base.Result.t
val yojson_of_generic_param_kind_for__decorated_for__expr_kind : generic_param_kind_for__decorated_for__expr_kind -> Yojson.Safe.t
val generic_param_kind_for__decorated_for__expr_kind_of_yojson : Yojson.Safe.t -> generic_param_kind_for__decorated_for__expr_kind
val safe_yojson_of_generic_param_for__decorated_for__expr_kind : generic_param_for__decorated_for__expr_kind -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_generic_param_for__decorated_for__expr_kind_of_yojson : Yojson.Safe.t -> (generic_param_for__decorated_for__expr_kind, Base.Error.t) Base.Result.t
val yojson_of_generic_param_for__decorated_for__expr_kind : generic_param_for__decorated_for__expr_kind -> Yojson.Safe.t
val generic_param_for__decorated_for__expr_kind_of_yojson : Yojson.Safe.t -> generic_param_for__decorated_for__expr_kind
val safe_yojson_of_generics_for__decorated_for__expr_kind : generics_for__decorated_for__expr_kind -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_generics_for__decorated_for__expr_kind_of_yojson : Yojson.Safe.t -> (generics_for__decorated_for__expr_kind, Base.Error.t) Base.Result.t
val yojson_of_generics_for__decorated_for__expr_kind : generics_for__decorated_for__expr_kind -> Yojson.Safe.t
val generics_for__decorated_for__expr_kind_of_yojson : Yojson.Safe.t -> generics_for__decorated_for__expr_kind
val safe_yojson_of_glob : glob -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_glob_of_yojson : Yojson.Safe.t -> (glob, Base.Error.t) Base.Result.t
val yojson_of_glob : glob -> Yojson.Safe.t
val glob_of_yojson : Yojson.Safe.t -> glob
val safe_yojson_of_ha_assoc_role : ha_assoc_role -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_ha_assoc_role_of_yojson : Yojson.Safe.t -> (ha_assoc_role, Base.Error.t) Base.Result.t
val yojson_of_ha_assoc_role : ha_assoc_role -> Yojson.Safe.t
val ha_assoc_role_of_yojson : Yojson.Safe.t -> ha_assoc_role
val safe_yojson_of_ha_item_quote : ha_item_quote -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_ha_item_quote_of_yojson : Yojson.Safe.t -> (ha_item_quote, Base.Error.t) Base.Result.t
val yojson_of_ha_item_quote : ha_item_quote -> Yojson.Safe.t
val ha_item_quote_of_yojson : Yojson.Safe.t -> ha_item_quote
val safe_yojson_of_ha_item_quote_f_star_opts : ha_item_quote_f_star_opts -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_ha_item_quote_f_star_opts_of_yojson : Yojson.Safe.t -> (ha_item_quote_f_star_opts, Base.Error.t) Base.Result.t
val yojson_of_ha_item_quote_f_star_opts : ha_item_quote_f_star_opts -> Yojson.Safe.t
val ha_item_quote_f_star_opts_of_yojson : Yojson.Safe.t -> ha_item_quote_f_star_opts
val safe_yojson_of_ha_item_quote_position : ha_item_quote_position -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_ha_item_quote_position_of_yojson : Yojson.Safe.t -> (ha_item_quote_position, Base.Error.t) Base.Result.t
val yojson_of_ha_item_quote_position : ha_item_quote_position -> Yojson.Safe.t
val ha_item_quote_position_of_yojson : Yojson.Safe.t -> ha_item_quote_position
val safe_yojson_of_ha_item_status : ha_item_status -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_ha_item_status_of_yojson : Yojson.Safe.t -> (ha_item_status, Base.Error.t) Base.Result.t
val yojson_of_ha_item_status : ha_item_status -> Yojson.Safe.t
val ha_item_status_of_yojson : Yojson.Safe.t -> ha_item_status
val safe_yojson_of_ha_payload : ha_payload -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_ha_payload_of_yojson : Yojson.Safe.t -> (ha_payload, Base.Error.t) Base.Result.t
val yojson_of_ha_payload : ha_payload -> Yojson.Safe.t
val ha_payload_of_yojson : Yojson.Safe.t -> ha_payload
val safe_yojson_of_ha_uid : ha_uid -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_ha_uid_of_yojson : Yojson.Safe.t -> (ha_uid, Base.Error.t) Base.Result.t
val yojson_of_ha_uid : ha_uid -> Yojson.Safe.t
val ha_uid_of_yojson : Yojson.Safe.t -> ha_uid
val safe_yojson_of_hir_field_def : hir_field_def -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_hir_field_def_of_yojson : Yojson.Safe.t -> (hir_field_def, Base.Error.t) Base.Result.t
val yojson_of_hir_field_def : hir_field_def -> Yojson.Safe.t
val hir_field_def_of_yojson : Yojson.Safe.t -> hir_field_def
val safe_yojson_of_hir_generic_args : hir_generic_args -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_hir_generic_args_of_yojson : Yojson.Safe.t -> (hir_generic_args, Base.Error.t) Base.Result.t
val yojson_of_hir_generic_args : hir_generic_args -> Yojson.Safe.t
val hir_generic_args_of_yojson : Yojson.Safe.t -> hir_generic_args
val safe_yojson_of_hir_id : hir_id -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_hir_id_of_yojson : Yojson.Safe.t -> (hir_id, Base.Error.t) Base.Result.t
val yojson_of_hir_id : hir_id -> Yojson.Safe.t
val hir_id_of_yojson : Yojson.Safe.t -> hir_id
val safe_yojson_of_impl_expr : impl_expr -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_impl_expr_of_yojson : Yojson.Safe.t -> (impl_expr, Base.Error.t) Base.Result.t
val yojson_of_impl_expr : impl_expr -> Yojson.Safe.t
val impl_expr_of_yojson : Yojson.Safe.t -> impl_expr
val safe_yojson_of_impl_expr_atom : impl_expr_atom -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_impl_expr_atom_of_yojson : Yojson.Safe.t -> (impl_expr_atom, Base.Error.t) Base.Result.t
val yojson_of_impl_expr_atom : impl_expr_atom -> Yojson.Safe.t
val impl_expr_atom_of_yojson : Yojson.Safe.t -> impl_expr_atom
val safe_yojson_of_impl_expr_path_chunk : impl_expr_path_chunk -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_impl_expr_path_chunk_of_yojson : Yojson.Safe.t -> (impl_expr_path_chunk, Base.Error.t) Base.Result.t
val yojson_of_impl_expr_path_chunk : impl_expr_path_chunk -> Yojson.Safe.t
val impl_expr_path_chunk_of_yojson : Yojson.Safe.t -> impl_expr_path_chunk
val safe_yojson_of_impl_infos : impl_infos -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_impl_infos_of_yojson : Yojson.Safe.t -> (impl_infos, Base.Error.t) Base.Result.t
val yojson_of_impl_infos : impl_infos -> Yojson.Safe.t
val impl_infos_of_yojson : Yojson.Safe.t -> impl_infos
val safe_yojson_of_impl_item_kind_for__decorated_for__expr_kind : impl_item_kind_for__decorated_for__expr_kind -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_impl_item_kind_for__decorated_for__expr_kind_of_yojson : Yojson.Safe.t -> (impl_item_kind_for__decorated_for__expr_kind, Base.Error.t) Base.Result.t
val yojson_of_impl_item_kind_for__decorated_for__expr_kind : impl_item_kind_for__decorated_for__expr_kind -> Yojson.Safe.t
val impl_item_kind_for__decorated_for__expr_kind_of_yojson : Yojson.Safe.t -> impl_item_kind_for__decorated_for__expr_kind
val safe_yojson_of_impl_item_for__decorated_for__expr_kind : impl_item_for__decorated_for__expr_kind -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_impl_item_for__decorated_for__expr_kind_of_yojson : Yojson.Safe.t -> (impl_item_for__decorated_for__expr_kind, Base.Error.t) Base.Result.t
val yojson_of_impl_item_for__decorated_for__expr_kind : impl_item_for__decorated_for__expr_kind -> Yojson.Safe.t
val impl_item_for__decorated_for__expr_kind_of_yojson : Yojson.Safe.t -> impl_item_for__decorated_for__expr_kind
val safe_yojson_of_impl_polarity : impl_polarity -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_impl_polarity_of_yojson : Yojson.Safe.t -> (impl_polarity, Base.Error.t) Base.Result.t
val yojson_of_impl_polarity : impl_polarity -> Yojson.Safe.t
val impl_polarity_of_yojson : Yojson.Safe.t -> impl_polarity
val safe_yojson_of_impl_trait_in_trait_data : impl_trait_in_trait_data -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_impl_trait_in_trait_data_of_yojson : Yojson.Safe.t -> (impl_trait_in_trait_data, Base.Error.t) Base.Result.t
val yojson_of_impl_trait_in_trait_data : impl_trait_in_trait_data -> Yojson.Safe.t
val impl_trait_in_trait_data_of_yojson : Yojson.Safe.t -> impl_trait_in_trait_data
val safe_yojson_of_impl_for__decorated_for__expr_kind : impl_for__decorated_for__expr_kind -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_impl_for__decorated_for__expr_kind_of_yojson : Yojson.Safe.t -> (impl_for__decorated_for__expr_kind, Base.Error.t) Base.Result.t
val yojson_of_impl_for__decorated_for__expr_kind : impl_for__decorated_for__expr_kind -> Yojson.Safe.t
val impl_for__decorated_for__expr_kind_of_yojson : Yojson.Safe.t -> impl_for__decorated_for__expr_kind
val safe_yojson_of_implicit_self_kind : implicit_self_kind -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_implicit_self_kind_of_yojson : Yojson.Safe.t -> (implicit_self_kind, Base.Error.t) Base.Result.t
val yojson_of_implicit_self_kind : implicit_self_kind -> Yojson.Safe.t
val implicit_self_kind_of_yojson : Yojson.Safe.t -> implicit_self_kind
val safe_yojson_of_inclusion_clause : inclusion_clause -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_inclusion_clause_of_yojson : Yojson.Safe.t -> (inclusion_clause, Base.Error.t) Base.Result.t
val yojson_of_inclusion_clause : inclusion_clause -> Yojson.Safe.t
val inclusion_clause_of_yojson : Yojson.Safe.t -> inclusion_clause
val safe_yojson_of_inclusion_kind : inclusion_kind -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_inclusion_kind_of_yojson : Yojson.Safe.t -> (inclusion_kind, Base.Error.t) Base.Result.t
val yojson_of_inclusion_kind : inclusion_kind -> Yojson.Safe.t
val inclusion_kind_of_yojson : Yojson.Safe.t -> inclusion_kind
val safe_yojson_of_infer_ty : infer_ty -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_infer_ty_of_yojson : Yojson.Safe.t -> (infer_ty, Base.Error.t) Base.Result.t
val yojson_of_infer_ty : infer_ty -> Yojson.Safe.t
val infer_ty_of_yojson : Yojson.Safe.t -> infer_ty
val safe_yojson_of_inline_asm : inline_asm -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_inline_asm_of_yojson : Yojson.Safe.t -> (inline_asm, Base.Error.t) Base.Result.t
val yojson_of_inline_asm : inline_asm -> Yojson.Safe.t
val inline_asm_of_yojson : Yojson.Safe.t -> inline_asm
val safe_yojson_of_int_ty : int_ty -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_int_ty_of_yojson : Yojson.Safe.t -> (int_ty, Base.Error.t) Base.Result.t
val yojson_of_int_ty : int_ty -> Yojson.Safe.t
val int_ty_of_yojson : Yojson.Safe.t -> int_ty
val safe_yojson_of_integer_type : integer_type -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_integer_type_of_yojson : Yojson.Safe.t -> (integer_type, Base.Error.t) Base.Result.t
val yojson_of_integer_type : integer_type -> Yojson.Safe.t
val integer_type_of_yojson : Yojson.Safe.t -> integer_type
val safe_yojson_of_is_async : is_async -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_is_async_of_yojson : Yojson.Safe.t -> (is_async, Base.Error.t) Base.Result.t
val yojson_of_is_async : is_async -> Yojson.Safe.t
val is_async_of_yojson : Yojson.Safe.t -> is_async
val safe_yojson_of_is_auto : is_auto -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_is_auto_of_yojson : Yojson.Safe.t -> (is_auto, Base.Error.t) Base.Result.t
val yojson_of_is_auto : is_auto -> Yojson.Safe.t
val is_auto_of_yojson : Yojson.Safe.t -> is_auto
val safe_yojson_of_item_attributes : item_attributes -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_item_attributes_of_yojson : Yojson.Safe.t -> (item_attributes, Base.Error.t) Base.Result.t
val yojson_of_item_attributes : item_attributes -> Yojson.Safe.t
val item_attributes_of_yojson : Yojson.Safe.t -> item_attributes
val safe_yojson_of_item_kind_for__decorated_for__expr_kind : item_kind_for__decorated_for__expr_kind -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_item_kind_for__decorated_for__expr_kind_of_yojson : Yojson.Safe.t -> (item_kind_for__decorated_for__expr_kind, Base.Error.t) Base.Result.t
val yojson_of_item_kind_for__decorated_for__expr_kind : item_kind_for__decorated_for__expr_kind -> Yojson.Safe.t
val item_kind_for__decorated_for__expr_kind_of_yojson : Yojson.Safe.t -> item_kind_for__decorated_for__expr_kind
val safe_yojson_of_item_for__decorated_for__expr_kind : item_for__decorated_for__expr_kind -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_item_for__decorated_for__expr_kind_of_yojson : Yojson.Safe.t -> (item_for__decorated_for__expr_kind, Base.Error.t) Base.Result.t
val yojson_of_item_for__decorated_for__expr_kind : item_for__decorated_for__expr_kind -> Yojson.Safe.t
val item_for__decorated_for__expr_kind_of_yojson : Yojson.Safe.t -> item_for__decorated_for__expr_kind
val safe_yojson_of_kind : kind -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_kind_of_yojson : Yojson.Safe.t -> (kind, Base.Error.t) Base.Result.t
val yojson_of_kind : kind -> Yojson.Safe.t
val kind_of_yojson : Yojson.Safe.t -> kind
val safe_yojson_of_late_param_region : late_param_region -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_late_param_region_of_yojson : Yojson.Safe.t -> (late_param_region, Base.Error.t) Base.Result.t
val yojson_of_late_param_region : late_param_region -> Yojson.Safe.t
val late_param_region_of_yojson : Yojson.Safe.t -> late_param_region
val safe_yojson_of_lifetime_param_kind : lifetime_param_kind -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_lifetime_param_kind_of_yojson : Yojson.Safe.t -> (lifetime_param_kind, Base.Error.t) Base.Result.t
val yojson_of_lifetime_param_kind : lifetime_param_kind -> Yojson.Safe.t
val lifetime_param_kind_of_yojson : Yojson.Safe.t -> lifetime_param_kind
val safe_yojson_of_lint_level : lint_level -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_lint_level_of_yojson : Yojson.Safe.t -> (lint_level, Base.Error.t) Base.Result.t
val yojson_of_lint_level : lint_level -> Yojson.Safe.t
val lint_level_of_yojson : Yojson.Safe.t -> lint_level
val safe_yojson_of_lit_float_type : lit_float_type -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_lit_float_type_of_yojson : Yojson.Safe.t -> (lit_float_type, Base.Error.t) Base.Result.t
val yojson_of_lit_float_type : lit_float_type -> Yojson.Safe.t
val lit_float_type_of_yojson : Yojson.Safe.t -> lit_float_type
val safe_yojson_of_lit_int_type : lit_int_type -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_lit_int_type_of_yojson : Yojson.Safe.t -> (lit_int_type, Base.Error.t) Base.Result.t
val yojson_of_lit_int_type : lit_int_type -> Yojson.Safe.t
val lit_int_type_of_yojson : Yojson.Safe.t -> lit_int_type
val safe_yojson_of_lit_kind : lit_kind -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_lit_kind_of_yojson : Yojson.Safe.t -> (lit_kind, Base.Error.t) Base.Result.t
val yojson_of_lit_kind : lit_kind -> Yojson.Safe.t
val lit_kind_of_yojson : Yojson.Safe.t -> lit_kind
val safe_yojson_of_loc : loc -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_loc_of_yojson : Yojson.Safe.t -> (loc, Base.Error.t) Base.Result.t
val yojson_of_loc : loc -> Yojson.Safe.t
val loc_of_yojson : Yojson.Safe.t -> loc
val safe_yojson_of_local_ident : local_ident -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_local_ident_of_yojson : Yojson.Safe.t -> (local_ident, Base.Error.t) Base.Result.t
val yojson_of_local_ident : local_ident -> Yojson.Safe.t
val local_ident_of_yojson : Yojson.Safe.t -> local_ident
val safe_yojson_of_logical_op : logical_op -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_logical_op_of_yojson : Yojson.Safe.t -> (logical_op, Base.Error.t) Base.Result.t
val yojson_of_logical_op : logical_op -> Yojson.Safe.t
val logical_op_of_yojson : Yojson.Safe.t -> logical_op
val safe_yojson_of_macro_def : macro_def -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_macro_def_of_yojson : Yojson.Safe.t -> (macro_def, Base.Error.t) Base.Result.t
val yojson_of_macro_def : macro_def -> Yojson.Safe.t
val macro_def_of_yojson : Yojson.Safe.t -> macro_def
val safe_yojson_of_macro_invokation : macro_invokation -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_macro_invokation_of_yojson : Yojson.Safe.t -> (macro_invokation, Base.Error.t) Base.Result.t
val yojson_of_macro_invokation : macro_invokation -> Yojson.Safe.t
val macro_invokation_of_yojson : Yojson.Safe.t -> macro_invokation
val safe_yojson_of_macro_kind : macro_kind -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_macro_kind_of_yojson : Yojson.Safe.t -> (macro_kind, Base.Error.t) Base.Result.t
val yojson_of_macro_kind : macro_kind -> Yojson.Safe.t
val macro_kind_of_yojson : Yojson.Safe.t -> macro_kind
val safe_yojson_of_message_format : message_format -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_message_format_of_yojson : Yojson.Safe.t -> (message_format, Base.Error.t) Base.Result.t
val yojson_of_message_format : message_format -> Yojson.Safe.t
val message_format_of_yojson : Yojson.Safe.t -> message_format
val safe_yojson_of_meta_item_lit : meta_item_lit -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_meta_item_lit_of_yojson : Yojson.Safe.t -> (meta_item_lit, Base.Error.t) Base.Result.t
val yojson_of_meta_item_lit : meta_item_lit -> Yojson.Safe.t
val meta_item_lit_of_yojson : Yojson.Safe.t -> meta_item_lit
val safe_yojson_of_missing_lifetime_kind : missing_lifetime_kind -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_missing_lifetime_kind_of_yojson : Yojson.Safe.t -> (missing_lifetime_kind, Base.Error.t) Base.Result.t
val yojson_of_missing_lifetime_kind : missing_lifetime_kind -> Yojson.Safe.t
val missing_lifetime_kind_of_yojson : Yojson.Safe.t -> missing_lifetime_kind
val safe_yojson_of_movability : movability -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_movability_of_yojson : Yojson.Safe.t -> (movability, Base.Error.t) Base.Result.t
val yojson_of_movability : movability -> Yojson.Safe.t
val movability_of_yojson : Yojson.Safe.t -> movability
val safe_yojson_of_mut_borrow_kind : mut_borrow_kind -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_mut_borrow_kind_of_yojson : Yojson.Safe.t -> (mut_borrow_kind, Base.Error.t) Base.Result.t
val yojson_of_mut_borrow_kind : mut_borrow_kind -> Yojson.Safe.t
val mut_borrow_kind_of_yojson : Yojson.Safe.t -> mut_borrow_kind
val safe_yojson_of_namespace : namespace -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_namespace_of_yojson : Yojson.Safe.t -> (namespace, Base.Error.t) Base.Result.t
val yojson_of_namespace : namespace -> Yojson.Safe.t
val namespace_of_yojson : Yojson.Safe.t -> namespace
val safe_yojson_of_namespace_chunk : namespace_chunk -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_namespace_chunk_of_yojson : Yojson.Safe.t -> (namespace_chunk, Base.Error.t) Base.Result.t
val yojson_of_namespace_chunk : namespace_chunk -> Yojson.Safe.t
val namespace_chunk_of_yojson : Yojson.Safe.t -> namespace_chunk
val safe_yojson_of_node_for_def_id_contents_generated : node_for_def_id_contents_generated -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_node_for_def_id_contents_generated_of_yojson : Yojson.Safe.t -> (node_for_def_id_contents_generated, Base.Error.t) Base.Result.t
val yojson_of_node_for_def_id_contents_generated : node_for_def_id_contents_generated -> Yojson.Safe.t
val node_for_def_id_contents_generated_of_yojson : Yojson.Safe.t -> node_for_def_id_contents_generated
val safe_yojson_of_node_for_ty_kind_generated : node_for_ty_kind_generated -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_node_for_ty_kind_generated_of_yojson : Yojson.Safe.t -> (node_for_ty_kind_generated, Base.Error.t) Base.Result.t
val yojson_of_node_for_ty_kind_generated : node_for_ty_kind_generated -> Yojson.Safe.t
val node_for_ty_kind_generated_of_yojson : Yojson.Safe.t -> node_for_ty_kind_generated
val safe_yojson_of_non_macro_attr_kind : non_macro_attr_kind -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_non_macro_attr_kind_of_yojson : Yojson.Safe.t -> (non_macro_attr_kind, Base.Error.t) Base.Result.t
val yojson_of_non_macro_attr_kind : non_macro_attr_kind -> Yojson.Safe.t
val non_macro_attr_kind_of_yojson : Yojson.Safe.t -> non_macro_attr_kind
val safe_yojson_of_normal_attr : normal_attr -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_normal_attr_of_yojson : Yojson.Safe.t -> (normal_attr, Base.Error.t) Base.Result.t
val yojson_of_normal_attr : normal_attr -> Yojson.Safe.t
val normal_attr_of_yojson : Yojson.Safe.t -> normal_attr
val safe_yojson_of_outlives_predicate_for__node_for__ty_kind : outlives_predicate_for__node_for__ty_kind -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_outlives_predicate_for__node_for__ty_kind_of_yojson : Yojson.Safe.t -> (outlives_predicate_for__node_for__ty_kind, Base.Error.t) Base.Result.t
val yojson_of_outlives_predicate_for__node_for__ty_kind : outlives_predicate_for__node_for__ty_kind -> Yojson.Safe.t
val outlives_predicate_for__node_for__ty_kind_of_yojson : Yojson.Safe.t -> outlives_predicate_for__node_for__ty_kind
val safe_yojson_of_outlives_predicate_for__region : outlives_predicate_for__region -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_outlives_predicate_for__region_of_yojson : Yojson.Safe.t -> (outlives_predicate_for__region, Base.Error.t) Base.Result.t
val yojson_of_outlives_predicate_for__region : outlives_predicate_for__region -> Yojson.Safe.t
val outlives_predicate_for__region_of_yojson : Yojson.Safe.t -> outlives_predicate_for__region
val safe_yojson_of_output : output -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_output_of_yojson : Yojson.Safe.t -> (output, Base.Error.t) Base.Result.t
val yojson_of_output : output -> Yojson.Safe.t
val output_of_yojson : Yojson.Safe.t -> output
val safe_yojson_of_param : param -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_param_of_yojson : Yojson.Safe.t -> (param, Base.Error.t) Base.Result.t
val yojson_of_param : param -> Yojson.Safe.t
val param_of_yojson : Yojson.Safe.t -> param
val safe_yojson_of_param_const : param_const -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_param_const_of_yojson : Yojson.Safe.t -> (param_const, Base.Error.t) Base.Result.t
val yojson_of_param_const : param_const -> Yojson.Safe.t
val param_const_of_yojson : Yojson.Safe.t -> param_const
val safe_yojson_of_param_name : param_name -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_param_name_of_yojson : Yojson.Safe.t -> (param_name, Base.Error.t) Base.Result.t
val yojson_of_param_name : param_name -> Yojson.Safe.t
val param_name_of_yojson : Yojson.Safe.t -> param_name
val safe_yojson_of_param_ty : param_ty -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_param_ty_of_yojson : Yojson.Safe.t -> (param_ty, Base.Error.t) Base.Result.t
val yojson_of_param_ty : param_ty -> Yojson.Safe.t
val param_ty_of_yojson : Yojson.Safe.t -> param_ty
val safe_yojson_of_pat_kind : pat_kind -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_pat_kind_of_yojson : Yojson.Safe.t -> (pat_kind, Base.Error.t) Base.Result.t
val yojson_of_pat_kind : pat_kind -> Yojson.Safe.t
val pat_kind_of_yojson : Yojson.Safe.t -> pat_kind
val safe_yojson_of_pat_range : pat_range -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_pat_range_of_yojson : Yojson.Safe.t -> (pat_range, Base.Error.t) Base.Result.t
val yojson_of_pat_range : pat_range -> Yojson.Safe.t
val pat_range_of_yojson : Yojson.Safe.t -> pat_range
val safe_yojson_of_pat_range_boundary : pat_range_boundary -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_pat_range_boundary_of_yojson : Yojson.Safe.t -> (pat_range_boundary, Base.Error.t) Base.Result.t
val yojson_of_pat_range_boundary : pat_range_boundary -> Yojson.Safe.t
val pat_range_boundary_of_yojson : Yojson.Safe.t -> pat_range_boundary
val safe_yojson_of_path_or_dash : path_or_dash -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_path_or_dash_of_yojson : Yojson.Safe.t -> (path_or_dash, Base.Error.t) Base.Result.t
val yojson_of_path_or_dash : path_or_dash -> Yojson.Safe.t
val path_or_dash_of_yojson : Yojson.Safe.t -> path_or_dash
val safe_yojson_of_path_segment : path_segment -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_path_segment_of_yojson : Yojson.Safe.t -> (path_segment, Base.Error.t) Base.Result.t
val yojson_of_path_segment : path_segment -> Yojson.Safe.t
val path_segment_of_yojson : Yojson.Safe.t -> path_segment
val safe_yojson_of_placeholder_for__bound_region : placeholder_for__bound_region -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_placeholder_for__bound_region_of_yojson : Yojson.Safe.t -> (placeholder_for__bound_region, Base.Error.t) Base.Result.t
val yojson_of_placeholder_for__bound_region : placeholder_for__bound_region -> Yojson.Safe.t
val placeholder_for__bound_region_of_yojson : Yojson.Safe.t -> placeholder_for__bound_region
val safe_yojson_of_placeholder_for__bound_ty : placeholder_for__bound_ty -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_placeholder_for__bound_ty_of_yojson : Yojson.Safe.t -> (placeholder_for__bound_ty, Base.Error.t) Base.Result.t
val yojson_of_placeholder_for__bound_ty : placeholder_for__bound_ty -> Yojson.Safe.t
val placeholder_for__bound_ty_of_yojson : Yojson.Safe.t -> placeholder_for__bound_ty
val safe_yojson_of_placeholder_for_uint : placeholder_for_uint -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_placeholder_for_uint_of_yojson : Yojson.Safe.t -> (placeholder_for_uint, Base.Error.t) Base.Result.t
val yojson_of_placeholder_for_uint : placeholder_for_uint -> Yojson.Safe.t
val placeholder_for_uint_of_yojson : Yojson.Safe.t -> placeholder_for_uint
val safe_yojson_of_pointer_coercion : pointer_coercion -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_pointer_coercion_of_yojson : Yojson.Safe.t -> (pointer_coercion, Base.Error.t) Base.Result.t
val yojson_of_pointer_coercion : pointer_coercion -> Yojson.Safe.t
val pointer_coercion_of_yojson : Yojson.Safe.t -> pointer_coercion
val safe_yojson_of_prim_ty : prim_ty -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_prim_ty_of_yojson : Yojson.Safe.t -> (prim_ty, Base.Error.t) Base.Result.t
val yojson_of_prim_ty : prim_ty -> Yojson.Safe.t
val prim_ty_of_yojson : Yojson.Safe.t -> prim_ty
val safe_yojson_of_pro_verif_options : pro_verif_options -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_pro_verif_options_of_yojson : Yojson.Safe.t -> (pro_verif_options, Base.Error.t) Base.Result.t
val yojson_of_pro_verif_options : pro_verif_options -> Yojson.Safe.t
val pro_verif_options_of_yojson : Yojson.Safe.t -> pro_verif_options
val safe_yojson_of_profiling_data : profiling_data -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_profiling_data_of_yojson : Yojson.Safe.t -> (profiling_data, Base.Error.t) Base.Result.t
val yojson_of_profiling_data : profiling_data -> Yojson.Safe.t
val profiling_data_of_yojson : Yojson.Safe.t -> profiling_data
val safe_yojson_of_projection_predicate : projection_predicate -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_projection_predicate_of_yojson : Yojson.Safe.t -> (projection_predicate, Base.Error.t) Base.Result.t
val yojson_of_projection_predicate : projection_predicate -> Yojson.Safe.t
val projection_predicate_of_yojson : Yojson.Safe.t -> projection_predicate
val safe_yojson_of_q_path : q_path -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_q_path_of_yojson : Yojson.Safe.t -> (q_path, Base.Error.t) Base.Result.t
val yojson_of_q_path : q_path -> Yojson.Safe.t
val q_path_of_yojson : Yojson.Safe.t -> q_path
val safe_yojson_of_range_end : range_end -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_range_end_of_yojson : Yojson.Safe.t -> (range_end, Base.Error.t) Base.Result.t
val yojson_of_range_end : range_end -> Yojson.Safe.t
val range_end_of_yojson : Yojson.Safe.t -> range_end
val safe_yojson_of_real_file_name : real_file_name -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_real_file_name_of_yojson : Yojson.Safe.t -> (real_file_name, Base.Error.t) Base.Result.t
val yojson_of_real_file_name : real_file_name -> Yojson.Safe.t
val real_file_name_of_yojson : Yojson.Safe.t -> real_file_name
val safe_yojson_of_region : region -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_region_of_yojson : Yojson.Safe.t -> (region, Base.Error.t) Base.Result.t
val yojson_of_region : region -> Yojson.Safe.t
val region_of_yojson : Yojson.Safe.t -> region
val safe_yojson_of_region_kind : region_kind -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_region_kind_of_yojson : Yojson.Safe.t -> (region_kind, Base.Error.t) Base.Result.t
val yojson_of_region_kind : region_kind -> Yojson.Safe.t
val region_kind_of_yojson : Yojson.Safe.t -> region_kind
val safe_yojson_of_repr_flags : repr_flags -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_repr_flags_of_yojson : Yojson.Safe.t -> (repr_flags, Base.Error.t) Base.Result.t
val yojson_of_repr_flags : repr_flags -> Yojson.Safe.t
val repr_flags_of_yojson : Yojson.Safe.t -> repr_flags
val safe_yojson_of_repr_options : repr_options -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_repr_options_of_yojson : Yojson.Safe.t -> (repr_options, Base.Error.t) Base.Result.t
val yojson_of_repr_options : repr_options -> Yojson.Safe.t
val repr_options_of_yojson : Yojson.Safe.t -> repr_options
val safe_yojson_of_res : res -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_res_of_yojson : Yojson.Safe.t -> (res, Base.Error.t) Base.Result.t
val yojson_of_res : res -> Yojson.Safe.t
val res_of_yojson : Yojson.Safe.t -> res
val safe_yojson_of_result_of__string_or__string : result_of__string_or__string -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_result_of__string_or__string_of_yojson : Yojson.Safe.t -> (result_of__string_or__string, Base.Error.t) Base.Result.t
val yojson_of_result_of__string_or__string : result_of__string_or__string -> Yojson.Safe.t
val result_of__string_or__string_of_yojson : Yojson.Safe.t -> result_of__string_or__string
val safe_yojson_of_safety : safety -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_safety_of_yojson : Yojson.Safe.t -> (safety, Base.Error.t) Base.Result.t
val yojson_of_safety : safety -> Yojson.Safe.t
val safety_of_yojson : Yojson.Safe.t -> safety
val safe_yojson_of_scope : scope -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_scope_of_yojson : Yojson.Safe.t -> (scope, Base.Error.t) Base.Result.t
val yojson_of_scope : scope -> Yojson.Safe.t
val scope_of_yojson : Yojson.Safe.t -> scope
val safe_yojson_of_scope_data : scope_data -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_scope_data_of_yojson : Yojson.Safe.t -> (scope_data, Base.Error.t) Base.Result.t
val yojson_of_scope_data : scope_data -> Yojson.Safe.t
val scope_data_of_yojson : Yojson.Safe.t -> scope_data
val safe_yojson_of_source_map : source_map -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_source_map_of_yojson : Yojson.Safe.t -> (source_map, Base.Error.t) Base.Result.t
val yojson_of_source_map : source_map -> Yojson.Safe.t
val source_map_of_yojson : Yojson.Safe.t -> source_map
val safe_yojson_of_span : span -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_span_of_yojson : Yojson.Safe.t -> (span, Base.Error.t) Base.Result.t
val yojson_of_span : span -> Yojson.Safe.t
val span_of_yojson : Yojson.Safe.t -> span
val safe_yojson_of_spanned_for__lit_kind : spanned_for__lit_kind -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_spanned_for__lit_kind_of_yojson : Yojson.Safe.t -> (spanned_for__lit_kind, Base.Error.t) Base.Result.t
val yojson_of_spanned_for__lit_kind : spanned_for__lit_kind -> Yojson.Safe.t
val spanned_for__lit_kind_of_yojson : Yojson.Safe.t -> spanned_for__lit_kind
val safe_yojson_of_stmt : stmt -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_stmt_of_yojson : Yojson.Safe.t -> (stmt, Base.Error.t) Base.Result.t
val yojson_of_stmt : stmt -> Yojson.Safe.t
val stmt_of_yojson : Yojson.Safe.t -> stmt
val safe_yojson_of_stmt_kind : stmt_kind -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_stmt_kind_of_yojson : Yojson.Safe.t -> (stmt_kind, Base.Error.t) Base.Result.t
val yojson_of_stmt_kind : stmt_kind -> Yojson.Safe.t
val stmt_kind_of_yojson : Yojson.Safe.t -> stmt_kind
val safe_yojson_of_str_style : str_style -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_str_style_of_yojson : Yojson.Safe.t -> (str_style, Base.Error.t) Base.Result.t
val yojson_of_str_style : str_style -> Yojson.Safe.t
val str_style_of_yojson : Yojson.Safe.t -> str_style
val safe_yojson_of_term : term -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_term_of_yojson : Yojson.Safe.t -> (term, Base.Error.t) Base.Result.t
val yojson_of_term : term -> Yojson.Safe.t
val term_of_yojson : Yojson.Safe.t -> term
val safe_yojson_of_to_engine : to_engine -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_to_engine_of_yojson : Yojson.Safe.t -> (to_engine, Base.Error.t) Base.Result.t
val yojson_of_to_engine : to_engine -> Yojson.Safe.t
val to_engine_of_yojson : Yojson.Safe.t -> to_engine
val safe_yojson_of_trait_item_kind_for__decorated_for__expr_kind : trait_item_kind_for__decorated_for__expr_kind -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_trait_item_kind_for__decorated_for__expr_kind_of_yojson : Yojson.Safe.t -> (trait_item_kind_for__decorated_for__expr_kind, Base.Error.t) Base.Result.t
val yojson_of_trait_item_kind_for__decorated_for__expr_kind : trait_item_kind_for__decorated_for__expr_kind -> Yojson.Safe.t
val trait_item_kind_for__decorated_for__expr_kind_of_yojson : Yojson.Safe.t -> trait_item_kind_for__decorated_for__expr_kind
val safe_yojson_of_trait_item_for__decorated_for__expr_kind : trait_item_for__decorated_for__expr_kind -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_trait_item_for__decorated_for__expr_kind_of_yojson : Yojson.Safe.t -> (trait_item_for__decorated_for__expr_kind, Base.Error.t) Base.Result.t
val yojson_of_trait_item_for__decorated_for__expr_kind : trait_item_for__decorated_for__expr_kind -> Yojson.Safe.t
val trait_item_for__decorated_for__expr_kind_of_yojson : Yojson.Safe.t -> trait_item_for__decorated_for__expr_kind
val safe_yojson_of_trait_predicate : trait_predicate -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_trait_predicate_of_yojson : Yojson.Safe.t -> (trait_predicate, Base.Error.t) Base.Result.t
val yojson_of_trait_predicate : trait_predicate -> Yojson.Safe.t
val trait_predicate_of_yojson : Yojson.Safe.t -> trait_predicate
val safe_yojson_of_trait_ref : trait_ref -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_trait_ref_of_yojson : Yojson.Safe.t -> (trait_ref, Base.Error.t) Base.Result.t
val yojson_of_trait_ref : trait_ref -> Yojson.Safe.t
val trait_ref_of_yojson : Yojson.Safe.t -> trait_ref
val safe_yojson_of_translation_options : translation_options -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_translation_options_of_yojson : Yojson.Safe.t -> (translation_options, Base.Error.t) Base.Result.t
val yojson_of_translation_options : translation_options -> Yojson.Safe.t
val translation_options_of_yojson : Yojson.Safe.t -> translation_options
val safe_yojson_of_ty_fn_sig : ty_fn_sig -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_ty_fn_sig_of_yojson : Yojson.Safe.t -> (ty_fn_sig, Base.Error.t) Base.Result.t
val yojson_of_ty_fn_sig : ty_fn_sig -> Yojson.Safe.t
val ty_fn_sig_of_yojson : Yojson.Safe.t -> ty_fn_sig
val safe_yojson_of_ty_generics : ty_generics -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_ty_generics_of_yojson : Yojson.Safe.t -> (ty_generics, Base.Error.t) Base.Result.t
val yojson_of_ty_generics : ty_generics -> Yojson.Safe.t
val ty_generics_of_yojson : Yojson.Safe.t -> ty_generics
val safe_yojson_of_ty_kind : ty_kind -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_ty_kind_of_yojson : Yojson.Safe.t -> (ty_kind, Base.Error.t) Base.Result.t
val yojson_of_ty_kind : ty_kind -> Yojson.Safe.t
val ty_kind_of_yojson : Yojson.Safe.t -> ty_kind
val safe_yojson_of_uint_ty : uint_ty -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_uint_ty_of_yojson : Yojson.Safe.t -> (uint_ty, Base.Error.t) Base.Result.t
val yojson_of_uint_ty : uint_ty -> Yojson.Safe.t
val uint_ty_of_yojson : Yojson.Safe.t -> uint_ty
val safe_yojson_of_un_op : un_op -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_un_op_of_yojson : Yojson.Safe.t -> (un_op, Base.Error.t) Base.Result.t
val yojson_of_un_op : un_op -> Yojson.Safe.t
val un_op_of_yojson : Yojson.Safe.t -> un_op
val safe_yojson_of_use_kind : use_kind -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_use_kind_of_yojson : Yojson.Safe.t -> (use_kind, Base.Error.t) Base.Result.t
val yojson_of_use_kind : use_kind -> Yojson.Safe.t
val use_kind_of_yojson : Yojson.Safe.t -> use_kind
val safe_yojson_of_use_path : use_path -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_use_path_of_yojson : Yojson.Safe.t -> (use_path, Base.Error.t) Base.Result.t
val yojson_of_use_path : use_path -> Yojson.Safe.t
val use_path_of_yojson : Yojson.Safe.t -> use_path
val safe_yojson_of_user_type : user_type -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_user_type_of_yojson : Yojson.Safe.t -> (user_type, Base.Error.t) Base.Result.t
val yojson_of_user_type : user_type -> Yojson.Safe.t
val user_type_of_yojson : Yojson.Safe.t -> user_type
val safe_yojson_of_variance : variance -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_variance_of_yojson : Yojson.Safe.t -> (variance, Base.Error.t) Base.Result.t
val yojson_of_variance : variance -> Yojson.Safe.t
val variance_of_yojson : Yojson.Safe.t -> variance
val safe_yojson_of_variant_data : variant_data -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_variant_data_of_yojson : Yojson.Safe.t -> (variant_data, Base.Error.t) Base.Result.t
val yojson_of_variant_data : variant_data -> Yojson.Safe.t
val variant_data_of_yojson : Yojson.Safe.t -> variant_data
val safe_yojson_of_variant_informations : variant_informations -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_variant_informations_of_yojson : Yojson.Safe.t -> (variant_informations, Base.Error.t) Base.Result.t
val yojson_of_variant_informations : variant_informations -> Yojson.Safe.t
val variant_informations_of_yojson : Yojson.Safe.t -> variant_informations
val safe_yojson_of_variant_kind : variant_kind -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_variant_kind_of_yojson : Yojson.Safe.t -> (variant_kind, Base.Error.t) Base.Result.t
val yojson_of_variant_kind : variant_kind -> Yojson.Safe.t
val variant_kind_of_yojson : Yojson.Safe.t -> variant_kind
val safe_yojson_of_variant_for__decorated_for__expr_kind : variant_for__decorated_for__expr_kind -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_variant_for__decorated_for__expr_kind_of_yojson : Yojson.Safe.t -> (variant_for__decorated_for__expr_kind, Base.Error.t) Base.Result.t
val yojson_of_variant_for__decorated_for__expr_kind : variant_for__decorated_for__expr_kind -> Yojson.Safe.t
val variant_for__decorated_for__expr_kind_of_yojson : Yojson.Safe.t -> variant_for__decorated_for__expr_kind
val safe_yojson_of_with_def_ids_for__decorated_for__expr_kind : with_def_ids_for__decorated_for__expr_kind -> (Yojson.Safe.t, Base.Error.t) Base.Result.t
val safe_with_def_ids_for__decorated_for__expr_kind_of_yojson : Yojson.Safe.t -> (with_def_ids_for__decorated_for__expr_kind, Base.Error.t) Base.Result.t
val yojson_of_with_def_ids_for__decorated_for__expr_kind : with_def_ids_for__decorated_for__expr_kind -> Yojson.Safe.t
val with_def_ids_for__decorated_for__expr_kind_of_yojson : Yojson.Safe.t -> with_def_ids_for__decorated_for__expr_kind