code_ownership 2.2.0 → 2.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/Cargo.lock +30 -27
- data/bin/codeownership +1 -0
- data/ext/cargo-vendor/bindgen-0.72.1/.cargo-checksum.json +1 -0
- data/ext/cargo-vendor/bindgen-0.72.1/.cargo_vcs_info.json +6 -0
- data/ext/cargo-vendor/bindgen-0.72.1/Cargo.lock +485 -0
- data/ext/cargo-vendor/{bindgen-0.69.5 → bindgen-0.72.1}/Cargo.toml +72 -38
- data/ext/cargo-vendor/{bindgen-0.69.5 → bindgen-0.72.1}/Cargo.toml.orig +26 -28
- data/ext/cargo-vendor/{bindgen-0.69.5 → bindgen-0.72.1}/README.md +2 -2
- data/ext/cargo-vendor/{bindgen-0.69.5 → bindgen-0.72.1}/build.rs +2 -2
- data/ext/cargo-vendor/{bindgen-0.69.5 → bindgen-0.72.1}/callbacks.rs +114 -10
- data/ext/cargo-vendor/{bindgen-0.69.5 → bindgen-0.72.1}/clang.rs +184 -83
- data/ext/cargo-vendor/{bindgen-0.69.5 → bindgen-0.72.1}/codegen/bitfield_unit.rs +20 -10
- data/ext/cargo-vendor/bindgen-0.72.1/codegen/bitfield_unit_raw_ref_macros.rs +191 -0
- data/ext/cargo-vendor/{bindgen-0.69.5 → bindgen-0.72.1}/codegen/bitfield_unit_tests.rs +4 -4
- data/ext/cargo-vendor/{bindgen-0.69.5 → bindgen-0.72.1}/codegen/dyngen.rs +77 -20
- data/ext/cargo-vendor/{bindgen-0.69.5 → bindgen-0.72.1}/codegen/error.rs +2 -3
- data/ext/cargo-vendor/{bindgen-0.69.5 → bindgen-0.72.1}/codegen/helpers.rs +106 -66
- data/ext/cargo-vendor/{bindgen-0.69.5 → bindgen-0.72.1}/codegen/impl_debug.rs +32 -34
- data/ext/cargo-vendor/{bindgen-0.69.5 → bindgen-0.72.1}/codegen/impl_partialeq.rs +5 -5
- data/ext/cargo-vendor/{bindgen-0.69.5 → bindgen-0.72.1}/codegen/mod.rs +1197 -679
- data/ext/cargo-vendor/{bindgen-0.69.5 → bindgen-0.72.1}/codegen/postprocessing/merge_extern_blocks.rs +3 -3
- data/ext/cargo-vendor/{bindgen-0.69.5 → bindgen-0.72.1}/codegen/postprocessing/sort_semantically.rs +3 -3
- data/ext/cargo-vendor/{bindgen-0.69.5 → bindgen-0.72.1}/codegen/serialize.rs +33 -34
- data/ext/cargo-vendor/{bindgen-0.69.5 → bindgen-0.72.1}/codegen/struct_layout.rs +33 -26
- data/ext/cargo-vendor/{bindgen-0.69.5 → bindgen-0.72.1}/deps.rs +1 -1
- data/ext/cargo-vendor/{bindgen-0.69.5 → bindgen-0.72.1}/diagnostics.rs +22 -65
- data/ext/cargo-vendor/{bindgen-0.69.5 → bindgen-0.72.1}/extra_assertions.rs +1 -1
- data/ext/cargo-vendor/bindgen-0.72.1/features.rs +570 -0
- data/ext/cargo-vendor/{bindgen-0.69.5 → bindgen-0.72.1}/ir/analysis/derive.rs +69 -75
- data/ext/cargo-vendor/{bindgen-0.69.5 → bindgen-0.72.1}/ir/analysis/has_destructor.rs +5 -6
- data/ext/cargo-vendor/{bindgen-0.69.5 → bindgen-0.72.1}/ir/analysis/has_float.rs +13 -17
- data/ext/cargo-vendor/{bindgen-0.69.5 → bindgen-0.72.1}/ir/analysis/has_type_param_in_array.rs +22 -32
- data/ext/cargo-vendor/{bindgen-0.69.5 → bindgen-0.72.1}/ir/analysis/has_vtable.rs +11 -16
- data/ext/cargo-vendor/{bindgen-0.69.5 → bindgen-0.72.1}/ir/analysis/mod.rs +15 -20
- data/ext/cargo-vendor/{bindgen-0.69.5 → bindgen-0.72.1}/ir/analysis/sizedness.rs +13 -21
- data/ext/cargo-vendor/{bindgen-0.69.5 → bindgen-0.72.1}/ir/analysis/template_params.rs +20 -26
- data/ext/cargo-vendor/{bindgen-0.69.5 → bindgen-0.72.1}/ir/annotations.rs +18 -15
- data/ext/cargo-vendor/{bindgen-0.69.5 → bindgen-0.72.1}/ir/comment.rs +2 -2
- data/ext/cargo-vendor/{bindgen-0.69.5 → bindgen-0.72.1}/ir/comp.rs +54 -29
- data/ext/cargo-vendor/{bindgen-0.69.5 → bindgen-0.72.1}/ir/context.rs +205 -136
- data/ext/cargo-vendor/{bindgen-0.69.5 → bindgen-0.72.1}/ir/derive.rs +5 -10
- data/ext/cargo-vendor/{bindgen-0.69.5 → bindgen-0.72.1}/ir/dot.rs +3 -4
- data/ext/cargo-vendor/{bindgen-0.69.5 → bindgen-0.72.1}/ir/enum_ty.rs +5 -7
- data/ext/cargo-vendor/{bindgen-0.69.5 → bindgen-0.72.1}/ir/function.rs +27 -28
- data/ext/cargo-vendor/{bindgen-0.69.5 → bindgen-0.72.1}/ir/int.rs +7 -6
- data/ext/cargo-vendor/{bindgen-0.69.5 → bindgen-0.72.1}/ir/item.rs +92 -132
- data/ext/cargo-vendor/{bindgen-0.69.5 → bindgen-0.72.1}/ir/item_kind.rs +7 -7
- data/ext/cargo-vendor/{bindgen-0.69.5 → bindgen-0.72.1}/ir/layout.rs +11 -23
- data/ext/cargo-vendor/{bindgen-0.69.5 → bindgen-0.72.1}/ir/module.rs +2 -2
- data/ext/cargo-vendor/{bindgen-0.69.5 → bindgen-0.72.1}/ir/objc.rs +22 -33
- data/ext/cargo-vendor/{bindgen-0.69.5 → bindgen-0.72.1}/ir/template.rs +26 -33
- data/ext/cargo-vendor/{bindgen-0.69.5 → bindgen-0.72.1}/ir/traversal.rs +4 -5
- data/ext/cargo-vendor/{bindgen-0.69.5 → bindgen-0.72.1}/ir/ty.rs +63 -88
- data/ext/cargo-vendor/{bindgen-0.69.5 → bindgen-0.72.1}/ir/var.rs +73 -38
- data/ext/cargo-vendor/{bindgen-0.69.5 → bindgen-0.72.1}/lib.rs +186 -144
- data/ext/cargo-vendor/{bindgen-0.69.5 → bindgen-0.72.1}/log_stubs.rs +6 -0
- data/ext/cargo-vendor/{bindgen-0.69.5 → bindgen-0.72.1}/options/as_args.rs +1 -1
- data/ext/cargo-vendor/bindgen-0.72.1/options/cli.rs +1151 -0
- data/ext/cargo-vendor/{bindgen-0.69.5 → bindgen-0.72.1}/options/mod.rs +234 -27
- data/ext/cargo-vendor/{bindgen-0.69.5 → bindgen-0.72.1}/regex_set.rs +23 -28
- data/ext/cargo-vendor/{bindgen-0.69.5 → bindgen-0.72.1}/time.rs +4 -4
- data/ext/cargo-vendor/rb-sys-0.9.130/.cargo-checksum.json +1 -0
- data/ext/cargo-vendor/rb-sys-0.9.130/.cargo_vcs_info.json +6 -0
- data/ext/cargo-vendor/{rb-sys-0.9.117 → rb-sys-0.9.130}/Cargo.lock +23 -31
- data/ext/cargo-vendor/{rb-sys-0.9.117 → rb-sys-0.9.130}/Cargo.toml +5 -4
- data/ext/cargo-vendor/{rb-sys-0.9.117 → rb-sys-0.9.130}/Cargo.toml.orig +5 -4
- data/ext/cargo-vendor/{rb-sys-0.9.117 → rb-sys-0.9.130}/build/main.rs +7 -1
- data/ext/cargo-vendor/{rb-sys-0.9.117 → rb-sys-0.9.130}/build/stable_api_config.rs +30 -6
- data/ext/cargo-vendor/{rb-sys-0.9.117 → rb-sys-0.9.130}/build/version.rs +14 -6
- data/ext/cargo-vendor/{rb-sys-0.9.117 → rb-sys-0.9.130}/src/bindings.rs +1 -0
- data/ext/cargo-vendor/rb-sys-0.9.130/src/macros.rs +701 -0
- data/ext/cargo-vendor/{rb-sys-0.9.117 → rb-sys-0.9.130}/src/memory.rs +17 -6
- data/ext/cargo-vendor/{rb-sys-0.9.117 → rb-sys-0.9.130}/src/stable_api/compiled.c +169 -10
- data/ext/cargo-vendor/{rb-sys-0.9.117 → rb-sys-0.9.130}/src/stable_api/compiled.rs +209 -14
- data/ext/cargo-vendor/rb-sys-0.9.130/src/stable_api/ruby_2_7.rs +770 -0
- data/ext/cargo-vendor/rb-sys-0.9.130/src/stable_api/ruby_3_0.rs +773 -0
- data/ext/cargo-vendor/rb-sys-0.9.130/src/stable_api/ruby_3_1.rs +766 -0
- data/ext/cargo-vendor/rb-sys-0.9.130/src/stable_api/ruby_3_2.rs +764 -0
- data/ext/cargo-vendor/rb-sys-0.9.130/src/stable_api/ruby_3_3.rs +777 -0
- data/ext/cargo-vendor/rb-sys-0.9.130/src/stable_api/ruby_3_4.rs +788 -0
- data/ext/cargo-vendor/rb-sys-0.9.130/src/stable_api/ruby_4_0.rs +784 -0
- data/ext/cargo-vendor/{rb-sys-0.9.117 → rb-sys-0.9.130}/src/stable_api.rs +213 -9
- data/ext/cargo-vendor/{rb-sys-0.9.117 → rb-sys-0.9.130}/src/utils.rs +12 -7
- data/ext/cargo-vendor/rb-sys-build-0.9.130/.cargo-checksum.json +1 -0
- data/ext/cargo-vendor/{rb-sys-build-0.9.117 → rb-sys-build-0.9.130}/.cargo_vcs_info.json +1 -1
- data/ext/cargo-vendor/{rb-sys-build-0.9.117 → rb-sys-build-0.9.130}/Cargo.lock +19 -27
- data/ext/cargo-vendor/{rb-sys-build-0.9.117 → rb-sys-build-0.9.130}/Cargo.toml +8 -3
- data/ext/cargo-vendor/{rb-sys-build-0.9.117 → rb-sys-build-0.9.130}/Cargo.toml.orig +4 -3
- data/ext/cargo-vendor/rb-sys-build-0.9.130/src/bindings/gc_stress.rs +303 -0
- data/ext/cargo-vendor/{rb-sys-build-0.9.117 → rb-sys-build-0.9.130}/src/bindings/stable_api.rs +102 -11
- data/ext/cargo-vendor/{rb-sys-build-0.9.117 → rb-sys-build-0.9.130}/src/bindings.rs +19 -13
- data/ext/cargo-vendor/{rb-sys-build-0.9.117 → rb-sys-build-0.9.130}/src/cc.rs +1 -1
- data/ext/cargo-vendor/{rb-sys-build-0.9.117 → rb-sys-build-0.9.130}/src/rb_config.rs +199 -2
- data/ext/cargo-vendor/rb-sys-build-0.9.130/tests/fixtures/rubyopt_stdout.rb +1 -0
- data/ext/cargo-vendor/rb-sys-build-0.9.130/tests/rubyopt.rs +17 -0
- data/ext/cargo-vendor/rb-sys-env-0.2.3/.cargo-checksum.json +1 -0
- data/ext/cargo-vendor/rb-sys-env-0.2.3/.cargo_vcs_info.json +6 -0
- data/ext/cargo-vendor/rb-sys-env-0.2.3/Cargo.lock +7 -0
- data/ext/cargo-vendor/{rb-sys-env-0.2.2 → rb-sys-env-0.2.3}/Cargo.toml +2 -2
- data/ext/cargo-vendor/{rb-sys-env-0.2.2 → rb-sys-env-0.2.3}/Cargo.toml.orig +2 -2
- data/ext/cargo-vendor/{rb-sys-env-0.2.2 → rb-sys-env-0.2.3}/readme.md +0 -2
- data/ext/cargo-vendor/{rb-sys-env-0.2.2 → rb-sys-env-0.2.3}/src/ruby_version.rs +3 -1
- data/ext/cargo-vendor/rustc-hash-2.1.3/.cargo-checksum.json +1 -0
- data/ext/cargo-vendor/rustc-hash-2.1.3/.cargo_vcs_info.json +6 -0
- data/ext/cargo-vendor/rustc-hash-2.1.3/.github/workflows/rust.yml +73 -0
- data/ext/cargo-vendor/rustc-hash-2.1.3/CHANGELOG.md +41 -0
- data/ext/cargo-vendor/rustc-hash-2.1.3/CODE_OF_CONDUCT.md +3 -0
- data/ext/cargo-vendor/rustc-hash-2.1.3/Cargo.lock +90 -0
- data/ext/cargo-vendor/rustc-hash-2.1.3/Cargo.toml +50 -0
- data/ext/cargo-vendor/rustc-hash-2.1.3/Cargo.toml.orig +20 -0
- data/ext/cargo-vendor/rustc-hash-2.1.3/LICENSE-APACHE +176 -0
- data/ext/cargo-vendor/rustc-hash-2.1.3/LICENSE-MIT +23 -0
- data/ext/cargo-vendor/rustc-hash-2.1.3/README.md +42 -0
- data/ext/cargo-vendor/rustc-hash-2.1.3/src/lib.rs +472 -0
- data/ext/cargo-vendor/rustc-hash-2.1.3/src/random_state.rs +101 -0
- data/ext/cargo-vendor/rustc-hash-2.1.3/src/seeded_state.rs +76 -0
- data/ext/cargo-vendor/{serde-1.0.228 → serde-1.0.229}/.cargo-checksum.json +1 -1
- data/ext/cargo-vendor/serde-1.0.229/.cargo_vcs_info.json +6 -0
- data/ext/cargo-vendor/{serde-1.0.228 → serde-1.0.229}/Cargo.lock +13 -13
- data/ext/cargo-vendor/{serde-1.0.228 → serde-1.0.229}/Cargo.toml +2 -2
- data/ext/cargo-vendor/{serde-1.0.228 → serde-1.0.229}/Cargo.toml.orig +2 -2
- data/ext/cargo-vendor/{serde_derive-1.0.228 → serde-1.0.229}/README.md +3 -3
- data/ext/cargo-vendor/{serde-1.0.228 → serde-1.0.229}/build.rs +2 -2
- data/ext/cargo-vendor/{serde_core-1.0.228/src → serde-1.0.229/src/core}/de/impls.rs +4 -4
- data/ext/cargo-vendor/{serde_core-1.0.228/src → serde-1.0.229/src/core}/lib.rs +2 -2
- data/ext/cargo-vendor/{serde-1.0.228 → serde-1.0.229}/src/lib.rs +3 -3
- data/ext/cargo-vendor/{serde_core-1.0.228 → serde_core-1.0.229}/.cargo-checksum.json +1 -1
- data/ext/cargo-vendor/serde_core-1.0.229/.cargo_vcs_info.json +6 -0
- data/ext/cargo-vendor/{serde_core-1.0.228 → serde_core-1.0.229}/Cargo.lock +11 -11
- data/ext/cargo-vendor/{serde_core-1.0.228 → serde_core-1.0.229}/Cargo.toml +2 -2
- data/ext/cargo-vendor/{serde_core-1.0.228 → serde_core-1.0.229}/Cargo.toml.orig +2 -2
- data/ext/cargo-vendor/{serde_core-1.0.228 → serde_core-1.0.229}/build.rs +5 -5
- data/ext/cargo-vendor/{serde-1.0.228/src/core → serde_core-1.0.229/src}/de/impls.rs +4 -4
- data/ext/cargo-vendor/{serde-1.0.228/src/core → serde_core-1.0.229/src}/lib.rs +2 -2
- data/ext/cargo-vendor/serde_derive-1.0.229/.cargo-checksum.json +1 -0
- data/ext/cargo-vendor/serde_derive-1.0.229/.cargo_vcs_info.json +6 -0
- data/ext/cargo-vendor/{serde_derive-1.0.228 → serde_derive-1.0.229}/Cargo.lock +29 -18
- data/ext/cargo-vendor/{serde_derive-1.0.228 → serde_derive-1.0.229}/Cargo.toml +3 -3
- data/ext/cargo-vendor/{serde_derive-1.0.228 → serde_derive-1.0.229}/Cargo.toml.orig +2 -2
- data/ext/cargo-vendor/{serde-1.0.228 → serde_derive-1.0.229}/README.md +3 -3
- data/ext/cargo-vendor/{serde_derive-1.0.228 → serde_derive-1.0.229}/src/bound.rs +80 -59
- data/ext/cargo-vendor/{serde_derive-1.0.228 → serde_derive-1.0.229}/src/de/enum_adjacently.rs +46 -45
- data/ext/cargo-vendor/{serde_derive-1.0.228 → serde_derive-1.0.229}/src/de/enum_externally.rs +3 -2
- data/ext/cargo-vendor/{serde_derive-1.0.228 → serde_derive-1.0.229}/src/de.rs +10 -7
- data/ext/cargo-vendor/{serde_derive-1.0.228 → serde_derive-1.0.229}/src/internals/ast.rs +15 -8
- data/ext/cargo-vendor/{serde_derive-1.0.228 → serde_derive-1.0.229}/src/internals/attr.rs +18 -31
- data/ext/cargo-vendor/{serde_derive-1.0.228 → serde_derive-1.0.229}/src/internals/ctxt.rs +3 -4
- data/ext/cargo-vendor/{serde_derive-1.0.228 → serde_derive-1.0.229}/src/internals/receiver.rs +2 -2
- data/ext/cargo-vendor/{serde_derive-1.0.228 → serde_derive-1.0.229}/src/lib.rs +1 -1
- data/ext/cargo-vendor/{serde_derive-1.0.228 → serde_derive-1.0.229}/src/pretend.rs +7 -7
- data/ext/cargo-vendor/{serde_derive-1.0.228 → serde_derive-1.0.229}/src/ser.rs +94 -94
- data/ext/cargo-vendor/{serde_magnus-0.10.0 → serde_magnus-0.11.0}/.cargo-checksum.json +1 -1
- data/ext/cargo-vendor/serde_magnus-0.11.0/.cargo_vcs_info.json +6 -0
- data/ext/cargo-vendor/{serde_magnus-0.10.0 → serde_magnus-0.11.0}/Cargo.lock +71 -73
- data/ext/cargo-vendor/{serde_magnus-0.10.0 → serde_magnus-0.11.0}/Cargo.toml +2 -2
- data/ext/cargo-vendor/{serde_magnus-0.10.0 → serde_magnus-0.11.0}/Cargo.toml.orig +2 -2
- data/ext/cargo-vendor/{serde_magnus-0.10.0 → serde_magnus-0.11.0}/README.md +1 -1
- data/ext/cargo-vendor/{serde_magnus-0.10.0 → serde_magnus-0.11.0}/src/de/deserializer.rs +2 -2
- data/ext/cargo-vendor/syn-3.0.9/.cargo-checksum.json +1 -0
- data/ext/cargo-vendor/syn-3.0.9/.cargo_vcs_info.json +6 -0
- data/ext/cargo-vendor/syn-3.0.9/Cargo.lock +1948 -0
- data/ext/cargo-vendor/syn-3.0.9/Cargo.toml +268 -0
- data/ext/cargo-vendor/syn-3.0.9/Cargo.toml.orig +95 -0
- data/ext/cargo-vendor/{lazycell-1.3.0 → syn-3.0.9}/LICENSE-APACHE +0 -25
- data/ext/cargo-vendor/syn-3.0.9/README.md +297 -0
- data/ext/cargo-vendor/syn-3.0.9/benches/file.rs +59 -0
- data/ext/cargo-vendor/syn-3.0.9/benches/rust.rs +189 -0
- data/ext/cargo-vendor/syn-3.0.9/src/attr.rs +841 -0
- data/ext/cargo-vendor/syn-3.0.9/src/bigint.rs +68 -0
- data/ext/cargo-vendor/syn-3.0.9/src/buffer.rs +462 -0
- data/ext/cargo-vendor/syn-3.0.9/src/classify.rs +311 -0
- data/ext/cargo-vendor/syn-3.0.9/src/custom_keyword.rs +260 -0
- data/ext/cargo-vendor/syn-3.0.9/src/custom_punctuation.rs +305 -0
- data/ext/cargo-vendor/syn-3.0.9/src/data.rs +489 -0
- data/ext/cargo-vendor/syn-3.0.9/src/derive.rs +260 -0
- data/ext/cargo-vendor/syn-3.0.9/src/discouraged.rs +233 -0
- data/ext/cargo-vendor/syn-3.0.9/src/drops.rs +58 -0
- data/ext/cargo-vendor/syn-3.0.9/src/error.rs +552 -0
- data/ext/cargo-vendor/syn-3.0.9/src/export.rs +73 -0
- data/ext/cargo-vendor/syn-3.0.9/src/expr.rs +4249 -0
- data/ext/cargo-vendor/syn-3.0.9/src/ext.rs +180 -0
- data/ext/cargo-vendor/syn-3.0.9/src/file.rs +136 -0
- data/ext/cargo-vendor/syn-3.0.9/src/fixup.rs +773 -0
- data/ext/cargo-vendor/syn-3.0.9/src/gen/clone.rs +2394 -0
- data/ext/cargo-vendor/syn-3.0.9/src/gen/debug.rs +3399 -0
- data/ext/cargo-vendor/syn-3.0.9/src/gen/eq.rs +2459 -0
- data/ext/cargo-vendor/syn-3.0.9/src/gen/fold.rs +3934 -0
- data/ext/cargo-vendor/syn-3.0.9/src/gen/hash.rs +3040 -0
- data/ext/cargo-vendor/syn-3.0.9/src/gen/token.css +744 -0
- data/ext/cargo-vendor/syn-3.0.9/src/gen/visit.rs +4037 -0
- data/ext/cargo-vendor/syn-3.0.9/src/gen/visit_mut.rs +3824 -0
- data/ext/cargo-vendor/syn-3.0.9/src/generics.rs +1490 -0
- data/ext/cargo-vendor/syn-3.0.9/src/group.rs +294 -0
- data/ext/cargo-vendor/syn-3.0.9/src/ident.rs +109 -0
- data/ext/cargo-vendor/syn-3.0.9/src/item.rs +3923 -0
- data/ext/cargo-vendor/syn-3.0.9/src/lib.rs +1132 -0
- data/ext/cargo-vendor/syn-3.0.9/src/lifetime.rs +193 -0
- data/ext/cargo-vendor/syn-3.0.9/src/lit.rs +1881 -0
- data/ext/cargo-vendor/syn-3.0.9/src/lookahead.rs +350 -0
- data/ext/cargo-vendor/syn-3.0.9/src/mac.rs +225 -0
- data/ext/cargo-vendor/syn-3.0.9/src/macros.rs +151 -0
- data/ext/cargo-vendor/syn-3.0.9/src/meta.rs +427 -0
- data/ext/cargo-vendor/syn-3.0.9/src/op.rs +219 -0
- data/ext/cargo-vendor/syn-3.0.9/src/parse.rs +1420 -0
- data/ext/cargo-vendor/syn-3.0.9/src/parse_macro_input.rs +128 -0
- data/ext/cargo-vendor/syn-3.0.9/src/parse_quote.rs +261 -0
- data/ext/cargo-vendor/syn-3.0.9/src/pat.rs +994 -0
- data/ext/cargo-vendor/syn-3.0.9/src/path.rs +972 -0
- data/ext/cargo-vendor/syn-3.0.9/src/precedence.rs +210 -0
- data/ext/cargo-vendor/syn-3.0.9/src/print.rs +16 -0
- data/ext/cargo-vendor/syn-3.0.9/src/punctuated.rs +1200 -0
- data/ext/cargo-vendor/syn-3.0.9/src/restriction.rs +160 -0
- data/ext/cargo-vendor/syn-3.0.9/src/scan_expr.rs +270 -0
- data/ext/cargo-vendor/syn-3.0.9/src/sealed.rs +4 -0
- data/ext/cargo-vendor/syn-3.0.9/src/span.rs +63 -0
- data/ext/cargo-vendor/syn-3.0.9/src/spanned.rs +118 -0
- data/ext/cargo-vendor/syn-3.0.9/src/stmt.rs +536 -0
- data/ext/cargo-vendor/syn-3.0.9/src/thread.rs +60 -0
- data/ext/cargo-vendor/syn-3.0.9/src/token.rs +1103 -0
- data/ext/cargo-vendor/syn-3.0.9/src/tt.rs +97 -0
- data/ext/cargo-vendor/syn-3.0.9/src/ty.rs +1347 -0
- data/ext/cargo-vendor/syn-3.0.9/src/verbatim.rs +32 -0
- data/ext/cargo-vendor/syn-3.0.9/src/whitespace.rs +65 -0
- data/ext/cargo-vendor/syn-3.0.9/tests/common/eq.rs +939 -0
- data/ext/cargo-vendor/syn-3.0.9/tests/common/mod.rs +6 -0
- data/ext/cargo-vendor/syn-3.0.9/tests/common/parse.rs +51 -0
- data/ext/cargo-vendor/syn-3.0.9/tests/common/visit.rs +119 -0
- data/ext/cargo-vendor/syn-3.0.9/tests/debug/gen.rs +5394 -0
- data/ext/cargo-vendor/syn-3.0.9/tests/debug/mod.rs +147 -0
- data/ext/cargo-vendor/syn-3.0.9/tests/macros/mod.rs +7 -0
- data/ext/cargo-vendor/syn-3.0.9/tests/regression/issue1108.rs +5 -0
- data/ext/cargo-vendor/syn-3.0.9/tests/regression/issue1235.rs +32 -0
- data/ext/cargo-vendor/syn-3.0.9/tests/regression.rs +5 -0
- data/ext/cargo-vendor/syn-3.0.9/tests/repo/mod.rs +789 -0
- data/ext/cargo-vendor/syn-3.0.9/tests/repo/progress.rs +37 -0
- data/ext/cargo-vendor/syn-3.0.9/tests/snapshot/mod.rs +68 -0
- data/ext/cargo-vendor/syn-3.0.9/tests/test_attribute.rs +231 -0
- data/ext/cargo-vendor/syn-3.0.9/tests/test_derive_input.rs +801 -0
- data/ext/cargo-vendor/syn-3.0.9/tests/test_expr.rs +1721 -0
- data/ext/cargo-vendor/syn-3.0.9/tests/test_generics.rs +363 -0
- data/ext/cargo-vendor/syn-3.0.9/tests/test_grouping.rs +59 -0
- data/ext/cargo-vendor/syn-3.0.9/tests/test_ident.rs +87 -0
- data/ext/cargo-vendor/syn-3.0.9/tests/test_item.rs +374 -0
- data/ext/cargo-vendor/syn-3.0.9/tests/test_lit.rs +335 -0
- data/ext/cargo-vendor/syn-3.0.9/tests/test_meta.rs +180 -0
- data/ext/cargo-vendor/syn-3.0.9/tests/test_parse_buffer.rs +104 -0
- data/ext/cargo-vendor/syn-3.0.9/tests/test_parse_quote.rs +175 -0
- data/ext/cargo-vendor/syn-3.0.9/tests/test_parse_stream.rs +187 -0
- data/ext/cargo-vendor/syn-3.0.9/tests/test_pat.rs +158 -0
- data/ext/cargo-vendor/syn-3.0.9/tests/test_path.rs +117 -0
- data/ext/cargo-vendor/syn-3.0.9/tests/test_precedence.rs +560 -0
- data/ext/cargo-vendor/syn-3.0.9/tests/test_punctuated.rs +92 -0
- data/ext/cargo-vendor/syn-3.0.9/tests/test_receiver.rs +275 -0
- data/ext/cargo-vendor/syn-3.0.9/tests/test_round_trip.rs +226 -0
- data/ext/cargo-vendor/syn-3.0.9/tests/test_shebang.rs +77 -0
- data/ext/cargo-vendor/syn-3.0.9/tests/test_size.rs +54 -0
- data/ext/cargo-vendor/syn-3.0.9/tests/test_stmt.rs +378 -0
- data/ext/cargo-vendor/syn-3.0.9/tests/test_token_trees.rs +38 -0
- data/ext/cargo-vendor/syn-3.0.9/tests/test_ty.rs +479 -0
- data/ext/cargo-vendor/syn-3.0.9/tests/test_unparenthesize.rs +71 -0
- data/ext/cargo-vendor/syn-3.0.9/tests/test_visibility.rs +193 -0
- data/ext/cargo-vendor/syn-3.0.9/tests/zzz_stable.rs +33 -0
- data/ext/code_ownership/Cargo.toml +1 -1
- data/ext/code_ownership/src/lib.rs +2 -2
- data/lib/code_ownership/version.rb +1 -1
- data/lib/code_ownership.rb +1 -1
- metadata +400 -293
- data/ext/cargo-vendor/bindgen-0.69.5/.cargo-checksum.json +0 -1
- data/ext/cargo-vendor/bindgen-0.69.5/.cargo_vcs_info.json +0 -6
- data/ext/cargo-vendor/bindgen-0.69.5/features.rs +0 -296
- data/ext/cargo-vendor/lazycell-1.3.0/.cargo-checksum.json +0 -1
- data/ext/cargo-vendor/lazycell-1.3.0/.cargo_vcs_info.json +0 -5
- data/ext/cargo-vendor/lazycell-1.3.0/CHANGELOG.md +0 -197
- data/ext/cargo-vendor/lazycell-1.3.0/Cargo.toml +0 -34
- data/ext/cargo-vendor/lazycell-1.3.0/Cargo.toml.orig +0 -27
- data/ext/cargo-vendor/lazycell-1.3.0/LICENSE-MIT +0 -26
- data/ext/cargo-vendor/lazycell-1.3.0/README.md +0 -73
- data/ext/cargo-vendor/lazycell-1.3.0/src/lib.rs +0 -680
- data/ext/cargo-vendor/lazycell-1.3.0/src/serde_impl.rs +0 -86
- data/ext/cargo-vendor/rb-sys-0.9.117/.cargo-checksum.json +0 -1
- data/ext/cargo-vendor/rb-sys-0.9.117/.cargo_vcs_info.json +0 -6
- data/ext/cargo-vendor/rb-sys-0.9.117/src/macros.rs +0 -371
- data/ext/cargo-vendor/rb-sys-0.9.117/src/stable_api/ruby_2_6.rs +0 -324
- data/ext/cargo-vendor/rb-sys-0.9.117/src/stable_api/ruby_2_7.rs +0 -324
- data/ext/cargo-vendor/rb-sys-0.9.117/src/stable_api/ruby_3_0.rs +0 -332
- data/ext/cargo-vendor/rb-sys-0.9.117/src/stable_api/ruby_3_1.rs +0 -325
- data/ext/cargo-vendor/rb-sys-0.9.117/src/stable_api/ruby_3_2.rs +0 -323
- data/ext/cargo-vendor/rb-sys-0.9.117/src/stable_api/ruby_3_3.rs +0 -339
- data/ext/cargo-vendor/rb-sys-0.9.117/src/stable_api/ruby_3_4.rs +0 -339
- data/ext/cargo-vendor/rb-sys-build-0.9.117/.cargo-checksum.json +0 -1
- data/ext/cargo-vendor/rb-sys-env-0.2.2/.cargo-checksum.json +0 -1
- data/ext/cargo-vendor/rb-sys-env-0.2.2/.cargo_vcs_info.json +0 -6
- data/ext/cargo-vendor/rustc-hash-1.1.0/.cargo-checksum.json +0 -1
- data/ext/cargo-vendor/rustc-hash-1.1.0/.cargo_vcs_info.json +0 -5
- data/ext/cargo-vendor/rustc-hash-1.1.0/CODE_OF_CONDUCT.md +0 -40
- data/ext/cargo-vendor/rustc-hash-1.1.0/Cargo.toml +0 -25
- data/ext/cargo-vendor/rustc-hash-1.1.0/Cargo.toml.orig +0 -13
- data/ext/cargo-vendor/rustc-hash-1.1.0/LICENSE-APACHE +0 -201
- data/ext/cargo-vendor/rustc-hash-1.1.0/README.md +0 -38
- data/ext/cargo-vendor/rustc-hash-1.1.0/src/lib.rs +0 -148
- data/ext/cargo-vendor/serde-1.0.228/.cargo_vcs_info.json +0 -6
- data/ext/cargo-vendor/serde_core-1.0.228/.cargo_vcs_info.json +0 -6
- data/ext/cargo-vendor/serde_derive-1.0.228/.cargo-checksum.json +0 -1
- data/ext/cargo-vendor/serde_derive-1.0.228/.cargo_vcs_info.json +0 -6
- data/ext/cargo-vendor/serde_magnus-0.10.0/.cargo_vcs_info.json +0 -6
- /data/ext/cargo-vendor/{bindgen-0.69.5 → bindgen-0.72.1}/LICENSE +0 -0
- /data/ext/cargo-vendor/{bindgen-0.69.5 → bindgen-0.72.1}/codegen/postprocessing/mod.rs +0 -0
- /data/ext/cargo-vendor/{bindgen-0.69.5 → bindgen-0.72.1}/ir/mod.rs +0 -0
- /data/ext/cargo-vendor/{bindgen-0.69.5 → bindgen-0.72.1}/options/helpers.rs +0 -0
- /data/ext/cargo-vendor/{bindgen-0.69.5 → bindgen-0.72.1}/parse.rs +0 -0
- /data/ext/cargo-vendor/{rb-sys-0.9.117 → rb-sys-0.9.130}/LICENSE-APACHE +0 -0
- /data/ext/cargo-vendor/{rb-sys-0.9.117 → rb-sys-0.9.130}/LICENSE-MIT +0 -0
- /data/ext/cargo-vendor/{rb-sys-0.9.117 → rb-sys-0.9.130}/bin/release.sh +0 -0
- /data/ext/cargo-vendor/{rb-sys-0.9.117 → rb-sys-0.9.130}/build/features.rs +0 -0
- /data/ext/cargo-vendor/{rb-sys-0.9.117 → rb-sys-0.9.130}/readme.md +0 -0
- /data/ext/cargo-vendor/{rb-sys-0.9.117 → rb-sys-0.9.130}/src/hidden.rs +0 -0
- /data/ext/cargo-vendor/{rb-sys-0.9.117 → rb-sys-0.9.130}/src/lib.rs +0 -0
- /data/ext/cargo-vendor/{rb-sys-0.9.117 → rb-sys-0.9.130}/src/ruby_abi_version.rs +0 -0
- /data/ext/cargo-vendor/{rb-sys-0.9.117 → rb-sys-0.9.130}/src/special_consts.rs +0 -0
- /data/ext/cargo-vendor/{rb-sys-0.9.117 → rb-sys-0.9.130}/src/symbol.rs +0 -0
- /data/ext/cargo-vendor/{rb-sys-0.9.117 → rb-sys-0.9.130}/src/tracking_allocator.rs +0 -0
- /data/ext/cargo-vendor/{rb-sys-0.9.117 → rb-sys-0.9.130}/src/value_type.rs +0 -0
- /data/ext/cargo-vendor/{rb-sys-build-0.9.117 → rb-sys-build-0.9.130}/LICENSE-APACHE +0 -0
- /data/ext/cargo-vendor/{rb-sys-build-0.9.117 → rb-sys-build-0.9.130}/LICENSE-MIT +0 -0
- /data/ext/cargo-vendor/{rb-sys-build-0.9.117 → rb-sys-build-0.9.130}/src/bindings/sanitizer.rs +0 -0
- /data/ext/cargo-vendor/{rb-sys-build-0.9.117 → rb-sys-build-0.9.130}/src/bindings/wrapper.h +0 -0
- /data/ext/cargo-vendor/{rb-sys-build-0.9.117 → rb-sys-build-0.9.130}/src/lib.rs +0 -0
- /data/ext/cargo-vendor/{rb-sys-build-0.9.117 → rb-sys-build-0.9.130}/src/rb_config/flags.rs +0 -0
- /data/ext/cargo-vendor/{rb-sys-build-0.9.117 → rb-sys-build-0.9.130}/src/rb_config/library.rs +0 -0
- /data/ext/cargo-vendor/{rb-sys-build-0.9.117 → rb-sys-build-0.9.130}/src/rb_config/search_path.rs +0 -0
- /data/ext/cargo-vendor/{rb-sys-build-0.9.117 → rb-sys-build-0.9.130}/src/utils.rs +0 -0
- /data/ext/cargo-vendor/{rb-sys-env-0.2.2 → rb-sys-env-0.2.3}/LICENSE-APACHE +0 -0
- /data/ext/cargo-vendor/{rb-sys-env-0.2.2 → rb-sys-env-0.2.3}/LICENSE-MIT +0 -0
- /data/ext/cargo-vendor/{rb-sys-env-0.2.2 → rb-sys-env-0.2.3}/build.rs +0 -0
- /data/ext/cargo-vendor/{rb-sys-env-0.2.2 → rb-sys-env-0.2.3}/src/defines.rs +0 -0
- /data/ext/cargo-vendor/{rb-sys-env-0.2.2 → rb-sys-env-0.2.3}/src/lib.rs +0 -0
- /data/ext/cargo-vendor/{rb-sys-env-0.2.2 → rb-sys-env-0.2.3}/src/rb_env.rs +0 -0
- /data/ext/cargo-vendor/{rb-sys-env-0.2.2 → rb-sys-env-0.2.3}/src/utils.rs +0 -0
- /data/ext/cargo-vendor/{serde-1.0.228 → serde-1.0.229}/LICENSE-APACHE +0 -0
- /data/ext/cargo-vendor/{rustc-hash-1.1.0 → serde-1.0.229}/LICENSE-MIT +0 -0
- /data/ext/cargo-vendor/{serde-1.0.228 → serde-1.0.229}/crates-io.md +0 -0
- /data/ext/cargo-vendor/{serde-1.0.228 → serde-1.0.229}/src/core/crate_root.rs +0 -0
- /data/ext/cargo-vendor/{serde-1.0.228 → serde-1.0.229}/src/core/de/ignored_any.rs +0 -0
- /data/ext/cargo-vendor/{serde-1.0.228 → serde-1.0.229}/src/core/de/mod.rs +0 -0
- /data/ext/cargo-vendor/{serde-1.0.228 → serde-1.0.229}/src/core/de/value.rs +0 -0
- /data/ext/cargo-vendor/{serde-1.0.228 → serde-1.0.229}/src/core/format.rs +0 -0
- /data/ext/cargo-vendor/{serde-1.0.228 → serde-1.0.229}/src/core/macros.rs +0 -0
- /data/ext/cargo-vendor/{serde-1.0.228 → serde-1.0.229}/src/core/private/content.rs +0 -0
- /data/ext/cargo-vendor/{serde-1.0.228 → serde-1.0.229}/src/core/private/doc.rs +0 -0
- /data/ext/cargo-vendor/{serde-1.0.228 → serde-1.0.229}/src/core/private/mod.rs +0 -0
- /data/ext/cargo-vendor/{serde-1.0.228 → serde-1.0.229}/src/core/private/seed.rs +0 -0
- /data/ext/cargo-vendor/{serde-1.0.228 → serde-1.0.229}/src/core/private/size_hint.rs +0 -0
- /data/ext/cargo-vendor/{serde-1.0.228 → serde-1.0.229}/src/core/private/string.rs +0 -0
- /data/ext/cargo-vendor/{serde-1.0.228 → serde-1.0.229}/src/core/ser/fmt.rs +0 -0
- /data/ext/cargo-vendor/{serde-1.0.228 → serde-1.0.229}/src/core/ser/impls.rs +0 -0
- /data/ext/cargo-vendor/{serde-1.0.228 → serde-1.0.229}/src/core/ser/impossible.rs +0 -0
- /data/ext/cargo-vendor/{serde-1.0.228 → serde-1.0.229}/src/core/ser/mod.rs +0 -0
- /data/ext/cargo-vendor/{serde-1.0.228 → serde-1.0.229}/src/core/std_error.rs +0 -0
- /data/ext/cargo-vendor/{serde-1.0.228 → serde-1.0.229}/src/integer128.rs +0 -0
- /data/ext/cargo-vendor/{serde-1.0.228 → serde-1.0.229}/src/private/de.rs +0 -0
- /data/ext/cargo-vendor/{serde-1.0.228 → serde-1.0.229}/src/private/mod.rs +0 -0
- /data/ext/cargo-vendor/{serde-1.0.228 → serde-1.0.229}/src/private/ser.rs +0 -0
- /data/ext/cargo-vendor/{serde_core-1.0.228 → serde_core-1.0.229}/LICENSE-APACHE +0 -0
- /data/ext/cargo-vendor/{serde-1.0.228 → serde_core-1.0.229}/LICENSE-MIT +0 -0
- /data/ext/cargo-vendor/{serde_core-1.0.228 → serde_core-1.0.229}/README.md +0 -0
- /data/ext/cargo-vendor/{serde_core-1.0.228 → serde_core-1.0.229}/src/crate_root.rs +0 -0
- /data/ext/cargo-vendor/{serde_core-1.0.228 → serde_core-1.0.229}/src/de/ignored_any.rs +0 -0
- /data/ext/cargo-vendor/{serde_core-1.0.228 → serde_core-1.0.229}/src/de/mod.rs +0 -0
- /data/ext/cargo-vendor/{serde_core-1.0.228 → serde_core-1.0.229}/src/de/value.rs +0 -0
- /data/ext/cargo-vendor/{serde_core-1.0.228 → serde_core-1.0.229}/src/format.rs +0 -0
- /data/ext/cargo-vendor/{serde_core-1.0.228 → serde_core-1.0.229}/src/macros.rs +0 -0
- /data/ext/cargo-vendor/{serde_core-1.0.228 → serde_core-1.0.229}/src/private/content.rs +0 -0
- /data/ext/cargo-vendor/{serde_core-1.0.228 → serde_core-1.0.229}/src/private/doc.rs +0 -0
- /data/ext/cargo-vendor/{serde_core-1.0.228 → serde_core-1.0.229}/src/private/mod.rs +0 -0
- /data/ext/cargo-vendor/{serde_core-1.0.228 → serde_core-1.0.229}/src/private/seed.rs +0 -0
- /data/ext/cargo-vendor/{serde_core-1.0.228 → serde_core-1.0.229}/src/private/size_hint.rs +0 -0
- /data/ext/cargo-vendor/{serde_core-1.0.228 → serde_core-1.0.229}/src/private/string.rs +0 -0
- /data/ext/cargo-vendor/{serde_core-1.0.228 → serde_core-1.0.229}/src/ser/fmt.rs +0 -0
- /data/ext/cargo-vendor/{serde_core-1.0.228 → serde_core-1.0.229}/src/ser/impls.rs +0 -0
- /data/ext/cargo-vendor/{serde_core-1.0.228 → serde_core-1.0.229}/src/ser/impossible.rs +0 -0
- /data/ext/cargo-vendor/{serde_core-1.0.228 → serde_core-1.0.229}/src/ser/mod.rs +0 -0
- /data/ext/cargo-vendor/{serde_core-1.0.228 → serde_core-1.0.229}/src/std_error.rs +0 -0
- /data/ext/cargo-vendor/{serde_derive-1.0.228 → serde_derive-1.0.229}/LICENSE-APACHE +0 -0
- /data/ext/cargo-vendor/{serde_core-1.0.228 → serde_derive-1.0.229}/LICENSE-MIT +0 -0
- /data/ext/cargo-vendor/{serde_derive-1.0.228 → serde_derive-1.0.229}/crates-io.md +0 -0
- /data/ext/cargo-vendor/{serde_derive-1.0.228 → serde_derive-1.0.229}/src/de/enum_.rs +0 -0
- /data/ext/cargo-vendor/{serde_derive-1.0.228 → serde_derive-1.0.229}/src/de/enum_internally.rs +0 -0
- /data/ext/cargo-vendor/{serde_derive-1.0.228 → serde_derive-1.0.229}/src/de/enum_untagged.rs +0 -0
- /data/ext/cargo-vendor/{serde_derive-1.0.228 → serde_derive-1.0.229}/src/de/identifier.rs +0 -0
- /data/ext/cargo-vendor/{serde_derive-1.0.228 → serde_derive-1.0.229}/src/de/struct_.rs +0 -0
- /data/ext/cargo-vendor/{serde_derive-1.0.228 → serde_derive-1.0.229}/src/de/tuple.rs +0 -0
- /data/ext/cargo-vendor/{serde_derive-1.0.228 → serde_derive-1.0.229}/src/de/unit.rs +0 -0
- /data/ext/cargo-vendor/{serde_derive-1.0.228 → serde_derive-1.0.229}/src/deprecated.rs +0 -0
- /data/ext/cargo-vendor/{serde_derive-1.0.228 → serde_derive-1.0.229}/src/dummy.rs +0 -0
- /data/ext/cargo-vendor/{serde_derive-1.0.228 → serde_derive-1.0.229}/src/fragment.rs +0 -0
- /data/ext/cargo-vendor/{serde_derive-1.0.228 → serde_derive-1.0.229}/src/internals/case.rs +0 -0
- /data/ext/cargo-vendor/{serde_derive-1.0.228 → serde_derive-1.0.229}/src/internals/check.rs +0 -0
- /data/ext/cargo-vendor/{serde_derive-1.0.228 → serde_derive-1.0.229}/src/internals/mod.rs +0 -0
- /data/ext/cargo-vendor/{serde_derive-1.0.228 → serde_derive-1.0.229}/src/internals/name.rs +0 -0
- /data/ext/cargo-vendor/{serde_derive-1.0.228 → serde_derive-1.0.229}/src/internals/respan.rs +0 -0
- /data/ext/cargo-vendor/{serde_derive-1.0.228 → serde_derive-1.0.229}/src/internals/symbol.rs +0 -0
- /data/ext/cargo-vendor/{serde_derive-1.0.228 → serde_derive-1.0.229}/src/this.rs +0 -0
- /data/ext/cargo-vendor/{serde_magnus-0.10.0 → serde_magnus-0.11.0}/LICENSE +0 -0
- /data/ext/cargo-vendor/{serde_magnus-0.10.0 → serde_magnus-0.11.0}/src/de/array_deserializer.rs +0 -0
- /data/ext/cargo-vendor/{serde_magnus-0.10.0 → serde_magnus-0.11.0}/src/de/array_enumerator.rs +0 -0
- /data/ext/cargo-vendor/{serde_magnus-0.10.0 → serde_magnus-0.11.0}/src/de/enum_deserializer.rs +0 -0
- /data/ext/cargo-vendor/{serde_magnus-0.10.0 → serde_magnus-0.11.0}/src/de/hash_deserializer.rs +0 -0
- /data/ext/cargo-vendor/{serde_magnus-0.10.0 → serde_magnus-0.11.0}/src/de/mod.rs +0 -0
- /data/ext/cargo-vendor/{serde_magnus-0.10.0 → serde_magnus-0.11.0}/src/de/variant_deserializer.rs +0 -0
- /data/ext/cargo-vendor/{serde_magnus-0.10.0 → serde_magnus-0.11.0}/src/error.rs +0 -0
- /data/ext/cargo-vendor/{serde_magnus-0.10.0 → serde_magnus-0.11.0}/src/lib.rs +0 -0
- /data/ext/cargo-vendor/{serde_magnus-0.10.0 → serde_magnus-0.11.0}/src/ser/enums.rs +0 -0
- /data/ext/cargo-vendor/{serde_magnus-0.10.0 → serde_magnus-0.11.0}/src/ser/map_serializer.rs +0 -0
- /data/ext/cargo-vendor/{serde_magnus-0.10.0 → serde_magnus-0.11.0}/src/ser/mod.rs +0 -0
- /data/ext/cargo-vendor/{serde_magnus-0.10.0 → serde_magnus-0.11.0}/src/ser/seq_serializer.rs +0 -0
- /data/ext/cargo-vendor/{serde_magnus-0.10.0 → serde_magnus-0.11.0}/src/ser/serializer.rs +0 -0
- /data/ext/cargo-vendor/{serde_magnus-0.10.0 → serde_magnus-0.11.0}/src/ser/struct_serializer.rs +0 -0
- /data/ext/cargo-vendor/{serde_magnus-0.10.0 → serde_magnus-0.11.0}/src/ser/struct_variant_serializer.rs +0 -0
- /data/ext/cargo-vendor/{serde_magnus-0.10.0 → serde_magnus-0.11.0}/src/ser/tuple_variant_serializer.rs +0 -0
- /data/ext/cargo-vendor/{serde_magnus-0.10.0 → serde_magnus-0.11.0}/tests/deserializing_arrays.rs +0 -0
- /data/ext/cargo-vendor/{serde_magnus-0.10.0 → serde_magnus-0.11.0}/tests/deserializing_booleans.rs +0 -0
- /data/ext/cargo-vendor/{serde_magnus-0.10.0 → serde_magnus-0.11.0}/tests/deserializing_enums.rs +0 -0
- /data/ext/cargo-vendor/{serde_magnus-0.10.0 → serde_magnus-0.11.0}/tests/deserializing_floats.rs +0 -0
- /data/ext/cargo-vendor/{serde_magnus-0.10.0 → serde_magnus-0.11.0}/tests/deserializing_integers.rs +0 -0
- /data/ext/cargo-vendor/{serde_magnus-0.10.0 → serde_magnus-0.11.0}/tests/deserializing_maps.rs +0 -0
- /data/ext/cargo-vendor/{serde_magnus-0.10.0 → serde_magnus-0.11.0}/tests/deserializing_options.rs +0 -0
- /data/ext/cargo-vendor/{serde_magnus-0.10.0 → serde_magnus-0.11.0}/tests/deserializing_results.rs +0 -0
- /data/ext/cargo-vendor/{serde_magnus-0.10.0 → serde_magnus-0.11.0}/tests/deserializing_strings.rs +0 -0
- /data/ext/cargo-vendor/{serde_magnus-0.10.0 → serde_magnus-0.11.0}/tests/deserializing_structs.rs +0 -0
- /data/ext/cargo-vendor/{serde_magnus-0.10.0 → serde_magnus-0.11.0}/tests/deserializing_tuples.rs +0 -0
- /data/ext/cargo-vendor/{serde_magnus-0.10.0 → serde_magnus-0.11.0}/tests/deserializing_vecs.rs +0 -0
- /data/ext/cargo-vendor/{serde_magnus-0.10.0 → serde_magnus-0.11.0}/tests/serializing_arrays.rs +0 -0
- /data/ext/cargo-vendor/{serde_magnus-0.10.0 → serde_magnus-0.11.0}/tests/serializing_booleans.rs +0 -0
- /data/ext/cargo-vendor/{serde_magnus-0.10.0 → serde_magnus-0.11.0}/tests/serializing_enums.rs +0 -0
- /data/ext/cargo-vendor/{serde_magnus-0.10.0 → serde_magnus-0.11.0}/tests/serializing_floats.rs +0 -0
- /data/ext/cargo-vendor/{serde_magnus-0.10.0 → serde_magnus-0.11.0}/tests/serializing_integers.rs +0 -0
- /data/ext/cargo-vendor/{serde_magnus-0.10.0 → serde_magnus-0.11.0}/tests/serializing_maps.rs +0 -0
- /data/ext/cargo-vendor/{serde_magnus-0.10.0 → serde_magnus-0.11.0}/tests/serializing_options.rs +0 -0
- /data/ext/cargo-vendor/{serde_magnus-0.10.0 → serde_magnus-0.11.0}/tests/serializing_results.rs +0 -0
- /data/ext/cargo-vendor/{serde_magnus-0.10.0 → serde_magnus-0.11.0}/tests/serializing_strings.rs +0 -0
- /data/ext/cargo-vendor/{serde_magnus-0.10.0 → serde_magnus-0.11.0}/tests/serializing_structs.rs +0 -0
- /data/ext/cargo-vendor/{serde_magnus-0.10.0 → serde_magnus-0.11.0}/tests/serializing_tuples.rs +0 -0
- /data/ext/cargo-vendor/{serde_magnus-0.10.0 → serde_magnus-0.11.0}/tests/serializing_vecs.rs +0 -0
- /data/ext/cargo-vendor/{serde_derive-1.0.228 → syn-3.0.9}/LICENSE-MIT +0 -0
|
@@ -0,0 +1,939 @@
|
|
|
1
|
+
#![allow(unused_macro_rules)]
|
|
2
|
+
|
|
3
|
+
extern crate rustc_ast;
|
|
4
|
+
extern crate rustc_data_structures;
|
|
5
|
+
extern crate rustc_driver;
|
|
6
|
+
extern crate rustc_span;
|
|
7
|
+
extern crate thin_vec;
|
|
8
|
+
|
|
9
|
+
use rustc_ast::ast::AngleBracketedArg;
|
|
10
|
+
use rustc_ast::ast::AngleBracketedArgs;
|
|
11
|
+
use rustc_ast::ast::AnonConst;
|
|
12
|
+
use rustc_ast::ast::Arm;
|
|
13
|
+
use rustc_ast::ast::AsmMacro;
|
|
14
|
+
use rustc_ast::ast::AssignOpKind;
|
|
15
|
+
use rustc_ast::ast::AssocItemConstraint;
|
|
16
|
+
use rustc_ast::ast::AssocItemConstraintKind;
|
|
17
|
+
use rustc_ast::ast::AssocItemKind;
|
|
18
|
+
use rustc_ast::ast::AttrArgs;
|
|
19
|
+
use rustc_ast::ast::AttrId;
|
|
20
|
+
use rustc_ast::ast::AttrItem;
|
|
21
|
+
use rustc_ast::ast::AttrKind;
|
|
22
|
+
use rustc_ast::ast::AttrStyle;
|
|
23
|
+
use rustc_ast::ast::Attribute;
|
|
24
|
+
use rustc_ast::ast::BinOpKind;
|
|
25
|
+
use rustc_ast::ast::BindingMode;
|
|
26
|
+
use rustc_ast::ast::Block;
|
|
27
|
+
use rustc_ast::ast::BlockCheckMode;
|
|
28
|
+
use rustc_ast::ast::BorrowKind;
|
|
29
|
+
use rustc_ast::ast::BoundAsyncness;
|
|
30
|
+
use rustc_ast::ast::BoundConstness;
|
|
31
|
+
use rustc_ast::ast::BoundPolarity;
|
|
32
|
+
use rustc_ast::ast::ByRef;
|
|
33
|
+
use rustc_ast::ast::CaptureBy;
|
|
34
|
+
use rustc_ast::ast::Closure;
|
|
35
|
+
use rustc_ast::ast::ClosureBinder;
|
|
36
|
+
use rustc_ast::ast::Const;
|
|
37
|
+
use rustc_ast::ast::ConstBlockItem;
|
|
38
|
+
use rustc_ast::ast::ConstItem;
|
|
39
|
+
use rustc_ast::ast::CoroutineKind;
|
|
40
|
+
use rustc_ast::ast::CoroutineMarker;
|
|
41
|
+
use rustc_ast::ast::Crate;
|
|
42
|
+
use rustc_ast::ast::Defaultness;
|
|
43
|
+
use rustc_ast::ast::Delegation;
|
|
44
|
+
use rustc_ast::ast::DelegationMac;
|
|
45
|
+
use rustc_ast::ast::DelegationSource;
|
|
46
|
+
use rustc_ast::ast::DelegationSuffixes;
|
|
47
|
+
use rustc_ast::ast::DelimArgs;
|
|
48
|
+
use rustc_ast::ast::EiiDecl;
|
|
49
|
+
use rustc_ast::ast::EiiImpl;
|
|
50
|
+
use rustc_ast::ast::EnumDef;
|
|
51
|
+
use rustc_ast::ast::Expr;
|
|
52
|
+
use rustc_ast::ast::ExprField;
|
|
53
|
+
use rustc_ast::ast::ExprKind;
|
|
54
|
+
use rustc_ast::ast::Extern;
|
|
55
|
+
use rustc_ast::ast::FieldDef;
|
|
56
|
+
use rustc_ast::ast::FieldDefExtras;
|
|
57
|
+
use rustc_ast::ast::FloatTy;
|
|
58
|
+
use rustc_ast::ast::Fn;
|
|
59
|
+
use rustc_ast::ast::FnContract;
|
|
60
|
+
use rustc_ast::ast::FnDecl;
|
|
61
|
+
use rustc_ast::ast::FnHeader;
|
|
62
|
+
use rustc_ast::ast::FnPtrTy;
|
|
63
|
+
use rustc_ast::ast::FnRetTy;
|
|
64
|
+
use rustc_ast::ast::FnSig;
|
|
65
|
+
use rustc_ast::ast::ForLoop;
|
|
66
|
+
use rustc_ast::ast::ForLoopKind;
|
|
67
|
+
use rustc_ast::ast::ForeignItemKind;
|
|
68
|
+
use rustc_ast::ast::ForeignMod;
|
|
69
|
+
use rustc_ast::ast::FormatAlignment;
|
|
70
|
+
use rustc_ast::ast::FormatArgPosition;
|
|
71
|
+
use rustc_ast::ast::FormatArgPositionKind;
|
|
72
|
+
use rustc_ast::ast::FormatArgs;
|
|
73
|
+
use rustc_ast::ast::FormatArgsPiece;
|
|
74
|
+
use rustc_ast::ast::FormatArgument;
|
|
75
|
+
use rustc_ast::ast::FormatArgumentKind;
|
|
76
|
+
use rustc_ast::ast::FormatArguments;
|
|
77
|
+
use rustc_ast::ast::FormatCount;
|
|
78
|
+
use rustc_ast::ast::FormatDebugHex;
|
|
79
|
+
use rustc_ast::ast::FormatOptions;
|
|
80
|
+
use rustc_ast::ast::FormatPlaceholder;
|
|
81
|
+
use rustc_ast::ast::FormatSign;
|
|
82
|
+
use rustc_ast::ast::FormatTrait;
|
|
83
|
+
use rustc_ast::ast::GenericArg;
|
|
84
|
+
use rustc_ast::ast::GenericArgs;
|
|
85
|
+
use rustc_ast::ast::GenericBound;
|
|
86
|
+
use rustc_ast::ast::GenericParam;
|
|
87
|
+
use rustc_ast::ast::GenericParamKind;
|
|
88
|
+
use rustc_ast::ast::Generics;
|
|
89
|
+
use rustc_ast::ast::Guard;
|
|
90
|
+
use rustc_ast::ast::Impl;
|
|
91
|
+
use rustc_ast::ast::ImplPolarity;
|
|
92
|
+
use rustc_ast::ast::ImplRestriction;
|
|
93
|
+
use rustc_ast::ast::Inline;
|
|
94
|
+
use rustc_ast::ast::InlineAsm;
|
|
95
|
+
use rustc_ast::ast::InlineAsmOperand;
|
|
96
|
+
use rustc_ast::ast::InlineAsmOptions;
|
|
97
|
+
use rustc_ast::ast::InlineAsmRegOrRegClass;
|
|
98
|
+
use rustc_ast::ast::InlineAsmSym;
|
|
99
|
+
use rustc_ast::ast::InlineAsmTemplatePiece;
|
|
100
|
+
use rustc_ast::ast::IntTy;
|
|
101
|
+
use rustc_ast::ast::IsAuto;
|
|
102
|
+
use rustc_ast::ast::Item;
|
|
103
|
+
use rustc_ast::ast::ItemKind;
|
|
104
|
+
use rustc_ast::ast::Label;
|
|
105
|
+
use rustc_ast::ast::Lifetime;
|
|
106
|
+
use rustc_ast::ast::LitFloatType;
|
|
107
|
+
use rustc_ast::ast::LitIntType;
|
|
108
|
+
use rustc_ast::ast::LitKind;
|
|
109
|
+
use rustc_ast::ast::Local;
|
|
110
|
+
use rustc_ast::ast::LocalKind;
|
|
111
|
+
use rustc_ast::ast::MacCall;
|
|
112
|
+
use rustc_ast::ast::MacCallStmt;
|
|
113
|
+
use rustc_ast::ast::MacStmtStyle;
|
|
114
|
+
use rustc_ast::ast::MacroDef;
|
|
115
|
+
use rustc_ast::ast::MatchKind;
|
|
116
|
+
use rustc_ast::ast::MetaItem;
|
|
117
|
+
use rustc_ast::ast::MetaItemInner;
|
|
118
|
+
use rustc_ast::ast::MetaItemKind;
|
|
119
|
+
use rustc_ast::ast::MetaItemLit;
|
|
120
|
+
use rustc_ast::ast::MethodCall;
|
|
121
|
+
use rustc_ast::ast::ModKind;
|
|
122
|
+
use rustc_ast::ast::ModSpans;
|
|
123
|
+
use rustc_ast::ast::Movability;
|
|
124
|
+
use rustc_ast::ast::MutRestriction;
|
|
125
|
+
use rustc_ast::ast::Mutability;
|
|
126
|
+
use rustc_ast::ast::NodeId;
|
|
127
|
+
use rustc_ast::ast::NormalAttr;
|
|
128
|
+
use rustc_ast::ast::Param;
|
|
129
|
+
use rustc_ast::ast::Parens;
|
|
130
|
+
use rustc_ast::ast::ParenthesizedArgs;
|
|
131
|
+
use rustc_ast::ast::Pat;
|
|
132
|
+
use rustc_ast::ast::PatField;
|
|
133
|
+
use rustc_ast::ast::PatFieldsRest;
|
|
134
|
+
use rustc_ast::ast::PatKind;
|
|
135
|
+
use rustc_ast::ast::Path;
|
|
136
|
+
use rustc_ast::ast::PathSegment;
|
|
137
|
+
use rustc_ast::ast::Pinnedness;
|
|
138
|
+
use rustc_ast::ast::PolyTraitRef;
|
|
139
|
+
use rustc_ast::ast::PreciseCapturingArg;
|
|
140
|
+
use rustc_ast::ast::QSelf;
|
|
141
|
+
use rustc_ast::ast::RangeEnd;
|
|
142
|
+
use rustc_ast::ast::RangeLimits;
|
|
143
|
+
use rustc_ast::ast::RangeSyntax;
|
|
144
|
+
use rustc_ast::ast::Recovered;
|
|
145
|
+
use rustc_ast::ast::RestrictionKind;
|
|
146
|
+
use rustc_ast::ast::Safety;
|
|
147
|
+
use rustc_ast::ast::StaticItem;
|
|
148
|
+
use rustc_ast::ast::Stmt;
|
|
149
|
+
use rustc_ast::ast::StmtKind;
|
|
150
|
+
use rustc_ast::ast::StrLit;
|
|
151
|
+
use rustc_ast::ast::StrStyle;
|
|
152
|
+
use rustc_ast::ast::StructExpr;
|
|
153
|
+
use rustc_ast::ast::StructRest;
|
|
154
|
+
use rustc_ast::ast::SyntheticAttr;
|
|
155
|
+
use rustc_ast::ast::Term;
|
|
156
|
+
use rustc_ast::ast::TestBinderBody;
|
|
157
|
+
use rustc_ast::ast::TestBinderBoundTypeConstraint;
|
|
158
|
+
use rustc_ast::ast::TestBinderConstraint;
|
|
159
|
+
use rustc_ast::ast::TestBinderConstraints;
|
|
160
|
+
use rustc_ast::ast::TestBinderExists;
|
|
161
|
+
use rustc_ast::ast::TestBinderForall;
|
|
162
|
+
use rustc_ast::ast::Trait;
|
|
163
|
+
use rustc_ast::ast::TraitAlias;
|
|
164
|
+
use rustc_ast::ast::TraitBoundModifiers;
|
|
165
|
+
use rustc_ast::ast::TraitImplHeader;
|
|
166
|
+
use rustc_ast::ast::TraitObjectSyntax;
|
|
167
|
+
use rustc_ast::ast::TraitRef;
|
|
168
|
+
use rustc_ast::ast::Ty;
|
|
169
|
+
use rustc_ast::ast::TyAlias;
|
|
170
|
+
use rustc_ast::ast::TyKind;
|
|
171
|
+
use rustc_ast::ast::TyPat;
|
|
172
|
+
use rustc_ast::ast::TyPatKind;
|
|
173
|
+
use rustc_ast::ast::UintTy;
|
|
174
|
+
use rustc_ast::ast::UnOp;
|
|
175
|
+
use rustc_ast::ast::UnsafeBinderCastKind;
|
|
176
|
+
use rustc_ast::ast::UnsafeBinderTy;
|
|
177
|
+
use rustc_ast::ast::UnsafeSource;
|
|
178
|
+
use rustc_ast::ast::UseTree;
|
|
179
|
+
use rustc_ast::ast::UseTreeAndId;
|
|
180
|
+
use rustc_ast::ast::UseTreeKind;
|
|
181
|
+
use rustc_ast::ast::Variant;
|
|
182
|
+
use rustc_ast::ast::VariantData;
|
|
183
|
+
use rustc_ast::ast::Visibility;
|
|
184
|
+
use rustc_ast::ast::VisibilityKind;
|
|
185
|
+
use rustc_ast::ast::WhereBoundPredicate;
|
|
186
|
+
use rustc_ast::ast::WhereClause;
|
|
187
|
+
use rustc_ast::ast::WhereEqPredicate;
|
|
188
|
+
use rustc_ast::ast::WherePredicate;
|
|
189
|
+
use rustc_ast::ast::WherePredicateKind;
|
|
190
|
+
use rustc_ast::ast::WhereRegionPredicate;
|
|
191
|
+
use rustc_ast::ast::YieldKind;
|
|
192
|
+
use rustc_ast::attr::data_structures::CfgEntry;
|
|
193
|
+
use rustc_ast::token::{self, CommentKind, Delimiter, IdentKind, Lit, Token, TokenKind};
|
|
194
|
+
use rustc_ast::tokenstream::{
|
|
195
|
+
AttrTokenStream, AttrTokenTree, AttrsTarget, DelimSpacing, DelimSpan, LazyAttrTokenStream,
|
|
196
|
+
Spacing, TokenStream, TokenTree,
|
|
197
|
+
};
|
|
198
|
+
use rustc_data_structures::packed::Pu128;
|
|
199
|
+
use rustc_span::symbol::{sym, ByteSymbol, Ident, Symbol};
|
|
200
|
+
use rustc_span::{ErrorGuaranteed, LocalExpnId, Span, Spanned, SyntaxContext, DUMMY_SP};
|
|
201
|
+
use std::borrow::Cow;
|
|
202
|
+
use std::collections::HashMap;
|
|
203
|
+
use std::hash::{BuildHasher, Hash};
|
|
204
|
+
use std::sync::Arc;
|
|
205
|
+
use thin_vec::ThinVec;
|
|
206
|
+
|
|
207
|
+
pub trait SpanlessEq {
|
|
208
|
+
fn eq(&self, other: &Self) -> bool;
|
|
209
|
+
}
|
|
210
|
+
|
|
211
|
+
impl<T: ?Sized + SpanlessEq> SpanlessEq for Box<T> {
|
|
212
|
+
fn eq(&self, other: &Self) -> bool {
|
|
213
|
+
SpanlessEq::eq(&**self, &**other)
|
|
214
|
+
}
|
|
215
|
+
}
|
|
216
|
+
|
|
217
|
+
impl<T: ?Sized + SpanlessEq> SpanlessEq for Arc<T> {
|
|
218
|
+
fn eq(&self, other: &Self) -> bool {
|
|
219
|
+
SpanlessEq::eq(&**self, &**other)
|
|
220
|
+
}
|
|
221
|
+
}
|
|
222
|
+
|
|
223
|
+
impl<T: SpanlessEq> SpanlessEq for Option<T> {
|
|
224
|
+
fn eq(&self, other: &Self) -> bool {
|
|
225
|
+
match (self, other) {
|
|
226
|
+
(None, None) => true,
|
|
227
|
+
(Some(this), Some(other)) => SpanlessEq::eq(this, other),
|
|
228
|
+
_ => false,
|
|
229
|
+
}
|
|
230
|
+
}
|
|
231
|
+
}
|
|
232
|
+
|
|
233
|
+
impl<T: SpanlessEq, E: SpanlessEq> SpanlessEq for Result<T, E> {
|
|
234
|
+
fn eq(&self, other: &Self) -> bool {
|
|
235
|
+
match (self, other) {
|
|
236
|
+
(Ok(this), Ok(other)) => SpanlessEq::eq(this, other),
|
|
237
|
+
(Err(this), Err(other)) => SpanlessEq::eq(this, other),
|
|
238
|
+
_ => false,
|
|
239
|
+
}
|
|
240
|
+
}
|
|
241
|
+
}
|
|
242
|
+
|
|
243
|
+
impl<T: SpanlessEq> SpanlessEq for [T] {
|
|
244
|
+
fn eq(&self, other: &Self) -> bool {
|
|
245
|
+
self.len() == other.len() && self.iter().zip(other).all(|(a, b)| SpanlessEq::eq(a, b))
|
|
246
|
+
}
|
|
247
|
+
}
|
|
248
|
+
|
|
249
|
+
impl<T: SpanlessEq> SpanlessEq for Vec<T> {
|
|
250
|
+
fn eq(&self, other: &Self) -> bool {
|
|
251
|
+
<[T] as SpanlessEq>::eq(self, other)
|
|
252
|
+
}
|
|
253
|
+
}
|
|
254
|
+
|
|
255
|
+
impl<T: SpanlessEq> SpanlessEq for ThinVec<T> {
|
|
256
|
+
fn eq(&self, other: &Self) -> bool {
|
|
257
|
+
self.len() == other.len()
|
|
258
|
+
&& self
|
|
259
|
+
.iter()
|
|
260
|
+
.zip(other.iter())
|
|
261
|
+
.all(|(a, b)| SpanlessEq::eq(a, b))
|
|
262
|
+
}
|
|
263
|
+
}
|
|
264
|
+
|
|
265
|
+
impl<K: Eq + Hash, V: SpanlessEq, S: BuildHasher> SpanlessEq for HashMap<K, V, S> {
|
|
266
|
+
fn eq(&self, other: &Self) -> bool {
|
|
267
|
+
self.len() == other.len()
|
|
268
|
+
&& self.iter().all(|(key, this_v)| {
|
|
269
|
+
other
|
|
270
|
+
.get(key)
|
|
271
|
+
.is_some_and(|other_v| SpanlessEq::eq(this_v, other_v))
|
|
272
|
+
})
|
|
273
|
+
}
|
|
274
|
+
}
|
|
275
|
+
|
|
276
|
+
impl<'a, T: ?Sized + ToOwned + SpanlessEq> SpanlessEq for Cow<'a, T> {
|
|
277
|
+
fn eq(&self, other: &Self) -> bool {
|
|
278
|
+
<T as SpanlessEq>::eq(self, other)
|
|
279
|
+
}
|
|
280
|
+
}
|
|
281
|
+
|
|
282
|
+
impl<T: SpanlessEq> SpanlessEq for Spanned<T> {
|
|
283
|
+
fn eq(&self, other: &Self) -> bool {
|
|
284
|
+
SpanlessEq::eq(&self.node, &other.node)
|
|
285
|
+
}
|
|
286
|
+
}
|
|
287
|
+
|
|
288
|
+
impl<A: SpanlessEq, B: SpanlessEq> SpanlessEq for (A, B) {
|
|
289
|
+
fn eq(&self, other: &Self) -> bool {
|
|
290
|
+
SpanlessEq::eq(&self.0, &other.0) && SpanlessEq::eq(&self.1, &other.1)
|
|
291
|
+
}
|
|
292
|
+
}
|
|
293
|
+
|
|
294
|
+
impl<A: SpanlessEq, B: SpanlessEq, C: SpanlessEq> SpanlessEq for (A, B, C) {
|
|
295
|
+
fn eq(&self, other: &Self) -> bool {
|
|
296
|
+
SpanlessEq::eq(&self.0, &other.0)
|
|
297
|
+
&& SpanlessEq::eq(&self.1, &other.1)
|
|
298
|
+
&& SpanlessEq::eq(&self.2, &other.2)
|
|
299
|
+
}
|
|
300
|
+
}
|
|
301
|
+
|
|
302
|
+
macro_rules! spanless_eq_true {
|
|
303
|
+
($name:ty) => {
|
|
304
|
+
impl SpanlessEq for $name {
|
|
305
|
+
fn eq(&self, _other: &Self) -> bool {
|
|
306
|
+
true
|
|
307
|
+
}
|
|
308
|
+
}
|
|
309
|
+
};
|
|
310
|
+
}
|
|
311
|
+
|
|
312
|
+
spanless_eq_true!(Span);
|
|
313
|
+
spanless_eq_true!(DelimSpan);
|
|
314
|
+
spanless_eq_true!(AttrId);
|
|
315
|
+
spanless_eq_true!(NodeId);
|
|
316
|
+
spanless_eq_true!(SyntaxContext);
|
|
317
|
+
spanless_eq_true!(Spacing);
|
|
318
|
+
spanless_eq_true!(LocalExpnId);
|
|
319
|
+
|
|
320
|
+
macro_rules! spanless_eq_partial_eq {
|
|
321
|
+
($name:ty) => {
|
|
322
|
+
impl SpanlessEq for $name {
|
|
323
|
+
fn eq(&self, other: &Self) -> bool {
|
|
324
|
+
PartialEq::eq(self, other)
|
|
325
|
+
}
|
|
326
|
+
}
|
|
327
|
+
};
|
|
328
|
+
}
|
|
329
|
+
|
|
330
|
+
spanless_eq_partial_eq!(());
|
|
331
|
+
spanless_eq_partial_eq!(bool);
|
|
332
|
+
spanless_eq_partial_eq!(u8);
|
|
333
|
+
spanless_eq_partial_eq!(u16);
|
|
334
|
+
spanless_eq_partial_eq!(u32);
|
|
335
|
+
spanless_eq_partial_eq!(u128);
|
|
336
|
+
spanless_eq_partial_eq!(usize);
|
|
337
|
+
spanless_eq_partial_eq!(char);
|
|
338
|
+
spanless_eq_partial_eq!(str);
|
|
339
|
+
spanless_eq_partial_eq!(String);
|
|
340
|
+
spanless_eq_partial_eq!(Pu128);
|
|
341
|
+
spanless_eq_partial_eq!(Symbol);
|
|
342
|
+
spanless_eq_partial_eq!(ByteSymbol);
|
|
343
|
+
spanless_eq_partial_eq!(CommentKind);
|
|
344
|
+
spanless_eq_partial_eq!(Delimiter);
|
|
345
|
+
spanless_eq_partial_eq!(InlineAsmOptions);
|
|
346
|
+
spanless_eq_partial_eq!(token::LitKind);
|
|
347
|
+
spanless_eq_partial_eq!(ErrorGuaranteed);
|
|
348
|
+
spanless_eq_partial_eq!(CfgEntry);
|
|
349
|
+
|
|
350
|
+
macro_rules! spanless_eq_struct {
|
|
351
|
+
{
|
|
352
|
+
$($name:ident)::+ $(<$param:ident>)?
|
|
353
|
+
$([$field:tt $this:ident $other:ident])*
|
|
354
|
+
$(![$ignore:tt])*;
|
|
355
|
+
} => {
|
|
356
|
+
impl $(<$param: SpanlessEq>)* SpanlessEq for $($name)::+ $(<$param>)* {
|
|
357
|
+
fn eq(&self, other: &Self) -> bool {
|
|
358
|
+
let $($name)::+ { $($field: $this,)* $($ignore: _,)* } = self;
|
|
359
|
+
let $($name)::+ { $($field: $other,)* $($ignore: _,)* } = other;
|
|
360
|
+
true $(&& SpanlessEq::eq($this, $other))*
|
|
361
|
+
}
|
|
362
|
+
}
|
|
363
|
+
};
|
|
364
|
+
|
|
365
|
+
{
|
|
366
|
+
$($name:ident)::+ $(<$param:ident>)?
|
|
367
|
+
$([$field:tt $this:ident $other:ident])*
|
|
368
|
+
$(![$ignore:tt])*;
|
|
369
|
+
!$next:tt
|
|
370
|
+
$($rest:tt)*
|
|
371
|
+
} => {
|
|
372
|
+
spanless_eq_struct! {
|
|
373
|
+
$($name)::+ $(<$param>)*
|
|
374
|
+
$([$field $this $other])*
|
|
375
|
+
$(![$ignore])*
|
|
376
|
+
![$next];
|
|
377
|
+
$($rest)*
|
|
378
|
+
}
|
|
379
|
+
};
|
|
380
|
+
|
|
381
|
+
{
|
|
382
|
+
$($name:ident)::+ $(<$param:ident>)?
|
|
383
|
+
$([$field:tt $this:ident $other:ident])*
|
|
384
|
+
$(![$ignore:tt])*;
|
|
385
|
+
$next:tt
|
|
386
|
+
$($rest:tt)*
|
|
387
|
+
} => {
|
|
388
|
+
spanless_eq_struct! {
|
|
389
|
+
$($name)::+ $(<$param>)*
|
|
390
|
+
$([$field $this $other])*
|
|
391
|
+
[$next this other]
|
|
392
|
+
$(![$ignore])*;
|
|
393
|
+
$($rest)*
|
|
394
|
+
}
|
|
395
|
+
};
|
|
396
|
+
}
|
|
397
|
+
|
|
398
|
+
macro_rules! spanless_eq_enum {
|
|
399
|
+
{
|
|
400
|
+
$($name:ident)::+;
|
|
401
|
+
$([$($variant:ident)::+; $([$field:tt $this:ident $other:ident])* $(![$ignore:tt])*])*
|
|
402
|
+
} => {
|
|
403
|
+
impl SpanlessEq for $($name)::+ {
|
|
404
|
+
fn eq(&self, other: &Self) -> bool {
|
|
405
|
+
match self {
|
|
406
|
+
$(
|
|
407
|
+
$($variant)::+ { .. } => {}
|
|
408
|
+
)*
|
|
409
|
+
}
|
|
410
|
+
#[allow(unreachable_patterns)]
|
|
411
|
+
match (self, other) {
|
|
412
|
+
$(
|
|
413
|
+
(
|
|
414
|
+
$($variant)::+ { $($field: $this,)* $($ignore: _,)* },
|
|
415
|
+
$($variant)::+ { $($field: $other,)* $($ignore: _,)* },
|
|
416
|
+
) => {
|
|
417
|
+
true $(&& SpanlessEq::eq($this, $other))*
|
|
418
|
+
}
|
|
419
|
+
)*
|
|
420
|
+
_ => false,
|
|
421
|
+
}
|
|
422
|
+
}
|
|
423
|
+
}
|
|
424
|
+
};
|
|
425
|
+
|
|
426
|
+
{
|
|
427
|
+
$($name:ident)::+;
|
|
428
|
+
$([$($variant:ident)::+; $($fields:tt)*])*
|
|
429
|
+
$next:ident [$([$($named:tt)*])* $(![$ignore:tt])*] (!$i:tt $($field:tt)*)
|
|
430
|
+
$($rest:tt)*
|
|
431
|
+
} => {
|
|
432
|
+
spanless_eq_enum! {
|
|
433
|
+
$($name)::+;
|
|
434
|
+
$([$($variant)::+; $($fields)*])*
|
|
435
|
+
$next [$([$($named)*])* $(![$ignore])* ![$i]] ($($field)*)
|
|
436
|
+
$($rest)*
|
|
437
|
+
}
|
|
438
|
+
};
|
|
439
|
+
|
|
440
|
+
{
|
|
441
|
+
$($name:ident)::+;
|
|
442
|
+
$([$($variant:ident)::+; $($fields:tt)*])*
|
|
443
|
+
$next:ident [$([$($named:tt)*])* $(![$ignore:tt])*] ($i:tt $($field:tt)*)
|
|
444
|
+
$($rest:tt)*
|
|
445
|
+
} => {
|
|
446
|
+
spanless_eq_enum! {
|
|
447
|
+
$($name)::+;
|
|
448
|
+
$([$($variant)::+; $($fields)*])*
|
|
449
|
+
$next [$([$($named)*])* [$i this other] $(![$ignore])*] ($($field)*)
|
|
450
|
+
$($rest)*
|
|
451
|
+
}
|
|
452
|
+
};
|
|
453
|
+
|
|
454
|
+
{
|
|
455
|
+
$($name:ident)::+;
|
|
456
|
+
$([$($variant:ident)::+; $($fields:tt)*])*
|
|
457
|
+
$next:ident [$($named:tt)*] ()
|
|
458
|
+
$($rest:tt)*
|
|
459
|
+
} => {
|
|
460
|
+
spanless_eq_enum! {
|
|
461
|
+
$($name)::+;
|
|
462
|
+
$([$($variant)::+; $($fields)*])*
|
|
463
|
+
[$($name)::+::$next; $($named)*]
|
|
464
|
+
$($rest)*
|
|
465
|
+
}
|
|
466
|
+
};
|
|
467
|
+
|
|
468
|
+
{
|
|
469
|
+
$($name:ident)::+;
|
|
470
|
+
$([$($variant:ident)::+; $($fields:tt)*])*
|
|
471
|
+
$next:ident ($($field:tt)*)
|
|
472
|
+
$($rest:tt)*
|
|
473
|
+
} => {
|
|
474
|
+
spanless_eq_enum! {
|
|
475
|
+
$($name)::+;
|
|
476
|
+
$([$($variant)::+; $($fields)*])*
|
|
477
|
+
$next [] ($($field)*)
|
|
478
|
+
$($rest)*
|
|
479
|
+
}
|
|
480
|
+
};
|
|
481
|
+
|
|
482
|
+
{
|
|
483
|
+
$($name:ident)::+;
|
|
484
|
+
$([$($variant:ident)::+; $($fields:tt)*])*
|
|
485
|
+
$next:ident
|
|
486
|
+
$($rest:tt)*
|
|
487
|
+
} => {
|
|
488
|
+
spanless_eq_enum! {
|
|
489
|
+
$($name)::+;
|
|
490
|
+
$([$($variant)::+; $($fields)*])*
|
|
491
|
+
[$($name)::+::$next;]
|
|
492
|
+
$($rest)*
|
|
493
|
+
}
|
|
494
|
+
};
|
|
495
|
+
}
|
|
496
|
+
|
|
497
|
+
spanless_eq_struct!(AngleBracketedArgs; span args);
|
|
498
|
+
spanless_eq_struct!(AnonConst; id value);
|
|
499
|
+
spanless_eq_struct!(Arm; attrs pat guard body span id is_placeholder);
|
|
500
|
+
spanless_eq_struct!(AssocItemConstraint; id ident gen_args kind span);
|
|
501
|
+
spanless_eq_struct!(AttrItem; unsafety path args span);
|
|
502
|
+
spanless_eq_struct!(AttrTokenStream; 0);
|
|
503
|
+
spanless_eq_struct!(Attribute; kind id style span);
|
|
504
|
+
spanless_eq_struct!(AttrsTarget; attrs tokens);
|
|
505
|
+
spanless_eq_struct!(BindingMode; 0 1);
|
|
506
|
+
spanless_eq_struct!(Block; stmts id rules span);
|
|
507
|
+
spanless_eq_struct!(Closure; binder capture_clause constness coroutine_marker movability fn_decl body !fn_decl_span !fn_arg_span);
|
|
508
|
+
spanless_eq_struct!(ConstBlockItem; id span block);
|
|
509
|
+
spanless_eq_struct!(ConstItem; defaultness ident generics ty body define_opaque);
|
|
510
|
+
spanless_eq_struct!(CoroutineMarker; kind span closure_id return_impl_trait_id);
|
|
511
|
+
spanless_eq_struct!(Crate; attrs items spans id is_placeholder);
|
|
512
|
+
spanless_eq_struct!(Delegation; id qself path ident rename body source);
|
|
513
|
+
spanless_eq_struct!(DelegationMac; qself prefix suffixes body);
|
|
514
|
+
spanless_eq_struct!(DelimArgs; dspan delim tokens);
|
|
515
|
+
spanless_eq_struct!(DelimSpacing; open close);
|
|
516
|
+
spanless_eq_struct!(EiiDecl; foreign_item impl_unsafe);
|
|
517
|
+
spanless_eq_struct!(EiiImpl; node_id eii_macro_path known_eii_macro_resolution impl_safety span inner_span is_default);
|
|
518
|
+
spanless_eq_struct!(EnumDef; variants);
|
|
519
|
+
spanless_eq_struct!(Expr; id kind span attrs !tokens);
|
|
520
|
+
spanless_eq_struct!(ExprField; attrs id span ident expr is_shorthand is_placeholder);
|
|
521
|
+
spanless_eq_struct!(FieldDef; attrs id span vis extras ident ty is_placeholder);
|
|
522
|
+
spanless_eq_struct!(FieldDefExtras; safety mut_restriction default);
|
|
523
|
+
spanless_eq_struct!(Fn; defaultness ident generics sig contract define_opaque body eii_impl);
|
|
524
|
+
spanless_eq_struct!(FnContract; declarations requires ensures);
|
|
525
|
+
spanless_eq_struct!(FnDecl; inputs output);
|
|
526
|
+
spanless_eq_struct!(FnHeader; constness coroutine_marker safety ext);
|
|
527
|
+
spanless_eq_struct!(FnPtrTy; safety ext generic_params decl decl_span);
|
|
528
|
+
spanless_eq_struct!(FnSig; header decl span);
|
|
529
|
+
spanless_eq_struct!(ForLoop; pat iter body label kind);
|
|
530
|
+
spanless_eq_struct!(ForeignMod; extern_span safety abi items);
|
|
531
|
+
spanless_eq_struct!(FormatArgPosition; index kind span);
|
|
532
|
+
spanless_eq_struct!(FormatArgs; span template arguments uncooked_fmt_str is_source_literal);
|
|
533
|
+
spanless_eq_struct!(FormatArgument; original_span kind expr);
|
|
534
|
+
spanless_eq_struct!(FormatOptions; width precision alignment fill sign alternate zero_pad debug_hex);
|
|
535
|
+
spanless_eq_struct!(FormatPlaceholder; argument span format_trait format_options);
|
|
536
|
+
spanless_eq_struct!(GenericParam; id ident attrs bounds is_placeholder kind !colon_span);
|
|
537
|
+
spanless_eq_struct!(Generics; params where_clause span);
|
|
538
|
+
spanless_eq_struct!(Guard; cond span_with_leading_if);
|
|
539
|
+
spanless_eq_struct!(Impl; generics constness of_trait self_ty items);
|
|
540
|
+
spanless_eq_struct!(ImplRestriction; kind span);
|
|
541
|
+
spanless_eq_struct!(InlineAsm; asm_macro template template_strs operands clobber_abis options line_spans);
|
|
542
|
+
spanless_eq_struct!(InlineAsmSym; id qself path);
|
|
543
|
+
spanless_eq_struct!(Item<K>; attrs id span vis kind !tokens);
|
|
544
|
+
spanless_eq_struct!(Label; ident);
|
|
545
|
+
spanless_eq_struct!(Lifetime; id ident);
|
|
546
|
+
spanless_eq_struct!(Lit; kind symbol suffix);
|
|
547
|
+
spanless_eq_struct!(Local; id super_ pat ty kind span colon_sp attrs !tokens);
|
|
548
|
+
spanless_eq_struct!(MacCall; path args);
|
|
549
|
+
spanless_eq_struct!(MacCallStmt; mac style attrs tokens);
|
|
550
|
+
spanless_eq_struct!(MacroDef; body macro_rules eii_declaration);
|
|
551
|
+
spanless_eq_struct!(MetaItem; unsafety path kind span);
|
|
552
|
+
spanless_eq_struct!(MetaItemLit; symbol suffix kind span);
|
|
553
|
+
spanless_eq_struct!(MethodCall; seg receiver args !span);
|
|
554
|
+
spanless_eq_struct!(ModSpans; !inner_span !inject_use_span);
|
|
555
|
+
spanless_eq_struct!(MutRestriction; kind span);
|
|
556
|
+
spanless_eq_struct!(NormalAttr; item tokens);
|
|
557
|
+
spanless_eq_struct!(ParenthesizedArgs; span inputs inputs_span output);
|
|
558
|
+
spanless_eq_struct!(Pat; id kind span);
|
|
559
|
+
spanless_eq_struct!(PatField; ident pat is_shorthand attrs id span is_placeholder);
|
|
560
|
+
spanless_eq_struct!(Path; span segments);
|
|
561
|
+
spanless_eq_struct!(PathSegment; ident id args);
|
|
562
|
+
spanless_eq_struct!(PolyTraitRef; bound_generic_params modifiers trait_ref span parens);
|
|
563
|
+
spanless_eq_struct!(QSelf; ty path_span position);
|
|
564
|
+
spanless_eq_struct!(StaticItem; ident ty safety mutability expr define_opaque eii_impl);
|
|
565
|
+
spanless_eq_struct!(Stmt; id kind span);
|
|
566
|
+
spanless_eq_struct!(StrLit; symbol suffix symbol_unescaped style span);
|
|
567
|
+
spanless_eq_struct!(StructExpr; qself path fields rest);
|
|
568
|
+
spanless_eq_struct!(TestBinderBody; foralls exists constraints predicates);
|
|
569
|
+
spanless_eq_struct!(TestBinderBoundTypeConstraint; span node_id params lhs rhs);
|
|
570
|
+
spanless_eq_struct!(TestBinderConstraints; generics body);
|
|
571
|
+
spanless_eq_struct!(TestBinderExists; span node_id params body);
|
|
572
|
+
spanless_eq_struct!(TestBinderForall; span node_id generics body assert_on_exit);
|
|
573
|
+
spanless_eq_struct!(Token; kind span);
|
|
574
|
+
spanless_eq_struct!(Trait; constness safety is_auto impl_restriction ident generics bounds items);
|
|
575
|
+
spanless_eq_struct!(TraitAlias; constness ident generics bounds);
|
|
576
|
+
spanless_eq_struct!(TraitBoundModifiers; constness asyncness polarity);
|
|
577
|
+
spanless_eq_struct!(TraitImplHeader; defaultness safety polarity trait_ref);
|
|
578
|
+
spanless_eq_struct!(TraitRef; path ref_id);
|
|
579
|
+
spanless_eq_struct!(Ty; id kind span);
|
|
580
|
+
spanless_eq_struct!(TyAlias; defaultness ident generics after_where_clause bounds ty);
|
|
581
|
+
spanless_eq_struct!(TyPat; id kind span);
|
|
582
|
+
spanless_eq_struct!(UnsafeBinderTy; generic_params inner_ty);
|
|
583
|
+
spanless_eq_struct!(UseTree; prefix kind);
|
|
584
|
+
spanless_eq_struct!(UseTreeAndId; inner id);
|
|
585
|
+
spanless_eq_struct!(Variant; attrs id span !vis ident data disr_expr is_placeholder);
|
|
586
|
+
spanless_eq_struct!(Visibility; kind span);
|
|
587
|
+
spanless_eq_struct!(WhereBoundPredicate; bound_generic_params bounded_ty bounds);
|
|
588
|
+
spanless_eq_struct!(WhereClause; has_where_token predicates span);
|
|
589
|
+
spanless_eq_struct!(WhereEqPredicate; lhs_ty rhs_ty);
|
|
590
|
+
spanless_eq_struct!(WherePredicate; attrs kind id span is_placeholder);
|
|
591
|
+
spanless_eq_struct!(WhereRegionPredicate; lifetime bounds);
|
|
592
|
+
spanless_eq_enum!(AngleBracketedArg; Arg(0) Constraint(0));
|
|
593
|
+
spanless_eq_enum!(AsmMacro; Asm GlobalAsm NakedAsm);
|
|
594
|
+
spanless_eq_enum!(AssocItemConstraintKind; Equality(term) Bound(bounds));
|
|
595
|
+
spanless_eq_enum!(AssocItemKind; Const(0) Fn(0) Type(0) MacCall(0) Delegation(0) DelegationMac(0));
|
|
596
|
+
spanless_eq_enum!(AttrArgs; Empty Delimited(0) Eq(eq_span expr));
|
|
597
|
+
spanless_eq_enum!(AttrStyle; Outer Inner);
|
|
598
|
+
spanless_eq_enum!(AttrTokenTree; Token(0 1) Delimited(0 1 2 3) AttrsTarget(0));
|
|
599
|
+
spanless_eq_enum!(BinOpKind; Add Sub Mul Div Rem And Or BitXor BitAnd BitOr Shl Shr Eq Lt Le Ne Ge Gt);
|
|
600
|
+
spanless_eq_enum!(BlockCheckMode; Default Unsafe(0));
|
|
601
|
+
spanless_eq_enum!(BorrowKind; Ref Raw Pin);
|
|
602
|
+
spanless_eq_enum!(BoundAsyncness; Normal Async(0));
|
|
603
|
+
spanless_eq_enum!(BoundConstness; Never Always(0) Maybe(0));
|
|
604
|
+
spanless_eq_enum!(BoundPolarity; Positive Negative(0) Maybe(0));
|
|
605
|
+
spanless_eq_enum!(ByRef; Yes(0 1) No);
|
|
606
|
+
spanless_eq_enum!(CaptureBy; Value(move_kw) Ref Use(use_kw));
|
|
607
|
+
spanless_eq_enum!(ClosureBinder; NotPresent For(span generic_params));
|
|
608
|
+
spanless_eq_enum!(Const; Yes(0) No);
|
|
609
|
+
spanless_eq_enum!(CoroutineKind; Async Gen AsyncGen);
|
|
610
|
+
spanless_eq_enum!(Defaultness; Implicit Default(0) Final(0));
|
|
611
|
+
spanless_eq_enum!(DelegationSource; Single List(0) Glob);
|
|
612
|
+
spanless_eq_enum!(DelegationSuffixes; List(0) Glob(0));
|
|
613
|
+
spanless_eq_enum!(Extern; None Implicit(0) Explicit(0 1));
|
|
614
|
+
spanless_eq_enum!(FloatTy; F16 F32 F64 F128);
|
|
615
|
+
spanless_eq_enum!(FnRetTy; Default(0) Ty(0));
|
|
616
|
+
spanless_eq_enum!(ForLoopKind; For ForAwait);
|
|
617
|
+
spanless_eq_enum!(ForeignItemKind; Static(0) Fn(0) TyAlias(0) MacCall(0));
|
|
618
|
+
spanless_eq_enum!(FormatAlignment; Left Right Center);
|
|
619
|
+
spanless_eq_enum!(FormatArgPositionKind; Implicit Number Named);
|
|
620
|
+
spanless_eq_enum!(FormatArgsPiece; Literal(0) Placeholder(0));
|
|
621
|
+
spanless_eq_enum!(FormatArgumentKind; Normal Named(0) Captured(0));
|
|
622
|
+
spanless_eq_enum!(FormatCount; Literal(0) Argument(0));
|
|
623
|
+
spanless_eq_enum!(FormatDebugHex; Lower Upper);
|
|
624
|
+
spanless_eq_enum!(FormatSign; Plus Minus);
|
|
625
|
+
spanless_eq_enum!(FormatTrait; Display Debug LowerExp UpperExp Octal Pointer Binary LowerHex UpperHex);
|
|
626
|
+
spanless_eq_enum!(GenericArg; Lifetime(0) Type(0) Const(0));
|
|
627
|
+
spanless_eq_enum!(GenericArgs; AngleBracketed(0) Parenthesized(0) ParenthesizedElided(0));
|
|
628
|
+
spanless_eq_enum!(GenericBound; Trait(0) Outlives(0) Use(0 1));
|
|
629
|
+
spanless_eq_enum!(GenericParamKind; Lifetime Type(default) Const(ty span default));
|
|
630
|
+
spanless_eq_enum!(ImplPolarity; Positive Negative(0));
|
|
631
|
+
spanless_eq_enum!(Inline; Yes No(had_parse_error));
|
|
632
|
+
spanless_eq_enum!(InlineAsmRegOrRegClass; Reg(0) RegClass(0));
|
|
633
|
+
spanless_eq_enum!(InlineAsmTemplatePiece; String(0) Placeholder(operand_idx modifier span));
|
|
634
|
+
spanless_eq_enum!(IntTy; Isize I8 I16 I32 I64 I128);
|
|
635
|
+
spanless_eq_enum!(IsAuto; Yes No);
|
|
636
|
+
spanless_eq_enum!(LitFloatType; Suffixed(0) Unsuffixed);
|
|
637
|
+
spanless_eq_enum!(LitIntType; Signed(0) Unsigned(0) Unsuffixed);
|
|
638
|
+
spanless_eq_enum!(LocalKind; Decl Init(0) InitElse(0 1));
|
|
639
|
+
spanless_eq_enum!(MacStmtStyle; Semicolon Braces NoBraces);
|
|
640
|
+
spanless_eq_enum!(MatchKind; Prefix Postfix);
|
|
641
|
+
spanless_eq_enum!(MetaItemInner; MetaItem(0) Lit(0));
|
|
642
|
+
spanless_eq_enum!(MetaItemKind; Word List(0) NameValue(0));
|
|
643
|
+
spanless_eq_enum!(ModKind; Loaded(0 1 2) Unloaded);
|
|
644
|
+
spanless_eq_enum!(Movability; Static Movable);
|
|
645
|
+
spanless_eq_enum!(Mutability; Mut Not);
|
|
646
|
+
spanless_eq_enum!(Parens; Yes No);
|
|
647
|
+
spanless_eq_enum!(PatFieldsRest; Rest(0) Recovered(0) None);
|
|
648
|
+
spanless_eq_enum!(Pinnedness; Not Pinned);
|
|
649
|
+
spanless_eq_enum!(PreciseCapturingArg; Lifetime(0) Arg(0 1));
|
|
650
|
+
spanless_eq_enum!(RangeEnd; Included(0) Excluded);
|
|
651
|
+
spanless_eq_enum!(RangeLimits; HalfOpen Closed);
|
|
652
|
+
spanless_eq_enum!(Recovered; No Yes(0));
|
|
653
|
+
spanless_eq_enum!(RestrictionKind; Unrestricted Restricted(path id shorthand));
|
|
654
|
+
spanless_eq_enum!(Safety; Unsafe(0) Safe(0) Default);
|
|
655
|
+
spanless_eq_enum!(StmtKind; Let(0) Item(0) Expr(0) Semi(0) Empty MacCall(0));
|
|
656
|
+
spanless_eq_enum!(StrStyle; Cooked Raw(0));
|
|
657
|
+
spanless_eq_enum!(StructRest; Base(0) Rest(0) None NoneWithError(0));
|
|
658
|
+
spanless_eq_enum!(SyntheticAttr; CfgTrace(0) CfgAttrTrace(0));
|
|
659
|
+
spanless_eq_enum!(Term; Ty(0) Const(0));
|
|
660
|
+
spanless_eq_enum!(TokenTree; Token(0 1) Delimited(0 1 2 3));
|
|
661
|
+
spanless_eq_enum!(TraitObjectSyntax; Dyn None);
|
|
662
|
+
spanless_eq_enum!(TyPatKind; Range(0 1 2) NotNull Or(0) Err(0));
|
|
663
|
+
spanless_eq_enum!(UintTy; Usize U8 U16 U32 U64 U128);
|
|
664
|
+
spanless_eq_enum!(UnOp; Deref Not Neg);
|
|
665
|
+
spanless_eq_enum!(UnsafeBinderCastKind; Wrap Unwrap);
|
|
666
|
+
spanless_eq_enum!(UnsafeSource; CompilerGenerated UserProvided);
|
|
667
|
+
spanless_eq_enum!(UseTreeKind; Simple(0) Nested(items span) Glob(0));
|
|
668
|
+
spanless_eq_enum!(VariantData; Struct(fields recovered) Tuple(0 1) Unit(0));
|
|
669
|
+
spanless_eq_enum!(VisibilityKind; Public Restricted(path id shorthand) Inherited);
|
|
670
|
+
spanless_eq_enum!(WherePredicateKind; BoundPredicate(0) RegionPredicate(0));
|
|
671
|
+
spanless_eq_enum!(YieldKind; Prefix(0) Postfix(0));
|
|
672
|
+
spanless_eq_enum!(AssignOpKind; AddAssign SubAssign MulAssign DivAssign
|
|
673
|
+
RemAssign BitXorAssign BitAndAssign BitOrAssign ShlAssign ShrAssign);
|
|
674
|
+
spanless_eq_enum!(ExprKind; Array(0) ConstBlock(0) Call(0 1) MethodCall(0)
|
|
675
|
+
Tup(0) Binary(0 1 2) Unary(0 1) Move(0 1) Lit(0) Cast(0 1) Type(0 1)
|
|
676
|
+
Let(0 1 2 3) If(0 1 2) While(0 1 2) ForLoop(0) Loop(0 1 2) Match(0 1 2)
|
|
677
|
+
Closure(0) Block(0 1) Gen(0 1 2 3) Await(0 1) Use(0 1) TryBlock(0 1)
|
|
678
|
+
Assign(0 1 2) AssignOp(0 1 2) Field(0 1) Index(0 1 2) Underscore
|
|
679
|
+
Range(0 1 2) Path(0 1) AddrOf(0 1 2) Break(0 1) Continue(0) Ret(0)
|
|
680
|
+
InlineAsm(0) OffsetOf(0 1) MacCall(0) Struct(0) Repeat(0 1) Paren(0) Try(0)
|
|
681
|
+
Yield(0) Yeet(0) Become(0) IncludedBytes(0) FormatArgs(0)
|
|
682
|
+
UnsafeBinderCast(0 1 2) GcaMacro(0) Err(0) Dummy);
|
|
683
|
+
spanless_eq_enum!(InlineAsmOperand; In(reg expr) Out(reg late expr)
|
|
684
|
+
InOut(reg late expr) SplitInOut(reg late in_expr out_expr) Const(anon_const)
|
|
685
|
+
Sym(sym) Label(block));
|
|
686
|
+
spanless_eq_enum!(ItemKind; ExternCrate(0 1) Use(0) Static(0) Const(0)
|
|
687
|
+
ConstBlock(0) Fn(0) Mod(0 1 2) ForeignMod(0) GlobalAsm(0) TyAlias(0)
|
|
688
|
+
Enum(0 1 2) Struct(0 1 2) Union(0 1 2) Trait(0) TraitAlias(0) Impl(0)
|
|
689
|
+
MacCall(0) MacroDef(0 1) Delegation(0) DelegationMac(0)
|
|
690
|
+
TestBinderConstraints(0));
|
|
691
|
+
spanless_eq_enum!(LitKind; Str(0 1) ByteStr(0 1) CStr(0 1) Byte(0) Char(0)
|
|
692
|
+
Int(0 1) Float(0 1) Bool(0) Err(0));
|
|
693
|
+
spanless_eq_enum!(PatKind; Missing Wild Ident(0 1 2) Struct(0 1 2 3)
|
|
694
|
+
TupleStruct(0 1 2) Or(0) Path(0 1) Tuple(0) Deref(0) Ref(0 1 2) Expr(0)
|
|
695
|
+
Range(0 1 2) Slice(0) Rest Never Guard(0 1) Paren(0) MacCall(0) Err(0));
|
|
696
|
+
spanless_eq_enum!(TestBinderConstraint; And(items) Or(items) Ambiguity(span)
|
|
697
|
+
Lifetime(lhs rhs) PlaceholderOutlives(lhs rhs)
|
|
698
|
+
AliasOutlives(bound_type_constraint));
|
|
699
|
+
spanless_eq_enum!(TyKind; Slice(0) Array(0 1) Ptr(0 1) Ref(0 1 2)
|
|
700
|
+
PinnedRef(0 1 2) FnPtr(0) UnsafeBinder(0) Never Tup(0) Path(0 1)
|
|
701
|
+
TraitObject(0 1) ImplTrait(0 1) Paren(0) Infer ImplicitSelf MacCall(0)
|
|
702
|
+
CVarArgs Pat(0 1) FieldOf(0 1 2) View(0 1) GcaMacro(0) Dummy Err(0));
|
|
703
|
+
|
|
704
|
+
impl SpanlessEq for Ident {
|
|
705
|
+
fn eq(&self, other: &Self) -> bool {
|
|
706
|
+
self.as_str() == other.as_str()
|
|
707
|
+
}
|
|
708
|
+
}
|
|
709
|
+
|
|
710
|
+
impl SpanlessEq for RangeSyntax {
|
|
711
|
+
fn eq(&self, _other: &Self) -> bool {
|
|
712
|
+
match self {
|
|
713
|
+
RangeSyntax::DotDotDot | RangeSyntax::DotDotEq => true,
|
|
714
|
+
}
|
|
715
|
+
}
|
|
716
|
+
}
|
|
717
|
+
|
|
718
|
+
impl SpanlessEq for Param {
|
|
719
|
+
fn eq(&self, other: &Self) -> bool {
|
|
720
|
+
let Param {
|
|
721
|
+
attrs,
|
|
722
|
+
ty,
|
|
723
|
+
pat,
|
|
724
|
+
id,
|
|
725
|
+
span: _,
|
|
726
|
+
is_placeholder,
|
|
727
|
+
} = self;
|
|
728
|
+
let Param {
|
|
729
|
+
attrs: attrs2,
|
|
730
|
+
ty: ty2,
|
|
731
|
+
pat: pat2,
|
|
732
|
+
id: id2,
|
|
733
|
+
span: _,
|
|
734
|
+
is_placeholder: is_placeholder2,
|
|
735
|
+
} = other;
|
|
736
|
+
SpanlessEq::eq(id, id2)
|
|
737
|
+
&& SpanlessEq::eq(is_placeholder, is_placeholder2)
|
|
738
|
+
&& (matches!(ty.kind, TyKind::Err(_))
|
|
739
|
+
|| matches!(ty2.kind, TyKind::Err(_))
|
|
740
|
+
|| SpanlessEq::eq(attrs, attrs2)
|
|
741
|
+
&& SpanlessEq::eq(ty, ty2)
|
|
742
|
+
&& SpanlessEq::eq(pat, pat2))
|
|
743
|
+
}
|
|
744
|
+
}
|
|
745
|
+
|
|
746
|
+
impl SpanlessEq for TokenKind {
|
|
747
|
+
fn eq(&self, other: &Self) -> bool {
|
|
748
|
+
match (self, other) {
|
|
749
|
+
(TokenKind::Literal(this), TokenKind::Literal(other)) => SpanlessEq::eq(this, other),
|
|
750
|
+
(TokenKind::DotDotEq | TokenKind::DotDotDot, _) => match other {
|
|
751
|
+
TokenKind::DotDotEq | TokenKind::DotDotDot => true,
|
|
752
|
+
_ => false,
|
|
753
|
+
},
|
|
754
|
+
_ => self == other,
|
|
755
|
+
}
|
|
756
|
+
}
|
|
757
|
+
}
|
|
758
|
+
|
|
759
|
+
impl SpanlessEq for TokenStream {
|
|
760
|
+
fn eq(&self, other: &Self) -> bool {
|
|
761
|
+
let mut this_trees = self.iter();
|
|
762
|
+
let mut other_trees = other.iter();
|
|
763
|
+
loop {
|
|
764
|
+
let Some(this) = this_trees.next() else {
|
|
765
|
+
return other_trees.next().is_none();
|
|
766
|
+
};
|
|
767
|
+
let Some(other) = other_trees.next() else {
|
|
768
|
+
return false;
|
|
769
|
+
};
|
|
770
|
+
if SpanlessEq::eq(this, other) {
|
|
771
|
+
continue;
|
|
772
|
+
}
|
|
773
|
+
if let (TokenTree::Token(this, _), TokenTree::Token(other, _)) = (this, other) {
|
|
774
|
+
if match (&this.kind, &other.kind) {
|
|
775
|
+
(TokenKind::Literal(this), TokenKind::Literal(other)) => {
|
|
776
|
+
SpanlessEq::eq(this, other)
|
|
777
|
+
}
|
|
778
|
+
(TokenKind::DocComment(_kind, style, symbol), TokenKind::Pound) => {
|
|
779
|
+
doc_comment(*style, *symbol, &mut other_trees)
|
|
780
|
+
}
|
|
781
|
+
(TokenKind::Pound, TokenKind::DocComment(_kind, style, symbol)) => {
|
|
782
|
+
doc_comment(*style, *symbol, &mut this_trees)
|
|
783
|
+
}
|
|
784
|
+
_ => false,
|
|
785
|
+
} {
|
|
786
|
+
continue;
|
|
787
|
+
}
|
|
788
|
+
}
|
|
789
|
+
return false;
|
|
790
|
+
}
|
|
791
|
+
}
|
|
792
|
+
}
|
|
793
|
+
|
|
794
|
+
fn doc_comment<'a>(
|
|
795
|
+
style: AttrStyle,
|
|
796
|
+
unescaped: Symbol,
|
|
797
|
+
trees: &mut impl Iterator<Item = &'a TokenTree>,
|
|
798
|
+
) -> bool {
|
|
799
|
+
if match style {
|
|
800
|
+
AttrStyle::Outer => false,
|
|
801
|
+
AttrStyle::Inner => true,
|
|
802
|
+
} {
|
|
803
|
+
match trees.next() {
|
|
804
|
+
Some(TokenTree::Token(
|
|
805
|
+
Token {
|
|
806
|
+
kind: TokenKind::Bang,
|
|
807
|
+
span: _,
|
|
808
|
+
},
|
|
809
|
+
_spacing,
|
|
810
|
+
)) => {}
|
|
811
|
+
_ => return false,
|
|
812
|
+
}
|
|
813
|
+
}
|
|
814
|
+
let Some(TokenTree::Delimited(_span, _spacing, Delimiter::Bracket, stream)) = trees.next()
|
|
815
|
+
else {
|
|
816
|
+
return false;
|
|
817
|
+
};
|
|
818
|
+
let mut trees = stream.iter();
|
|
819
|
+
match trees.next() {
|
|
820
|
+
Some(TokenTree::Token(
|
|
821
|
+
Token {
|
|
822
|
+
kind: TokenKind::Ident(symbol, IdentKind::Normal),
|
|
823
|
+
span: _,
|
|
824
|
+
},
|
|
825
|
+
_spacing,
|
|
826
|
+
)) if *symbol == sym::doc => {}
|
|
827
|
+
_ => return false,
|
|
828
|
+
}
|
|
829
|
+
match trees.next() {
|
|
830
|
+
Some(TokenTree::Token(
|
|
831
|
+
Token {
|
|
832
|
+
kind: TokenKind::Eq,
|
|
833
|
+
span: _,
|
|
834
|
+
},
|
|
835
|
+
_spacing,
|
|
836
|
+
)) => {}
|
|
837
|
+
_ => return false,
|
|
838
|
+
}
|
|
839
|
+
match trees.next() {
|
|
840
|
+
Some(TokenTree::Token(token, _spacing)) => {
|
|
841
|
+
is_escaped_literal_token(token, unescaped) && trees.next().is_none()
|
|
842
|
+
}
|
|
843
|
+
_ => false,
|
|
844
|
+
}
|
|
845
|
+
}
|
|
846
|
+
|
|
847
|
+
fn is_escaped_literal_token(token: &Token, unescaped: Symbol) -> bool {
|
|
848
|
+
match token {
|
|
849
|
+
Token {
|
|
850
|
+
kind: TokenKind::Literal(lit),
|
|
851
|
+
span: _,
|
|
852
|
+
} => match MetaItemLit::from_token_lit(*lit, DUMMY_SP) {
|
|
853
|
+
Ok(lit) => is_escaped_literal_meta_item_lit(&lit, unescaped),
|
|
854
|
+
Err(_) => false,
|
|
855
|
+
},
|
|
856
|
+
_ => false,
|
|
857
|
+
}
|
|
858
|
+
}
|
|
859
|
+
|
|
860
|
+
fn is_escaped_literal_meta_item_lit(lit: &MetaItemLit, unescaped: Symbol) -> bool {
|
|
861
|
+
match lit {
|
|
862
|
+
MetaItemLit {
|
|
863
|
+
symbol: _,
|
|
864
|
+
suffix: None,
|
|
865
|
+
kind,
|
|
866
|
+
span: _,
|
|
867
|
+
} => is_escaped_lit_kind(kind, unescaped),
|
|
868
|
+
_ => false,
|
|
869
|
+
}
|
|
870
|
+
}
|
|
871
|
+
|
|
872
|
+
fn is_escaped_lit(lit: &Lit, unescaped: Symbol) -> bool {
|
|
873
|
+
match lit {
|
|
874
|
+
Lit {
|
|
875
|
+
kind: token::LitKind::Str,
|
|
876
|
+
symbol: _,
|
|
877
|
+
suffix: None,
|
|
878
|
+
} => match LitKind::from_token_lit(*lit) {
|
|
879
|
+
Ok(lit_kind) => is_escaped_lit_kind(&lit_kind, unescaped),
|
|
880
|
+
_ => false,
|
|
881
|
+
},
|
|
882
|
+
_ => false,
|
|
883
|
+
}
|
|
884
|
+
}
|
|
885
|
+
|
|
886
|
+
fn is_escaped_lit_kind(kind: &LitKind, unescaped: Symbol) -> bool {
|
|
887
|
+
match kind {
|
|
888
|
+
LitKind::Str(symbol, StrStyle::Cooked) => {
|
|
889
|
+
symbol.as_str().replace('\r', "") == unescaped.as_str().replace('\r', "")
|
|
890
|
+
}
|
|
891
|
+
_ => false,
|
|
892
|
+
}
|
|
893
|
+
}
|
|
894
|
+
|
|
895
|
+
impl SpanlessEq for LazyAttrTokenStream {
|
|
896
|
+
fn eq(&self, other: &Self) -> bool {
|
|
897
|
+
let this = self.to_attr_token_stream();
|
|
898
|
+
let other = other.to_attr_token_stream();
|
|
899
|
+
SpanlessEq::eq(&this, &other)
|
|
900
|
+
}
|
|
901
|
+
}
|
|
902
|
+
|
|
903
|
+
impl SpanlessEq for AttrKind {
|
|
904
|
+
fn eq(&self, other: &Self) -> bool {
|
|
905
|
+
match (self, other) {
|
|
906
|
+
(AttrKind::Normal(normal), AttrKind::Normal(normal2)) => {
|
|
907
|
+
SpanlessEq::eq(normal, normal2)
|
|
908
|
+
}
|
|
909
|
+
(AttrKind::Synthetic(synthetic), AttrKind::Synthetic(synthetic2)) => {
|
|
910
|
+
SpanlessEq::eq(synthetic, synthetic2)
|
|
911
|
+
}
|
|
912
|
+
(AttrKind::DocComment(kind, symbol), AttrKind::DocComment(kind2, symbol2)) => {
|
|
913
|
+
SpanlessEq::eq(kind, kind2) && SpanlessEq::eq(symbol, symbol2)
|
|
914
|
+
}
|
|
915
|
+
(AttrKind::DocComment(kind, unescaped), AttrKind::Normal(normal2)) => {
|
|
916
|
+
match kind {
|
|
917
|
+
CommentKind::Line | CommentKind::Block => {}
|
|
918
|
+
}
|
|
919
|
+
let path = Path::from_ident(Ident::with_dummy_span(sym::doc));
|
|
920
|
+
SpanlessEq::eq(&path, &normal2.item.path)
|
|
921
|
+
&& match &normal2.item.args {
|
|
922
|
+
AttrArgs::Empty | AttrArgs::Delimited(_) => false,
|
|
923
|
+
AttrArgs::Eq { eq_span: _, expr } => match &expr.kind {
|
|
924
|
+
ExprKind::Lit(lit) => is_escaped_lit(lit, *unescaped),
|
|
925
|
+
_ => false,
|
|
926
|
+
},
|
|
927
|
+
}
|
|
928
|
+
}
|
|
929
|
+
(AttrKind::Normal(_), AttrKind::DocComment(..)) => SpanlessEq::eq(other, self),
|
|
930
|
+
(AttrKind::Synthetic(_), _) | (_, AttrKind::Synthetic(_)) => false,
|
|
931
|
+
}
|
|
932
|
+
}
|
|
933
|
+
}
|
|
934
|
+
|
|
935
|
+
impl SpanlessEq for FormatArguments {
|
|
936
|
+
fn eq(&self, other: &Self) -> bool {
|
|
937
|
+
SpanlessEq::eq(self.all_args(), other.all_args())
|
|
938
|
+
}
|
|
939
|
+
}
|