From 1c7e60f32b15b0a8ce4aaeda68f8fa7e8fbf3939 Mon Sep 17 00:00:00 2001 From: openshift-merge-bot <148852131+openshift-merge-bot@users.noreply.github.com> Date: Sun, 20 Oct 2024 00:05:31 +0000 Subject: [PATCH] Update cargo dependencies Signed-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- .cargo-vendor/anyhow/.cargo-checksum.json | 2 +- .cargo-vendor/anyhow/Cargo.toml | 3 +- .cargo-vendor/anyhow/src/backtrace.rs | 4 +- .cargo-vendor/anyhow/src/lib.rs | 3 +- .cargo-vendor/anyhow/src/macros.rs | 11 +- .cargo-vendor/capnp/.cargo-checksum.json | 2 +- .cargo-vendor/capnp/CHANGELOG.md | 3 + .cargo-vendor/capnp/Cargo.toml | 2 +- .cargo-vendor/capnp/src/introspect.rs | 3 +- .cargo-vendor/capnp/src/message.rs | 1 + .cargo-vendor/capnp/src/private/layout.rs | 28 +- .cargo-vendor/capnp/src/serialize.rs | 13 +- .cargo-vendor/capnp/src/serialize_packed.rs | 2 + .cargo-vendor/capnp/src/traits.rs | 1 + .cargo-vendor/libc/.cargo-checksum.json | 2 +- .cargo-vendor/libc/CHANGELOG.md | 52 ++ .cargo-vendor/libc/Cargo.toml | 4 +- .cargo-vendor/libc/README.md | 4 + .cargo-vendor/libc/build.rs | 7 +- .../libc/src/unix/bsd/apple/b32/mod.rs | 35 ++ .../libc/src/unix/bsd/apple/b64/mod.rs | 35 ++ .cargo-vendor/libc/src/unix/bsd/apple/mod.rs | 95 +-- .../src/unix/bsd/freebsdlike/dragonfly/mod.rs | 13 + .../src/unix/bsd/freebsdlike/freebsd/arm.rs | 30 - .../{freebsd12/b64.rs => freebsd11/b32.rs} | 13 +- .../bsd/freebsdlike/freebsd/freebsd11/mod.rs | 9 +- .../bsd/freebsdlike/freebsd/freebsd12/mod.rs | 45 +- .../bsd/freebsdlike/freebsd/freebsd13/b64.rs | 34 -- .../bsd/freebsdlike/freebsd/freebsd13/mod.rs | 45 +- .../bsd/freebsdlike/freebsd/freebsd14/b64.rs | 34 -- .../bsd/freebsdlike/freebsd/freebsd14/mod.rs | 45 +- .../bsd/freebsdlike/freebsd/freebsd15/b64.rs | 34 -- .../bsd/freebsdlike/freebsd/freebsd15/mod.rs | 45 +- .../src/unix/bsd/freebsdlike/freebsd/mod.rs | 10 + .../unix/bsd/freebsdlike/freebsd/powerpc.rs | 26 - .../unix/bsd/freebsdlike/freebsd/powerpc64.rs | 26 - .../src/unix/bsd/freebsdlike/freebsd/x86.rs | 25 - .../libc/src/unix/bsd/freebsdlike/mod.rs | 19 + .cargo-vendor/libc/src/unix/bsd/mod.rs | 43 ++ .../src/unix/bsd/netbsdlike/netbsd/mod.rs | 34 ++ .../src/unix/bsd/netbsdlike/openbsd/mod.rs | 56 ++ .cargo-vendor/libc/src/unix/haiku/mod.rs | 4 + .../libc/src/unix/linux_like/android/mod.rs | 2 + .../src/unix/linux_like/emscripten/mod.rs | 35 ++ .../libc/src/unix/linux_like/linux/align.rs | 18 + .../linux_like/linux/gnu/b64/x86_64/mod.rs | 2 - .../libc/src/unix/linux_like/linux/gnu/mod.rs | 68 ++- .../libc/src/unix/linux_like/linux/mod.rs | 262 +++++++++ .../src/unix/linux_like/linux/musl/mod.rs | 90 +++ .../src/unix/linux_like/linux/no_align.rs | 18 + .cargo-vendor/libc/src/unix/mod.rs | 33 +- .../libc/src/unix/newlib/espidf/mod.rs | 16 +- .cargo-vendor/libc/src/unix/newlib/generic.rs | 3 + .cargo-vendor/libc/src/unix/newlib/mod.rs | 174 +++++- .../libc/src/unix/newlib/rtems/mod.rs | 143 +++++ .cargo-vendor/libc/src/unix/nuttx/mod.rs | 555 ++++++++++++++++++ .cargo-vendor/libc/src/unix/redox/mod.rs | 2 +- .../libc/src/unix/solarish/illumos.rs | 12 + .cargo-vendor/libc/src/unix/solarish/mod.rs | 4 +- .cargo-vendor/libc/src/vxworks/mod.rs | 76 ++- .cargo-vendor/libc/src/vxworks/riscv32.rs | 4 + .cargo-vendor/libc/src/vxworks/riscv64.rs | 4 + .cargo-vendor/ppv-lite86/.cargo-checksum.json | 2 +- .cargo-vendor/ppv-lite86/Cargo.toml | 10 +- .cargo-vendor/ppv-lite86/src/generic.rs | 3 +- .cargo-vendor/ppv-lite86/src/soft.rs | 2 +- .cargo-vendor/ppv-lite86/src/x86_64/mod.rs | 2 +- .cargo-vendor/ppv-lite86/src/x86_64/sse2.rs | 6 +- .../proc-macro2/.cargo-checksum.json | 2 +- .cargo-vendor/proc-macro2/Cargo.toml | 3 +- .cargo-vendor/proc-macro2/build/probe.rs | 16 + .cargo-vendor/proc-macro2/src/lib.rs | 18 +- .cargo-vendor/proc-macro2/src/wrapper.rs | 15 + .cargo-vendor/serde_json/.cargo-checksum.json | 2 +- .cargo-vendor/serde_json/Cargo.toml | 3 +- .cargo-vendor/serde_json/src/de.rs | 104 ++-- .cargo-vendor/serde_json/src/lexical/math.rs | 4 +- .cargo-vendor/serde_json/src/lib.rs | 3 +- .cargo-vendor/serde_json/src/map.rs | 44 +- .cargo-vendor/serde_json/src/number.rs | 200 ++++--- .cargo-vendor/serde_json/src/read.rs | 4 +- .cargo-vendor/serde_json/src/ser.rs | 6 +- .cargo-vendor/serde_json/src/value/de.rs | 289 +++++---- .cargo-vendor/serde_json/src/value/from.rs | 12 +- .cargo-vendor/serde_json/src/value/index.rs | 2 +- .cargo-vendor/serde_json/src/value/mod.rs | 26 + .cargo-vendor/serde_json/src/value/ser.rs | 22 +- .cargo-vendor/serde_json/tests/map.rs | 2 +- .cargo-vendor/serde_json/tests/regression.rs | 2 + .cargo-vendor/serde_json/tests/test.rs | 176 +++--- .cargo-vendor/syn/.cargo-checksum.json | 2 +- .cargo-vendor/syn/Cargo.toml | 3 +- .cargo-vendor/syn/benches/file.rs | 1 + .cargo-vendor/syn/benches/rust.rs | 5 +- .cargo-vendor/syn/src/classify.rs | 4 + .cargo-vendor/syn/src/drops.rs | 8 +- .cargo-vendor/syn/src/expr.rs | 124 +++- .cargo-vendor/syn/src/gen/clone.rs | 29 + .cargo-vendor/syn/src/gen/debug.rs | 40 ++ .cargo-vendor/syn/src/gen/eq.rs | 31 + .cargo-vendor/syn/src/gen/fold.rs | 48 ++ .cargo-vendor/syn/src/gen/hash.rs | 58 +- .cargo-vendor/syn/src/gen/visit.rs | 42 ++ .cargo-vendor/syn/src/gen/visit_mut.rs | 42 ++ .cargo-vendor/syn/src/generics.rs | 62 +- .cargo-vendor/syn/src/item.rs | 22 +- .cargo-vendor/syn/src/lib.rs | 10 +- .cargo-vendor/syn/src/path.rs | 11 +- .cargo-vendor/syn/src/precedence.rs | 2 +- .cargo-vendor/syn/src/stmt.rs | 1 + .cargo-vendor/syn/src/token.rs | 2 + .cargo-vendor/syn/src/ty.rs | 74 ++- .cargo-vendor/syn/tests/common/eq.rs | 15 +- .cargo-vendor/syn/tests/debug/gen.rs | 39 ++ .cargo-vendor/syn/tests/debug/mod.rs | 2 +- .cargo-vendor/syn/tests/macros/mod.rs | 2 +- .cargo-vendor/syn/tests/test_asyncness.rs | 10 +- .cargo-vendor/syn/tests/test_attribute.rs | 46 +- .cargo-vendor/syn/tests/test_derive_input.rs | 73 +-- .cargo-vendor/syn/tests/test_expr.rs | 114 ++-- .cargo-vendor/syn/tests/test_generics.rs | 25 +- .cargo-vendor/syn/tests/test_grouping.rs | 6 +- .cargo-vendor/syn/tests/test_item.rs | 54 +- .cargo-vendor/syn/tests/test_iterators.rs | 6 +- .cargo-vendor/syn/tests/test_lit.rs | 1 + .cargo-vendor/syn/tests/test_meta.rs | 33 +- .cargo-vendor/syn/tests/test_parse_quote.rs | 34 +- .cargo-vendor/syn/tests/test_pat.rs | 22 +- .cargo-vendor/syn/tests/test_path.rs | 54 +- .cargo-vendor/syn/tests/test_precedence.rs | 24 +- .cargo-vendor/syn/tests/test_receiver.rs | 50 +- .cargo-vendor/syn/tests/test_round_trip.rs | 1 + .cargo-vendor/syn/tests/test_shebang.rs | 10 +- .cargo-vendor/syn/tests/test_stmt.rs | 50 +- .cargo-vendor/syn/tests/test_token_trees.rs | 6 +- .cargo-vendor/syn/tests/test_ty.rs | 66 +-- .../syn/tests/test_unparenthesize.rs | 6 +- .cargo-vendor/syn/tests/test_visibility.rs | 10 +- .../uuid-macro-internal/.cargo-checksum.json | 2 +- .cargo-vendor/uuid-macro-internal/Cargo.toml | 10 +- .cargo-vendor/uuid/.cargo-checksum.json | 2 +- .cargo-vendor/uuid/Cargo.toml | 22 +- .cargo-vendor/uuid/README.md | 6 +- .cargo-vendor/uuid/src/builder.rs | 4 +- .cargo-vendor/uuid/src/lib.rs | 12 +- .cargo-vendor/uuid/src/timestamp.rs | 4 +- Cargo.lock | 37 +- conmon-rs/client/Cargo.toml | 2 +- conmon-rs/common/Cargo.toml | 4 +- conmon-rs/server/Cargo.toml | 10 +- 150 files changed, 3657 insertions(+), 1241 deletions(-) rename .cargo-vendor/libc/src/unix/bsd/freebsdlike/freebsd/{freebsd12/b64.rs => freebsd11/b32.rs} (89%) delete mode 100644 .cargo-vendor/libc/src/unix/bsd/freebsdlike/freebsd/freebsd13/b64.rs delete mode 100644 .cargo-vendor/libc/src/unix/bsd/freebsdlike/freebsd/freebsd14/b64.rs delete mode 100644 .cargo-vendor/libc/src/unix/bsd/freebsdlike/freebsd/freebsd15/b64.rs create mode 100644 .cargo-vendor/libc/src/unix/newlib/rtems/mod.rs create mode 100644 .cargo-vendor/libc/src/unix/nuttx/mod.rs create mode 100644 .cargo-vendor/libc/src/vxworks/riscv32.rs create mode 100644 .cargo-vendor/libc/src/vxworks/riscv64.rs diff --git a/.cargo-vendor/anyhow/.cargo-checksum.json b/.cargo-vendor/anyhow/.cargo-checksum.json index f09e421f53..2462a1ac10 100644 --- a/.cargo-vendor/anyhow/.cargo-checksum.json +++ b/.cargo-vendor/anyhow/.cargo-checksum.json @@ -1 +1 @@ -{"files":{"Cargo.toml":"602edfd1fcc210659c9488a570d28ef98b06acab5e0ea55245955b846f54925f","LICENSE-APACHE":"62c7a1e35f56406896d7aa7ca52d0cc0d272ac022b5d2796e7d6905db8a3636a","LICENSE-MIT":"23f18e03dc49df91622fe2a76176497404e46ced8a715d9d2b67a7446571cca3","README.md":"136d2b44cc4060192516f18e43ec3eafb65693c1819a80a867e7a00c60a45ee6","build.rs":"1de78cc91e63321318aa336cb550e3acdcda9b39f0648436a884d783247cfcd2","build/probe.rs":"ee0a4518493c0b3cca121ed2e937b1779eb7e8313a5c4d5fc5aea28ff015366b","rust-toolchain.toml":"6bbb61302978c736b2da03e4fb40e3beab908f85d533ab46fd541e637b5f3e0f","src/backtrace.rs":"578b395a66b21d0e90c503546011138b057f6f27147c51667490da66d22edd54","src/chain.rs":"85af447405f075633fab186b7f1c94d7f33a36474f239c50a961b2d6197d5426","src/context.rs":"1be432c32752778041e8acf0e7d98d4f6291ce53fd7df5bbb0167824bbea57f7","src/ensure.rs":"9763f418b5397764549866c111ec6db3a7bdc4c30ad95c3bbfc56c5434ea8c09","src/error.rs":"274c175ec92f4aa8bf479d39cf3023d1ead9865a242a0a63ad3998aea57219a6","src/fmt.rs":"adf4be906b29900153bfb4b767a6049d58697dc3bcce7dfbb85ca773f5de5b33","src/kind.rs":"d8cc91e73653049ca0b5593f36aee8632fcc85847b36005b90ecd9a6f0de13cb","src/lib.rs":"9147b9e8b304a5ddac5d3f78b9912aec109553a3fda74f9495a78ad543a91d31","src/macros.rs":"17fb103e68a5befa768857314c3ca4d81d1dacfea0738bbb9c7597a485243499","src/ptr.rs":"4cb31d2f815b178daf951bfb94a1930383e056c0ca68d494603f45d8eea35d50","src/wrapper.rs":"d4e45caee3c2d861d4609a8141310d5c901af59a57d5f0a0de30251347dbd23c","tests/common/mod.rs":"f9088c2d7afafa64ff730b629272045b776bfafc2f5957508242da630635f2e1","tests/compiletest.rs":"4e381aa8ca3eabb7ac14d1e0c3700b3223e47640547a6988cfa13ad68255f60f","tests/drop/mod.rs":"08c3e553c1cc0d2dbd936fc45f4b5b1105057186affd6865e8d261e05f0f0646","tests/test_autotrait.rs":"ba9bc18416115cb48fd08675a3e7fc89584de7926dad6b2be6645dc13d5931df","tests/test_backtrace.rs":"60afdd7ee5850dc22625ff486fe41c47fd322db874a93c4871ddfed2bf603930","tests/test_boxed.rs":"6b26db0e2eb72afe9af7352ea820837aab90f8d486294616dd5dc34c1b94038c","tests/test_chain.rs":"3a8a8d7569913bd98c0e27c69d0bda35101e7fde7c056ed57cdd8ed018e4cbcb","tests/test_context.rs":"8409c53b328562c11e822bd6c3cd17e0d4d50b9bbb8fc3617333fd77303a6a33","tests/test_convert.rs":"7e7a8b4772a427a911014ac4d1083f9519000e786177f898808980dd9bdfde61","tests/test_downcast.rs":"797e69a72d125758c4c4897e5dc776d549d52cc9a6a633e0a33193f588a62b88","tests/test_ensure.rs":"4014ead6596793f5eecd55cbaafa49286b75cee7b7092a8b9b8286fcd813a6da","tests/test_ffi.rs":"d0cb4c1d6d9154090982dee72ae3ebe05a5981f976058c3250f1c9da5a45edef","tests/test_fmt.rs":"0e49b48f08e4faaf03e2f202e1efc5250018876c4e1b01b8379d7a38ae8df870","tests/test_macros.rs":"68673942662a43bceee62aaed69c25d7ddbc55e25d62d528e13033c3e2e756cd","tests/test_repr.rs":"034dee888abd08741e11ac2e95ef4fcb2ab3943d0a76e8e976db404658e1a252","tests/test_source.rs":"b80723cf635a4f8c4df21891b34bfab9ed2b2aa407e7a2f826d24e334cd5f88e","tests/ui/chained-comparison.rs":"6504b03d95b5acc232a7f4defc9f343b2be6733bf475fa0992e8e6545b912bd4","tests/ui/chained-comparison.stderr":"7f1d0a8c251b0ede2d30b3087ec157fc660945c97a642c4a5acf5a14ec58de34","tests/ui/empty-ensure.rs":"ab5bf37c846a0d689f26ce9257a27228411ed64154f9c950f1602d88a355d94b","tests/ui/empty-ensure.stderr":"315782f5f4246290fe190e3767b22c3dcaffaabc19c5ace0373537d53e765278","tests/ui/ensure-nonbool.rs":"7e57cb93fbcd82959b36586ed6bd2ad978b051fe5facd5274651fde6b1600905","tests/ui/ensure-nonbool.stderr":"0b4d1611e3bb65081bf38c1e49b1f12e5096738f276608661016e68f1fe13f7c","tests/ui/must-use.rs":"fb59860b43f673bf4a430a6036ba463e95028844d8dd4243cfe5ebc7f2be582f","tests/ui/must-use.stderr":"c2848c5f254b4c061eea6714d9baf709924aba06619eaf2a8b3aee1266b75f9e","tests/ui/no-impl.rs":"fab6cbf2f6ea510b86f567dfb3b7c31250a9fd71ae5d110dbb9188be569ec593","tests/ui/no-impl.stderr":"0d8ed712d25de898eae18cfdffc575a47f4d5596346058cf6cd50d016c4f8ce8","tests/ui/temporary-value.rs":"4dcc96271b2403e6372cf4cfc813445e5ce4365fc6e156b6bc38274098499a70","tests/ui/temporary-value.stderr":"171f6c1c962503855480696e5d39e68946ec2a027b61a6f36ca1ad1b40265c5d","tests/ui/wrong-interpolation.rs":"9c44d4674c2dccd27b9dedd03341346ec02d993b41793ee89b5755202e7e367e","tests/ui/wrong-interpolation.stderr":"301e60e2eb9401782c7dc0b3580613a4cb2aafd4cc8065734a630a62e1161aa5"},"package":"86fdf8605db99b54d3cd748a44c6d04df638eb5dafb219b135d0149bd0db01f6"} \ No newline at end of file +{"files":{"Cargo.toml":"9da67208798e50ce1f391b56f0983e96fa8a84e9d9231d9e50775446cbf80d84","LICENSE-APACHE":"62c7a1e35f56406896d7aa7ca52d0cc0d272ac022b5d2796e7d6905db8a3636a","LICENSE-MIT":"23f18e03dc49df91622fe2a76176497404e46ced8a715d9d2b67a7446571cca3","README.md":"136d2b44cc4060192516f18e43ec3eafb65693c1819a80a867e7a00c60a45ee6","build.rs":"1de78cc91e63321318aa336cb550e3acdcda9b39f0648436a884d783247cfcd2","build/probe.rs":"ee0a4518493c0b3cca121ed2e937b1779eb7e8313a5c4d5fc5aea28ff015366b","rust-toolchain.toml":"6bbb61302978c736b2da03e4fb40e3beab908f85d533ab46fd541e637b5f3e0f","src/backtrace.rs":"bbaa0e0e228475c9c9532786e305cf04f53729f386c48adb1d93bb8ce07f37ad","src/chain.rs":"85af447405f075633fab186b7f1c94d7f33a36474f239c50a961b2d6197d5426","src/context.rs":"1be432c32752778041e8acf0e7d98d4f6291ce53fd7df5bbb0167824bbea57f7","src/ensure.rs":"9763f418b5397764549866c111ec6db3a7bdc4c30ad95c3bbfc56c5434ea8c09","src/error.rs":"274c175ec92f4aa8bf479d39cf3023d1ead9865a242a0a63ad3998aea57219a6","src/fmt.rs":"adf4be906b29900153bfb4b767a6049d58697dc3bcce7dfbb85ca773f5de5b33","src/kind.rs":"d8cc91e73653049ca0b5593f36aee8632fcc85847b36005b90ecd9a6f0de13cb","src/lib.rs":"1a1aeac072921cc13bb71ad06a9b8bd4cf4db5d90048d51446c3b81859722f24","src/macros.rs":"875797636fde708dcb9c82e0cb3107cf38334086274aaada267fb5bfd60547a9","src/ptr.rs":"4cb31d2f815b178daf951bfb94a1930383e056c0ca68d494603f45d8eea35d50","src/wrapper.rs":"d4e45caee3c2d861d4609a8141310d5c901af59a57d5f0a0de30251347dbd23c","tests/common/mod.rs":"f9088c2d7afafa64ff730b629272045b776bfafc2f5957508242da630635f2e1","tests/compiletest.rs":"4e381aa8ca3eabb7ac14d1e0c3700b3223e47640547a6988cfa13ad68255f60f","tests/drop/mod.rs":"08c3e553c1cc0d2dbd936fc45f4b5b1105057186affd6865e8d261e05f0f0646","tests/test_autotrait.rs":"ba9bc18416115cb48fd08675a3e7fc89584de7926dad6b2be6645dc13d5931df","tests/test_backtrace.rs":"60afdd7ee5850dc22625ff486fe41c47fd322db874a93c4871ddfed2bf603930","tests/test_boxed.rs":"6b26db0e2eb72afe9af7352ea820837aab90f8d486294616dd5dc34c1b94038c","tests/test_chain.rs":"3a8a8d7569913bd98c0e27c69d0bda35101e7fde7c056ed57cdd8ed018e4cbcb","tests/test_context.rs":"8409c53b328562c11e822bd6c3cd17e0d4d50b9bbb8fc3617333fd77303a6a33","tests/test_convert.rs":"7e7a8b4772a427a911014ac4d1083f9519000e786177f898808980dd9bdfde61","tests/test_downcast.rs":"797e69a72d125758c4c4897e5dc776d549d52cc9a6a633e0a33193f588a62b88","tests/test_ensure.rs":"4014ead6596793f5eecd55cbaafa49286b75cee7b7092a8b9b8286fcd813a6da","tests/test_ffi.rs":"d0cb4c1d6d9154090982dee72ae3ebe05a5981f976058c3250f1c9da5a45edef","tests/test_fmt.rs":"0e49b48f08e4faaf03e2f202e1efc5250018876c4e1b01b8379d7a38ae8df870","tests/test_macros.rs":"68673942662a43bceee62aaed69c25d7ddbc55e25d62d528e13033c3e2e756cd","tests/test_repr.rs":"034dee888abd08741e11ac2e95ef4fcb2ab3943d0a76e8e976db404658e1a252","tests/test_source.rs":"b80723cf635a4f8c4df21891b34bfab9ed2b2aa407e7a2f826d24e334cd5f88e","tests/ui/chained-comparison.rs":"6504b03d95b5acc232a7f4defc9f343b2be6733bf475fa0992e8e6545b912bd4","tests/ui/chained-comparison.stderr":"7f1d0a8c251b0ede2d30b3087ec157fc660945c97a642c4a5acf5a14ec58de34","tests/ui/empty-ensure.rs":"ab5bf37c846a0d689f26ce9257a27228411ed64154f9c950f1602d88a355d94b","tests/ui/empty-ensure.stderr":"315782f5f4246290fe190e3767b22c3dcaffaabc19c5ace0373537d53e765278","tests/ui/ensure-nonbool.rs":"7e57cb93fbcd82959b36586ed6bd2ad978b051fe5facd5274651fde6b1600905","tests/ui/ensure-nonbool.stderr":"0b4d1611e3bb65081bf38c1e49b1f12e5096738f276608661016e68f1fe13f7c","tests/ui/must-use.rs":"fb59860b43f673bf4a430a6036ba463e95028844d8dd4243cfe5ebc7f2be582f","tests/ui/must-use.stderr":"c2848c5f254b4c061eea6714d9baf709924aba06619eaf2a8b3aee1266b75f9e","tests/ui/no-impl.rs":"fab6cbf2f6ea510b86f567dfb3b7c31250a9fd71ae5d110dbb9188be569ec593","tests/ui/no-impl.stderr":"0d8ed712d25de898eae18cfdffc575a47f4d5596346058cf6cd50d016c4f8ce8","tests/ui/temporary-value.rs":"4dcc96271b2403e6372cf4cfc813445e5ce4365fc6e156b6bc38274098499a70","tests/ui/temporary-value.stderr":"171f6c1c962503855480696e5d39e68946ec2a027b61a6f36ca1ad1b40265c5d","tests/ui/wrong-interpolation.rs":"9c44d4674c2dccd27b9dedd03341346ec02d993b41793ee89b5755202e7e367e","tests/ui/wrong-interpolation.stderr":"301e60e2eb9401782c7dc0b3580613a4cb2aafd4cc8065734a630a62e1161aa5"},"package":"37bf3594c4c988a53154954629820791dde498571819ae4ca50ca811e060cc95"} \ No newline at end of file diff --git a/.cargo-vendor/anyhow/Cargo.toml b/.cargo-vendor/anyhow/Cargo.toml index 83b7f34609..d8bb814e63 100644 --- a/.cargo-vendor/anyhow/Cargo.toml +++ b/.cargo-vendor/anyhow/Cargo.toml @@ -13,9 +13,10 @@ edition = "2018" rust-version = "1.39" name = "anyhow" -version = "1.0.89" +version = "1.0.90" authors = ["David Tolnay "] build = "build.rs" +autolib = false autobins = false autoexamples = false autotests = false diff --git a/.cargo-vendor/anyhow/src/backtrace.rs b/.cargo-vendor/anyhow/src/backtrace.rs index c9ca1a8f56..303f911758 100644 --- a/.cargo-vendor/anyhow/src/backtrace.rs +++ b/.cargo-vendor/anyhow/src/backtrace.rs @@ -406,6 +406,6 @@ mod capture { } fn _assert_send_sync() { - fn _assert() {} - _assert::(); + fn assert() {} + assert::(); } diff --git a/.cargo-vendor/anyhow/src/lib.rs b/.cargo-vendor/anyhow/src/lib.rs index e0e676e352..3ddcfc84e2 100644 --- a/.cargo-vendor/anyhow/src/lib.rs +++ b/.cargo-vendor/anyhow/src/lib.rs @@ -206,7 +206,7 @@ //! function that returns Anyhow's error type, as the trait that `?`-based error //! conversions are defined by is only available in std in those old versions. -#![doc(html_root_url = "https://docs.rs/anyhow/1.0.89")] +#![doc(html_root_url = "https://docs.rs/anyhow/1.0.90")] #![cfg_attr(error_generic_member_access, feature(error_generic_member_access))] #![no_std] #![deny(dead_code, unused_imports, unused_mut)] @@ -227,6 +227,7 @@ clippy::module_name_repetitions, clippy::must_use_candidate, clippy::needless_doctest_main, + clippy::needless_lifetimes, clippy::new_ret_no_self, clippy::redundant_else, clippy::return_self_not_must_use, diff --git a/.cargo-vendor/anyhow/src/macros.rs b/.cargo-vendor/anyhow/src/macros.rs index a0671ac72c..469b3d89ac 100644 --- a/.cargo-vendor/anyhow/src/macros.rs +++ b/.cargo-vendor/anyhow/src/macros.rs @@ -1,9 +1,10 @@ /// Return early with an error. /// -/// This macro is equivalent to `return Err(`[`anyhow!($args...)`][anyhow!]`)`. +/// This macro is equivalent to +/// return Err([anyhow!($args\...)][anyhow!]). /// /// The surrounding function's or closure's return value is required to be -/// `Result<_,`[`anyhow::Error`][crate::Error]`>`. +/// Result<_, [anyhow::Error][crate::Error]>. /// /// [anyhow!]: crate::anyhow /// @@ -69,11 +70,11 @@ macro_rules! __ensure { ($ensure:item) => { /// Return early with an error if a condition is not satisfied. /// - /// This macro is equivalent to `if !$cond { return - /// Err(`[`anyhow!($args...)`][anyhow!]`); }`. + /// This macro is equivalent to + /// if !$cond { return Err([anyhow!($args\...)][anyhow!]); }. /// /// The surrounding function's or closure's return value is required to be - /// `Result<_,`[`anyhow::Error`][crate::Error]`>`. + /// Result<_, [anyhow::Error][crate::Error]>. /// /// Analogously to `assert!`, `ensure!` takes a condition and exits the function /// if the condition fails. Unlike `assert!`, `ensure!` returns an `Error` diff --git a/.cargo-vendor/capnp/.cargo-checksum.json b/.cargo-vendor/capnp/.cargo-checksum.json index 9aca15a988..3ce3826c5c 100644 --- a/.cargo-vendor/capnp/.cargo-checksum.json +++ b/.cargo-vendor/capnp/.cargo-checksum.json @@ -1 +1 @@ -{"files":{"CHANGELOG.md":"11fd4fbbef8cee35ef79440bc2abafa3e97c315f6a5fa77f4efa2bb8d80bb9fc","Cargo.toml":"9ca72a7956df0d91fd96211e1feb8106371de0d86be021803437c20a121361e2","LICENSE":"4c2dafff9370c57598f847969a8240b901226315bac3aff066955ce922361bbf","README.md":"e7209f3cbedcc10c248c58548ebe84e5c59233f8c2c89a77704b7c215b5f0e9d","c++.capnp":"52ead0eaa560b21e692d6f3d9966a52dfc99e19f53ae2d7c7bd2944a240d86de","schema.capnp":"3cd91a6ee4f22684cf378d295b4d7616d321446bf2fd6bd87c84aac1b8ebc677","src/any_pointer.rs":"be7b5dafb7ad1c5a9a343af7b553bbaf05b936da723370981ba14842b5e36bdc","src/any_pointer_list.rs":"70daf3cfea11c313bbb46ad449adfd26bda5999f7b90688c040476ad25570f28","src/capability.rs":"35215668a0d406c056a18f76a82b1da5bb1192a49d86a3ce2f3c8a0c876497c4","src/capability_list.rs":"338646a7e89b094dbc7aa9cae2f52a3493e8a1957c2c195a0d383f82737096d8","src/constant.rs":"4c875492ffce55600dc0c629c8068be782cfefd0792945525f9f0f92a0583bd0","src/data.rs":"134359b11a600dec0905660e498f9f835af06d12dda373164119a22ff1a35119","src/data_list.rs":"df287906a3b8ae5cd44a898d49bd539f6db006f39b83a21d4d622efe340dff3a","src/dynamic_list.rs":"fcfb819d0cd5abdd5839b148b9b0c4de56ddfdb38d56080947b7bbf983e6a7fe","src/dynamic_struct.rs":"b6eca759df61b47c7bf6b9ceed31b69debeb4b0df6ea3f59f1e10ee7893bdb5d","src/dynamic_value.rs":"570312d906d69ed85f1ab0904e68fd130339c80f5b5e6b2091d362bbc5eca3a2","src/enum_list.rs":"993daf0340323a9ebec5029f18f319062e2477b29b16f5e71ba638a64d57f882","src/introspect.rs":"06ace54cea63ac9563a5746c667b1033fb93cf2f39f389520f8d0bf8d4449107","src/io.rs":"34b39ff014308e8abb5651eee29968ec8414ac559df39f71cbb07444ccdb4a5d","src/lib.rs":"dd60b3f8ee4f9453c0cda75a069d40c1e4519e297ba1b2a794929d5ed41858af","src/list_list.rs":"03d5efee1f34bbe35b79ca71d2f50518a19b71d3fccaf5a5a591642f1da2899f","src/message.rs":"074c97136b69a404d86423827e594bd9c88e1cc56934fbe3b6ceab7044c70a4a","src/primitive_list.rs":"8c8a5e77048cbd909f00e981f060929a58004a717e05ca5a15a6b64cb0fe233e","src/private/arena.rs":"9bfc2e4275a459e15cc152292ab613e2bd3288cb0cfa29e91ed1ad8101d31b14","src/private/capability.rs":"1c97a5f546d0edf2ba5d69ed67a2686ce3665d24e0bc6e1dccc27e583c76e0e8","src/private/layout.rs":"fe9831bc5d24b8243899a7d17e08a994c2204bd84e981df2f3ac1ec5673433bb","src/private/layout_test.rs":"93129424451695e50b1f1498ded8434094dbc90f4923da979c9229cd15f5b2af","src/private/mask.rs":"bb942ff4ad0b67406ec6283eb174b2e13b8435462bf8a027aaf3412276a794d0","src/private/mod.rs":"7b3acd2c80e204f576509a3a7bdad60df234fa9d9412d869762494132b965fd3","src/private/primitive.rs":"bc7c1d93d4dbff3cdc06e3a890565238aa61668ed559c348d8f905e405bcea08","src/private/read_limiter.rs":"3413e2549f46d756f22a464c0596aacf252da1d049f7eca616393e5bf0c1e04e","src/private/units.rs":"2724987138950538050f8e14d000f5c3d8372ef975e1e6c2d33f745d126ecdcb","src/private/zero.rs":"6d6fa39e7aacef6b97e961e650870a1df17e6bb166147b8c9bdf3a129e104bad","src/raw.rs":"3c70a0a111c51939a9dfaff0e0bf454d3d482e923457e9ff222a95823e1cd1e2","src/schema.rs":"bef95ee57f6b0a0fe6d1f6ce2129bad7bf3c6a93070b97271cd80e248164b2a3","src/schema_capnp.rs":"14f6f80b82c8d91c764b33d3b684d3c3acc089a02a888ac8510765d29a7239b0","src/serialize.rs":"df7561f0859678661690f1ef3ee6691d05bb954dc800ed5d31220b3c13c3f3a7","src/serialize/no_alloc_buffer_segments.rs":"be2f1299b45ea10a96258f30ddb8f53cd449cf093c1c7ebe01a86d521f9e8691","src/serialize_packed.rs":"b21d8935124c49d9d2b22208df65acb9f34ebd3d8274eaa5b12e1bada3d46f4e","src/stringify.rs":"607889bfb9853da70b11c4860dcf2e13b3013c1241ed2ab8ffda36e4a5a473da","src/struct_list.rs":"2596ea931ef560538df31202a4ffdb43581dad4f5b32a5b9944d57d783c9b2e8","src/text.rs":"6ce264d57d38f53901b088ef21bd7f83187f4fc2ae944b0c30f61921336cd450","src/text_list.rs":"3045980b966041a0a8c2e9088be84b9d43dc8fe1acb4a57a3bf708b144aa395a","src/traits.rs":"af8f5abdba056e609ebfa00b64b7fcae8e449634018181d6c91a6b70eb09d2d5","tests/README.md":"9797633f3f3a835cd88f73ec6c5f3c15c43e55f9a83f1cbd22dcf62418e12c27","tests/canonicalize.rs":"9558049df7c8bc35747292b9ee92976821068adb898d331f41c0ad8c0a6ee98d","tests/primitive_list_as_slice.rs":"7f080266d6bbb0623540887bd1f855d4dc2bc727fbe646d8ba1694075bcee512","tests/primitive_list_as_slice_unaligned.rs":"ef745ac7eecdcdc46a0cdbcc533ffa97ff47b88cecf954e92f6684564947e750","tests/scratch_space_heap_allocator.rs":"2ea0b7972c3a2a0c6ad91eaaf0db2b7bfce7916d56f66c8b47c8679d9fd891c9","tests/serialize_read_message_no_alloc.rs":"f7c0adb6b65b2cb91960776198ec1e820f4ef056e573d9b0300fd8101a9ceecd","tests/single_segment_allocator.rs":"893ab03664455dc037f9e420e7bc8b41f2c7835afca608d9a94fcd4747619262","tests/text_comparisons.rs":"227b4d240bfb720353f62c9c717b33acb58c26d0a001a6c0a7425c45b44793cb","tests/total_size.rs":"7a9cd9ac6ae6d948bc01f7f8f552d651f59c5ac1f8cead6a6c941e9029e603d4"},"package":"ff5e468996c73ea6d3d2bffc2b738782487f878286615b7f76e11af15a9ada3f"} \ No newline at end of file +{"files":{"CHANGELOG.md":"bc5bd0995acdeb57bfbf353a521f1c79f7e1dc6ecf6cd05fcd4cefee5c7f8f07","Cargo.toml":"905b1a1e4cc9f2c95d0c660f837c6d54a59be73dc0b7913098fa4fa4ded9450f","LICENSE":"4c2dafff9370c57598f847969a8240b901226315bac3aff066955ce922361bbf","README.md":"e7209f3cbedcc10c248c58548ebe84e5c59233f8c2c89a77704b7c215b5f0e9d","c++.capnp":"52ead0eaa560b21e692d6f3d9966a52dfc99e19f53ae2d7c7bd2944a240d86de","schema.capnp":"3cd91a6ee4f22684cf378d295b4d7616d321446bf2fd6bd87c84aac1b8ebc677","src/any_pointer.rs":"be7b5dafb7ad1c5a9a343af7b553bbaf05b936da723370981ba14842b5e36bdc","src/any_pointer_list.rs":"70daf3cfea11c313bbb46ad449adfd26bda5999f7b90688c040476ad25570f28","src/capability.rs":"35215668a0d406c056a18f76a82b1da5bb1192a49d86a3ce2f3c8a0c876497c4","src/capability_list.rs":"338646a7e89b094dbc7aa9cae2f52a3493e8a1957c2c195a0d383f82737096d8","src/constant.rs":"4c875492ffce55600dc0c629c8068be782cfefd0792945525f9f0f92a0583bd0","src/data.rs":"134359b11a600dec0905660e498f9f835af06d12dda373164119a22ff1a35119","src/data_list.rs":"df287906a3b8ae5cd44a898d49bd539f6db006f39b83a21d4d622efe340dff3a","src/dynamic_list.rs":"fcfb819d0cd5abdd5839b148b9b0c4de56ddfdb38d56080947b7bbf983e6a7fe","src/dynamic_struct.rs":"b6eca759df61b47c7bf6b9ceed31b69debeb4b0df6ea3f59f1e10ee7893bdb5d","src/dynamic_value.rs":"570312d906d69ed85f1ab0904e68fd130339c80f5b5e6b2091d362bbc5eca3a2","src/enum_list.rs":"993daf0340323a9ebec5029f18f319062e2477b29b16f5e71ba638a64d57f882","src/introspect.rs":"50cbcc952746125bb1ca3ced673622f13c8920a99f2ee8f49ab44ad18f4e8663","src/io.rs":"34b39ff014308e8abb5651eee29968ec8414ac559df39f71cbb07444ccdb4a5d","src/lib.rs":"dd60b3f8ee4f9453c0cda75a069d40c1e4519e297ba1b2a794929d5ed41858af","src/list_list.rs":"03d5efee1f34bbe35b79ca71d2f50518a19b71d3fccaf5a5a591642f1da2899f","src/message.rs":"2456eb67682c9dfea8bb3a11f38602c5642d02624610e846b9e24be749e0c3d5","src/primitive_list.rs":"8c8a5e77048cbd909f00e981f060929a58004a717e05ca5a15a6b64cb0fe233e","src/private/arena.rs":"9bfc2e4275a459e15cc152292ab613e2bd3288cb0cfa29e91ed1ad8101d31b14","src/private/capability.rs":"1c97a5f546d0edf2ba5d69ed67a2686ce3665d24e0bc6e1dccc27e583c76e0e8","src/private/layout.rs":"6b4bd919f68c254bfc725598689ce942b43d2b4191cca4e3f5766ef43518c9a8","src/private/layout_test.rs":"93129424451695e50b1f1498ded8434094dbc90f4923da979c9229cd15f5b2af","src/private/mask.rs":"bb942ff4ad0b67406ec6283eb174b2e13b8435462bf8a027aaf3412276a794d0","src/private/mod.rs":"7b3acd2c80e204f576509a3a7bdad60df234fa9d9412d869762494132b965fd3","src/private/primitive.rs":"bc7c1d93d4dbff3cdc06e3a890565238aa61668ed559c348d8f905e405bcea08","src/private/read_limiter.rs":"3413e2549f46d756f22a464c0596aacf252da1d049f7eca616393e5bf0c1e04e","src/private/units.rs":"2724987138950538050f8e14d000f5c3d8372ef975e1e6c2d33f745d126ecdcb","src/private/zero.rs":"6d6fa39e7aacef6b97e961e650870a1df17e6bb166147b8c9bdf3a129e104bad","src/raw.rs":"3c70a0a111c51939a9dfaff0e0bf454d3d482e923457e9ff222a95823e1cd1e2","src/schema.rs":"bef95ee57f6b0a0fe6d1f6ce2129bad7bf3c6a93070b97271cd80e248164b2a3","src/schema_capnp.rs":"14f6f80b82c8d91c764b33d3b684d3c3acc089a02a888ac8510765d29a7239b0","src/serialize.rs":"fc1092c5958f80b7f4c650ec7764827effdae42cd8c4a40b14dc9c6f09b9f7fe","src/serialize/no_alloc_buffer_segments.rs":"be2f1299b45ea10a96258f30ddb8f53cd449cf093c1c7ebe01a86d521f9e8691","src/serialize_packed.rs":"f941fbdee5585ca501e34c38b13543c91a4f4fd250cae51e7570c6b5c5d964f8","src/stringify.rs":"607889bfb9853da70b11c4860dcf2e13b3013c1241ed2ab8ffda36e4a5a473da","src/struct_list.rs":"2596ea931ef560538df31202a4ffdb43581dad4f5b32a5b9944d57d783c9b2e8","src/text.rs":"6ce264d57d38f53901b088ef21bd7f83187f4fc2ae944b0c30f61921336cd450","src/text_list.rs":"3045980b966041a0a8c2e9088be84b9d43dc8fe1acb4a57a3bf708b144aa395a","src/traits.rs":"4b012dd612d418287b5770fd032b0eba1ba5983f81986c7136d2bf8b8aeb5be9","tests/README.md":"9797633f3f3a835cd88f73ec6c5f3c15c43e55f9a83f1cbd22dcf62418e12c27","tests/canonicalize.rs":"9558049df7c8bc35747292b9ee92976821068adb898d331f41c0ad8c0a6ee98d","tests/primitive_list_as_slice.rs":"7f080266d6bbb0623540887bd1f855d4dc2bc727fbe646d8ba1694075bcee512","tests/primitive_list_as_slice_unaligned.rs":"ef745ac7eecdcdc46a0cdbcc533ffa97ff47b88cecf954e92f6684564947e750","tests/scratch_space_heap_allocator.rs":"2ea0b7972c3a2a0c6ad91eaaf0db2b7bfce7916d56f66c8b47c8679d9fd891c9","tests/serialize_read_message_no_alloc.rs":"f7c0adb6b65b2cb91960776198ec1e820f4ef056e573d9b0300fd8101a9ceecd","tests/single_segment_allocator.rs":"893ab03664455dc037f9e420e7bc8b41f2c7835afca608d9a94fcd4747619262","tests/text_comparisons.rs":"227b4d240bfb720353f62c9c717b33acb58c26d0a001a6c0a7425c45b44793cb","tests/total_size.rs":"7a9cd9ac6ae6d948bc01f7f8f552d651f59c5ac1f8cead6a6c941e9029e603d4"},"package":"4e985a566bdaae9a428a957d12b10c318d41b2afddb54cfbb764878059df636e"} \ No newline at end of file diff --git a/.cargo-vendor/capnp/CHANGELOG.md b/.cargo-vendor/capnp/CHANGELOG.md index ba82d594f8..ca77e2d206 100644 --- a/.cargo-vendor/capnp/CHANGELOG.md +++ b/.cargo-vendor/capnp/CHANGELOG.md @@ -1,3 +1,6 @@ +## v0.19.8 +- Backport copy_nonoverlapping() bugfix from capnp-v0.20.2. + ## v0.19.7 - Add `Results::set_pipeline()` and `ResultsHook::set_pipeline()`. diff --git a/.cargo-vendor/capnp/Cargo.toml b/.cargo-vendor/capnp/Cargo.toml index 24335095b9..461d2b9a22 100644 --- a/.cargo-vendor/capnp/Cargo.toml +++ b/.cargo-vendor/capnp/Cargo.toml @@ -13,7 +13,7 @@ edition = "2021" rust-version = "1.65.0" name = "capnp" -version = "0.19.7" +version = "0.19.8" authors = ["David Renshaw "] build = false autobins = false diff --git a/.cargo-vendor/capnp/src/introspect.rs b/.cargo-vendor/capnp/src/introspect.rs index 00ba6fc199..40c3e75e10 100644 --- a/.cargo-vendor/capnp/src/introspect.rs +++ b/.cargo-vendor/capnp/src/introspect.rs @@ -256,7 +256,8 @@ impl core::fmt::Debug for RawBrandedStructSchema { /// Type information that gets included in the generated code for every /// user-defined Cap'n Proto enum. -/// To use one of this, you will usually want to convert it to a `schema::EnumSchema`, +/// +/// To use one of these, you will usually want to convert it to a `schema::EnumSchema`, /// which can be done via `into()`. #[derive(Clone, Copy)] pub struct RawEnumSchema { diff --git a/.cargo-vendor/capnp/src/message.rs b/.cargo-vendor/capnp/src/message.rs index 0133492a58..c381b3a56b 100644 --- a/.cargo-vendor/capnp/src/message.rs +++ b/.cargo-vendor/capnp/src/message.rs @@ -360,6 +360,7 @@ where } /// An object that allocates memory for a Cap'n Proto message as it is being built. +/// /// Users of capnproto-rust who wish to provide memory in non-standard ways should /// implement this trait. Objects implementing this trait are intended to be wrapped /// by `capnp::private::BuilderArena`, which handles calling the methods at the appropriate diff --git a/.cargo-vendor/capnp/src/private/layout.rs b/.cargo-vendor/capnp/src/private/layout.rs index ded5bf901b..e7921d27f6 100644 --- a/.cargo-vendor/capnp/src/private/layout.rs +++ b/.cargo-vendor/capnp/src/private/layout.rs @@ -404,6 +404,13 @@ mod wire_helpers { arena.amplified_read(virtual_amount) } + #[inline] + pub unsafe fn copy_nonoverlapping_check_zero(src: *const T, dst: *mut T, count: usize) { + if count > 0 { + ptr::copy_nonoverlapping(src, dst, count); + } + } + #[inline] pub unsafe fn allocate( arena: &mut dyn BuilderArena, @@ -840,7 +847,7 @@ mod wire_helpers { data_size: isize, pointer_count: isize, ) { - ptr::copy_nonoverlapping(src, dst, data_size as usize * BYTES_PER_WORD); + copy_nonoverlapping_check_zero(src, dst, data_size as usize * BYTES_PER_WORD); let src_refs: *const WirePointer = (src as *const WirePointer).offset(data_size); let dst_refs: *mut WirePointer = (dst as *mut WirePointer).offset(data_size); @@ -909,7 +916,7 @@ mod wire_helpers { let src_ptr = WirePointer::target(src); let (dst_ptr, dst, segment_id) = allocate(arena, dst, segment_id, word_count, WirePointerKind::List); - ptr::copy_nonoverlapping( + copy_nonoverlapping_check_zero( src_ptr, dst_ptr, word_count as usize * BYTES_PER_WORD, @@ -1202,7 +1209,7 @@ mod wire_helpers { // Copy data section. // Note: copy_nonoverlapping's third argument is an element count, not a byte count. - ptr::copy_nonoverlapping(old_ptr, ptr, old_data_size as usize * BYTES_PER_WORD); + copy_nonoverlapping_check_zero(old_ptr, ptr, old_data_size as usize * BYTES_PER_WORD); //# Copy pointer section. let new_pointer_section: *mut WirePointer = @@ -1564,7 +1571,7 @@ mod wire_helpers { let mut dst = new_ptr as *mut WirePointer; for _ in 0..element_count { // Copy data section. - ptr::copy_nonoverlapping(src, dst, old_data_size as usize); + copy_nonoverlapping_check_zero(src, dst, old_data_size as usize); // Copy pointer section let new_pointer_section = dst.offset(new_data_size as isize); @@ -1674,7 +1681,7 @@ mod wire_helpers { let mut src: *mut u8 = old_ptr; let old_byte_step = old_data_size / BITS_PER_BYTE as u32; for _ in 0..element_count { - ptr::copy_nonoverlapping(src, dst, old_byte_step as usize); + copy_nonoverlapping_check_zero(src, dst, old_byte_step as usize); src = src.offset(old_byte_step as isize); dst = dst.offset(new_step as isize * BYTES_PER_WORD as isize); } @@ -1831,7 +1838,7 @@ mod wire_helpers { value: &[u8], ) -> SegmentAnd> { let allocation = init_data_pointer(arena, reff, segment_id, value.len() as u32); - ptr::copy_nonoverlapping(value.as_ptr(), allocation.value.as_mut_ptr(), value.len()); + copy_nonoverlapping_check_zero(value.as_ptr(), allocation.value.as_mut_ptr(), value.len()); allocation } @@ -1937,7 +1944,7 @@ mod wire_helpers { *ptr = u8::from(value.get_bool_field(0)) } } else { - ptr::copy_nonoverlapping::(value.data, ptr, data_size as usize); + copy_nonoverlapping_check_zero::(value.data, ptr, data_size as usize); } let pointer_section: *mut WirePointer = @@ -2032,7 +2039,8 @@ mod wire_helpers { // in the canonicalize=true case. let whole_byte_size = u64::from(value.element_count) * u64::from(value.step) / BITS_PER_BYTE as u64; - ptr::copy_nonoverlapping(value.ptr, ptr, whole_byte_size as usize); + copy_nonoverlapping_check_zero(value.ptr, ptr, whole_byte_size as usize); + let leftover_bits = u64::from(value.element_count) * u64::from(value.step) % BITS_PER_BYTE as u64; if leftover_bits > 0 { @@ -2111,7 +2119,7 @@ mod wire_helpers { let mut src: *const u8 = value.ptr; for _ in 0..value.element_count { - ptr::copy_nonoverlapping(src, dst, data_size as usize * BYTES_PER_WORD); + copy_nonoverlapping_check_zero(src, dst, data_size as usize * BYTES_PER_WORD); dst = dst.offset(data_size as isize * BYTES_PER_WORD as isize); src = src.offset(decl_data_size as isize * BYTES_PER_WORD as isize); @@ -3735,7 +3743,7 @@ impl<'a> StructBuilder<'a> { if shared_data_size == 1 { self.set_bool_field(0, other.get_bool_field(0)); } else { - ptr::copy_nonoverlapping( + wire_helpers::copy_nonoverlapping_check_zero( other.data, self.data, (shared_data_size / BITS_PER_BYTE as u32) as usize, diff --git a/.cargo-vendor/capnp/src/serialize.rs b/.cargo-vendor/capnp/src/serialize.rs index 6322897f56..1ba7054131 100644 --- a/.cargo-vendor/capnp/src/serialize.rs +++ b/.cargo-vendor/capnp/src/serialize.rs @@ -20,8 +20,9 @@ // THE SOFTWARE. //! Reading and writing of messages using the -//! [standard stream framing](https://capnproto.org/encoding.html#serialization-over-a-stream), -//! where each message is preceded by a segment table indicating the size of its segments. +//! [standard stream framing](https://capnproto.org/encoding.html#serialization-over-a-stream). +//! +//! Each message is preceded by a segment table indicating the size of its segments. pub(crate) mod no_alloc_buffer_segments; pub use no_alloc_buffer_segments::{ @@ -42,6 +43,7 @@ pub const SEGMENTS_COUNT_LIMIT: usize = 512; type SliceSegments<'a> = BufferSegments<&'a [u8]>; /// Reads a serialized message (including a segment table) from a flat slice of bytes, without copying. +/// /// The slice is allowed to extend beyond the end of the message. On success, updates `slice` to point /// to the remaining bytes beyond the end of the message. /// @@ -77,6 +79,7 @@ pub fn read_message_from_flat_slice<'a>( } /// Reads a serialized message (including a segment table) from a flat slice of bytes, without copying. +/// /// The slice is allowed to extend beyond the end of the message. On success, updates `slice` to point /// to the remaining bytes beyond the end of the message. /// @@ -291,7 +294,9 @@ where } /// Like `read_message()`, but returns None instead of an error if there are zero bytes left in -/// `read`. This is useful for reading a stream containing an unknown number of messages -- you +/// `read`. +/// +/// This is useful for reading a stream containing an unknown number of messages -- you /// call this function until it returns None. #[cfg(feature = "alloc")] pub fn try_read_message( @@ -312,6 +317,7 @@ where } /// Like `try_read_message()`, but does not allocate any memory. +/// /// Stores the message in `buffer`. Returns a `BufferNotLargeEnough` /// error if the buffer is not large enough. /// ALIGNMENT: If the "unaligned" feature is enabled, then there are no alignment requirements on `buffer`. @@ -406,6 +412,7 @@ where } /// Like `read_message()`, but does not allocate. +/// /// Stores the message in `buffer`. Returns a `BufferNotLargeEnough` /// error if the buffer is not large enough. /// ALIGNMENT: If the "unaligned" feature is enabled, then there are no alignment requirements on `buffer`. diff --git a/.cargo-vendor/capnp/src/serialize_packed.rs b/.cargo-vendor/capnp/src/serialize_packed.rs index d99c296239..34003f5593 100644 --- a/.cargo-vendor/capnp/src/serialize_packed.rs +++ b/.cargo-vendor/capnp/src/serialize_packed.rs @@ -255,6 +255,7 @@ where } /// Like read_message(), but does not allocate. +/// /// Stores the message in `buffer`. Returns a `BufferNotLargeEnough` /// error if the buffer is not large enough. /// ALIGNMENT: If the "unaligned" feature is enabled, then there are no alignment requirements on `buffer`. @@ -272,6 +273,7 @@ where } /// Like try_read_message(), but does not allocate. +/// /// Stores the message in `buffer`. Returns a `BufferNotLargeEnough` /// error if the buffer is not large enough. /// ALIGNMENT: If the "unaligned" feature is enabled, then there are no alignment requirements on `buffer`. diff --git a/.cargo-vendor/capnp/src/traits.rs b/.cargo-vendor/capnp/src/traits.rs index c84c2081c1..5a3505ef10 100644 --- a/.cargo-vendor/capnp/src/traits.rs +++ b/.cargo-vendor/capnp/src/traits.rs @@ -98,6 +98,7 @@ pub trait SetterInput { } /// A trait for types that can be "imbued" with capabilities. +/// /// A newly-read message from the network might contain capability pointers /// but until the message has been imbued with the actual capabilities, /// those pointers will not be usable. diff --git a/.cargo-vendor/libc/.cargo-checksum.json b/.cargo-vendor/libc/.cargo-checksum.json index cb998f87e8..7193bb9750 100644 --- a/.cargo-vendor/libc/.cargo-checksum.json +++ b/.cargo-vendor/libc/.cargo-checksum.json @@ -1 +1 @@ -{"files":{"CHANGELOG.md":"07fbd44eff5f9eba77a9184a97bc844e2fb4e76587e16d0e9f3e06cfbab81d42","CONTRIBUTING.md":"a93fcda0a76e1975fcfb0aa2ba00c9b1864f9ae6062704a294d81a3688898e10","Cargo.toml":"fe797596915011ff6c4d2c079619ffaef95253793b363cb9b6e3f53d6c7a1502","LICENSE-APACHE":"62c7a1e35f56406896d7aa7ca52d0cc0d272ac022b5d2796e7d6905db8a3636a","LICENSE-MIT":"a8d47ff51ca256f56a8932dba07660672dbfe3004257ca8de708aac1415937a1","README.md":"4da2919bb509f3f06163778478494f780ca6627cb79ccab5d2c828c8d88dc133","build.rs":"e36af1b89db29ba25f301d5e572f2727f06590fcb27d9f535e90923c1ec34574","rustfmt.toml":"eaa2ea84fc1ba0359b77680804903e07bb38d257ab11986b95b158e460f787b2","src/fixed_width_ints.rs":"7f986e5f5e68d25ef04d386fd2f640e8be8f15427a8d4a458ea01d26b8dca0ca","src/fuchsia/aarch64.rs":"893fcec48142d273063ffd814dca33fbec92205fd39ada97075f85201d803996","src/fuchsia/align.rs":"ae1cf8f011a99737eabeb14ffff768e60f13b13363d7646744dbb0f443dab3d6","src/fuchsia/mod.rs":"a8e3ff551e5ff4247ab1faa1b7ca1e042046a619198e8b30fe183c6ef8485d65","src/fuchsia/no_align.rs":"303f3f1b255e0088b5715094353cf00476131d8e94e6aebb3f469557771c8b8a","src/fuchsia/riscv64.rs":"617cd75e79e0e20f664db764a4dc2a396d9fd11a4d95371acd91ed4811293b11","src/fuchsia/x86_64.rs":"93a3632b5cf67d2a6bcb7dc0a558605252d5fe689e0f38d8aa2ec5852255ac87","src/hermit.rs":"fb4a1781b64586a03b06f0837f6882ded37c01018c1d1012eea5f36e4593b87b","src/lib.rs":"7f57f05b3d9e1e14a666aabbd942cf5959e778966981e604087774d56eb059c8","src/macros.rs":"5f985b3de7b18833f866bf832b8ffb0430f0f70aa9a468b6a2c855c1bf9d33e4","src/psp.rs":"0a7d5121a8cc2903009f586c00e4ae2d6126d24eb90531dafaba6f59823aa6b2","src/sgx.rs":"16a95cdefc81c5ee00d8353a60db363c4cc3e0f75abcd5d0144723f2a306ed1b","src/solid/aarch64.rs":"a726e47f324adf73a4a0b67a2c183408d0cad105ae66acf36db37a42ab7f8707","src/solid/arm.rs":"e39a4f74ebbef3b97b8c95758ad741123d84ed3eb48d9cf4f1f4872097fc27fe","src/solid/mod.rs":"5f4151dca5132e4b4e4c23ab9737e12856dddbdc0ca3f7dbc004328ef3c8acde","src/switch.rs":"9da3dd39b3de45a7928789926e8572d00e1e11a39e6f7289a1349aadce90edba","src/teeos/mod.rs":"ecf8922923fb7541ef7b0813cdc5418b75be56247c4dbdbb7dca58a076f25b97","src/unix/aix/mod.rs":"91de34bf8237e4998e10f9274471d14fb9a31ac6f2ef6e44689066b8e280b3d3","src/unix/aix/powerpc64.rs":"cf374d81139d45f9d77c6a764f640bfbf7e0a5903689652c8296f8e10d55169b","src/unix/align.rs":"93e08ec488a0a86a518c3c64b02d4fd18a91bdc03f7103495709062f3e9efd15","src/unix/bsd/apple/b32/align.rs":"ec833a747866fe19ca2d9b4d3c9ff0385faba5edf4bd0d15fa68884c40b0e26c","src/unix/bsd/apple/b32/mod.rs":"2546ad3eb6aecb95f916648bc63264117c92b4b4859532b34cb011e4c75a5a72","src/unix/bsd/apple/b64/aarch64/align.rs":"2eaf0f561a32bdcbf4e0477c8895d5e7bcb5cdebd5fef7b4df2ca8e38e144d94","src/unix/bsd/apple/b64/aarch64/mod.rs":"44c217a4f263afe7a97435de9323d20a96c37836f899ca0925306d4b7e073c27","src/unix/bsd/apple/b64/align.rs":"ec833a747866fe19ca2d9b4d3c9ff0385faba5edf4bd0d15fa68884c40b0e26c","src/unix/bsd/apple/b64/mod.rs":"f5e278a1af7fb358891d1c9be4eb7e815aaca0c5cb738d0c3604ba2208a856f7","src/unix/bsd/apple/b64/x86_64/align.rs":"ec833a747866fe19ca2d9b4d3c9ff0385faba5edf4bd0d15fa68884c40b0e26c","src/unix/bsd/apple/b64/x86_64/mod.rs":"8c87c5855038aae5d433c8f5eb3b29b0a175879a0245342b3bfd83bdf4cfd936","src/unix/bsd/apple/long_array.rs":"3cf1f19b812e6d093c819dc65ce55b13491963e0780eda0d0bd1577603e81948","src/unix/bsd/apple/mod.rs":"f70f24f0d514115f7206892ef0b29412524808ec80f9da30455e7e7e0877bac3","src/unix/bsd/freebsdlike/dragonfly/errno.rs":"8295b8bb0dfd38d2cdb4d9192cdeeb534cc6c3b208170e64615fa3e0edb3e578","src/unix/bsd/freebsdlike/dragonfly/mod.rs":"2777f94909a798df1b8030fb86d02e2118d0ac3e49e9a542df54a569ca5ae2f9","src/unix/bsd/freebsdlike/freebsd/aarch64.rs":"6c8e216385f53a4bf5f171749b57602fc34a4e4b160a44ca31c058cb0c8a2126","src/unix/bsd/freebsdlike/freebsd/arm.rs":"59d6a670eea562fb87686e243e0a84603d29a2028a3d4b3f99ccc01bd04d2f47","src/unix/bsd/freebsdlike/freebsd/freebsd11/b64.rs":"9808d152c1196aa647f1b0f0cf84dac8c930da7d7f897a44975545e3d9d17681","src/unix/bsd/freebsdlike/freebsd/freebsd11/mod.rs":"e243ae0e89623d4fa9f85afe14369cc5fd5f2028ea715773dbec722ba80dac1f","src/unix/bsd/freebsdlike/freebsd/freebsd12/b64.rs":"61cbe45f8499bedb168106b686d4f8239472f25c7553b069eec2afe197ff2df6","src/unix/bsd/freebsdlike/freebsd/freebsd12/mod.rs":"bef9fae288a4f29e941ea369be1cd20b170040e60665a4d49a4a9e79009b72d8","src/unix/bsd/freebsdlike/freebsd/freebsd12/x86_64.rs":"2df36a7f122f6d6e5753cfb4d22e915cc80f6bc91c0161b3daae55a481bfd052","src/unix/bsd/freebsdlike/freebsd/freebsd13/b64.rs":"61cbe45f8499bedb168106b686d4f8239472f25c7553b069eec2afe197ff2df6","src/unix/bsd/freebsdlike/freebsd/freebsd13/mod.rs":"88be47524b28b6635ccb1e85ea511bf17337be0af7e9baa740c341ac9e83a6f7","src/unix/bsd/freebsdlike/freebsd/freebsd13/x86_64.rs":"2df36a7f122f6d6e5753cfb4d22e915cc80f6bc91c0161b3daae55a481bfd052","src/unix/bsd/freebsdlike/freebsd/freebsd14/b64.rs":"61cbe45f8499bedb168106b686d4f8239472f25c7553b069eec2afe197ff2df6","src/unix/bsd/freebsdlike/freebsd/freebsd14/mod.rs":"6ddc6abf6d5ccaea0d8cccf521e8ca6457efcad3086af4155628d5d06d672346","src/unix/bsd/freebsdlike/freebsd/freebsd14/x86_64.rs":"e7b5863e222d6cc416b6b0fbe71690fad909e899b4c4ae810bbca117e4fcb650","src/unix/bsd/freebsdlike/freebsd/freebsd15/b64.rs":"61cbe45f8499bedb168106b686d4f8239472f25c7553b069eec2afe197ff2df6","src/unix/bsd/freebsdlike/freebsd/freebsd15/mod.rs":"93115c1a9faa43ebf58b7dee3582aed5a54291b284764e370e7f649b2e6a9565","src/unix/bsd/freebsdlike/freebsd/freebsd15/x86_64.rs":"e7b5863e222d6cc416b6b0fbe71690fad909e899b4c4ae810bbca117e4fcb650","src/unix/bsd/freebsdlike/freebsd/mod.rs":"08e39a42392936857fd0c1c6b01788f5630fe8ff7f78b062490509c5dd816a42","src/unix/bsd/freebsdlike/freebsd/powerpc.rs":"9ca3f82f88974e6db5569f2d76a5a3749b248a31747a6c0da5820492bdfeca42","src/unix/bsd/freebsdlike/freebsd/powerpc64.rs":"2dae3ecc87eac3b11657aa98915def55fc4b5c0de11fe26aae23329a54628a9a","src/unix/bsd/freebsdlike/freebsd/riscv64.rs":"fa4bed4c58cad24ba3395941c7fa6b11e089551a04714f9561078e400f5b2b62","src/unix/bsd/freebsdlike/freebsd/x86.rs":"2837fed0ffee0ec443ecdb743b7142bcb4d6ba2de87e05459fb4498789d47200","src/unix/bsd/freebsdlike/freebsd/x86_64/align.rs":"0e1f69a88fca1c32874b1daf5db3d446fefbe518dca497f096cc9168c39dde70","src/unix/bsd/freebsdlike/freebsd/x86_64/mod.rs":"e4d76219bec0621db07dec37de9be1a9b7fb38daa10ffc1a6adbdbc34e163435","src/unix/bsd/freebsdlike/mod.rs":"c846f30eaffc7c1a21b4acd3df75cd17bb3d4f11401c9a9770924e4e6d847995","src/unix/bsd/mod.rs":"37765749481f7d0dec8681d8c9d0735e6021094b4ef4a2d9aab5643d7a4232e1","src/unix/bsd/netbsdlike/mod.rs":"3f6ca44e28bd09a1aef70c74aaa7ba9bc5086b89984f2290530f0d89944edafa","src/unix/bsd/netbsdlike/netbsd/aarch64.rs":"057ee877db7193ba0dc10801b9a6563ac6dbdb78376d6851a84cb12b30841759","src/unix/bsd/netbsdlike/netbsd/arm.rs":"949b55e4dee1c8c511f4f061a6a57ac876a6c0eabfaf5cc20e9ab40d8f41b2e0","src/unix/bsd/netbsdlike/netbsd/mips.rs":"88be18ac43ba224c77e78e4179b6761debc5e6c30a258fac56263809c7af4fbc","src/unix/bsd/netbsdlike/netbsd/mod.rs":"bcd6cc980a3b0ccc3d02ac541f62e0815810e4bd7c4d3dd21b9d1a59321e7825","src/unix/bsd/netbsdlike/netbsd/powerpc.rs":"ee7ff5d89d0ed22f531237b5059aa669df93a3b5c489fa641465ace8d405bf41","src/unix/bsd/netbsdlike/netbsd/riscv64.rs":"1cbe2e5ed681cb1054b699da37daaf6c714267df7d332c90fc2a589b11579625","src/unix/bsd/netbsdlike/netbsd/sparc64.rs":"9489f4b3e4566f43bb12dfb92238960613dac7f6a45cc13068a8d152b902d7d9","src/unix/bsd/netbsdlike/netbsd/x86.rs":"20692320e36bfe028d1a34d16fe12ca77aa909cb02bda167376f98f1a09aefe7","src/unix/bsd/netbsdlike/netbsd/x86_64.rs":"532b76199d6c71ff996eade9f906c55a72c9aff489595d25a21e21878cfd740b","src/unix/bsd/netbsdlike/openbsd/aarch64.rs":"dd91931d373b7ecaf6e2de25adadee10d16fa9b12c2cbacdff3eb291e1ba36af","src/unix/bsd/netbsdlike/openbsd/arm.rs":"01580d261bc6447bb327a0d982181b7bdabfa066cee65a30373d3ced729ad307","src/unix/bsd/netbsdlike/openbsd/mips64.rs":"8532a189ae10c7d668d9d4065da8b05d124e09bd39442c9f74a7f231c43eca48","src/unix/bsd/netbsdlike/openbsd/mod.rs":"7b93b5b24b3c72a79b2de19b47ac2f56b29d87e9fc8f4c721a63d1e87ec83fcc","src/unix/bsd/netbsdlike/openbsd/powerpc.rs":"01580d261bc6447bb327a0d982181b7bdabfa066cee65a30373d3ced729ad307","src/unix/bsd/netbsdlike/openbsd/powerpc64.rs":"1dd5449dd1fd3d51e30ffdeeaece91d0aaf05c710e0ac699fecc5461cfa2c28e","src/unix/bsd/netbsdlike/openbsd/riscv64.rs":"1fe3332dc705a13e6242219970f5449d6d7a73e2e6c8537ab8e421d8a6f2e3ff","src/unix/bsd/netbsdlike/openbsd/sparc64.rs":"d04fd287afbaa2c5df9d48c94e8374a532a3ba491b424ddf018270c7312f4085","src/unix/bsd/netbsdlike/openbsd/x86.rs":"6f7f5c4fde2a2259eb547890cbd86570cea04ef85347d7569e94e679448bec87","src/unix/bsd/netbsdlike/openbsd/x86_64.rs":"d31db31630289c85af3339dbe357998a21ca584cbae31607448fe2cf7675a4e1","src/unix/haiku/b32.rs":"a2efdbf7158a6da341e1db9176b0ab193ba88b449616239ed95dced11f54d87b","src/unix/haiku/b64.rs":"ff8115367d3d7d354f792d6176dfaaa26353f57056197b563bf4681f91ff7985","src/unix/haiku/mod.rs":"b75976d84bdf4a3a226336bb06ec231d552240f302bb5da48ead692fd72758f9","src/unix/haiku/native.rs":"2b1f88c043777a915bb7218aa05a3647a0e0481ebff55a99e351c45dea2be8de","src/unix/haiku/x86_64.rs":"3ec3aeeb7ed208b8916f3e32d42bfd085ff5e16936a1a35d9a52789f043b7237","src/unix/hurd/align.rs":"03c79b2cd8270ebd0cf93cb475a8f1ff85b28175ea0de007ede17cad94a89b03","src/unix/hurd/b32.rs":"2ba90ed973f90366c36a6387833a3df42abfee9622d4a0352635937d4a89eaf4","src/unix/hurd/b64.rs":"d919b4aec9b3080ad24c125c57b2c8b2e483d72045f1554c429d14560355846f","src/unix/hurd/mod.rs":"5900f5d2caa62fadf2d3098344d0a2b7495c4a05fde4cc6c46b74c94429ffee5","src/unix/hurd/no_align.rs":"03c79b2cd8270ebd0cf93cb475a8f1ff85b28175ea0de007ede17cad94a89b03","src/unix/linux_like/android/b32/arm.rs":"a817ce1e9ab47c1de31f447697f4480ac18a8d2b8f261b25dbc3e01b346c10a3","src/unix/linux_like/android/b32/mod.rs":"7c173e0375119bf06a3081652faede95e5bcd6858e7576b7533d037978737c8f","src/unix/linux_like/android/b32/x86/align.rs":"812914e4241df82e32b12375ca3374615dc3a4bdd4cf31f0423c5815320c0dab","src/unix/linux_like/android/b32/x86/mod.rs":"cdfd47d24e464575a737c9902d4ea8fe1c8e3af824f4e8258fc47d5c26e15437","src/unix/linux_like/android/b64/aarch64/align.rs":"2179c3b1608fa4bf68840482bfc2b2fa3ee2faf6fcae3770f9e505cddca35c7b","src/unix/linux_like/android/b64/aarch64/int128.rs":"1735f6f5c56770d20dd426442f09724d9b2052b46a7cd82f23f3288a4a7276de","src/unix/linux_like/android/b64/aarch64/mod.rs":"bb8522d0a482d3a1a83d57d7c8d7c7504ee1447b121898316d206df91f1b95b2","src/unix/linux_like/android/b64/mod.rs":"c6403d74a0233796b61db7c16b5da16c33b913653e5c0ef467f63b8a6299ab5a","src/unix/linux_like/android/b64/riscv64/align.rs":"0bf138f84e5327d8339bcd4adf071a6832b516445e597552c82bbd881095e3a8","src/unix/linux_like/android/b64/riscv64/mod.rs":"27497d6f43bb38b860c486f19104bb2dbaec554384dcc35f2286cf8a71f2ad4b","src/unix/linux_like/android/b64/x86_64/align.rs":"7169d07a9fd4716f7512719aec9fda5d8bed306dc0720ffc1b21696c9951e3c6","src/unix/linux_like/android/b64/x86_64/mod.rs":"1237ceeae9cfb035aaa67e102633612b369dca1bb88c3573a2700af1b54eff46","src/unix/linux_like/android/mod.rs":"73691c8af80607156a6b180563a37dd3f32287c92eae673a900e5ca08789090a","src/unix/linux_like/emscripten/align.rs":"86c95cbed7a7161b1f23ee06843e7b0e2340ad92b2cb86fe2a8ef3e0e8c36216","src/unix/linux_like/emscripten/lfs64.rs":"3776af30a758d765a88920ec4fde442ab89040da13d3b3625c7fbcb8a958559f","src/unix/linux_like/emscripten/mod.rs":"70d4591730a731ee32788a9d8d2de379592844ec36b7d1723514179605587713","src/unix/linux_like/emscripten/no_align.rs":"0128e4aa721a9902754828b61b5ec7d8a86619983ed1e0544a85d35b1051fad6","src/unix/linux_like/linux/align.rs":"bc5abcd38e2320171e0981e773c9c5fe3e0d5a66fdff049228f6a1acad80ef8b","src/unix/linux_like/linux/arch/generic/mod.rs":"3ab533349696d24505adb6bb9183d73fd5e3b17e2f90dd21478af2a47b4d6fa8","src/unix/linux_like/linux/arch/mips/mod.rs":"ca3db0e3ae852abf18f3588e40d5d64707fcc1829e08ddc5da1080e1a92c8851","src/unix/linux_like/linux/arch/mod.rs":"5bd5361f8a6ab4e18bbba6da9f92c164ae252b15a0ed10064812544aa1fdf198","src/unix/linux_like/linux/arch/powerpc/mod.rs":"0bc2d2667a00eca81f4abeb6d613a90848a947f51224103f83268928b8197629","src/unix/linux_like/linux/arch/sparc/mod.rs":"5e6777863e74a9e2aa9dc487f1059783dd211babc2b32d6bf676f311e49c55d6","src/unix/linux_like/linux/gnu/align.rs":"e4a3c27fe20a57b8d612c34cb05bc70646edb5cec7251957315afa53a7b9f936","src/unix/linux_like/linux/gnu/b32/arm/align.rs":"6ec0eb3ee93f7ae99fd714b4deabfb5e97fbcefd8c26f5a45fb8e7150899cdeb","src/unix/linux_like/linux/gnu/b32/arm/mod.rs":"b8bf225aa589e52471eab5193c9270e1492b42232c09d16c6e01aeb29f102945","src/unix/linux_like/linux/gnu/b32/csky/align.rs":"3fed009dc9af3cc81be7087da9d2d7d1f39845e4497e290259c5cdbae25f039d","src/unix/linux_like/linux/gnu/b32/csky/mod.rs":"8729b68e433e94c2128e51a7db4fd555938e4be4dc64584c352b24a20d9c8e91","src/unix/linux_like/linux/gnu/b32/m68k/align.rs":"8faa92f77a9232c035418d45331774e64a9a841d99c91791570a203bf2b45bcb","src/unix/linux_like/linux/gnu/b32/m68k/mod.rs":"80956d3fef163ecf248828a6f38782dd8ae856d86b1bb5aac2de36032dbd8ea0","src/unix/linux_like/linux/gnu/b32/mips/align.rs":"429fb5e005cb7143602d430098b6ebfb7d360685b194f333dfd587472ae954ee","src/unix/linux_like/linux/gnu/b32/mips/mod.rs":"96e22350d5d132d917c743d6560464500652c67b52c3d0e8474494487df3365d","src/unix/linux_like/linux/gnu/b32/mod.rs":"b56625dd20dd48a8699034d349ef089c540c0ddcbf8a3481d598d101f8b40b78","src/unix/linux_like/linux/gnu/b32/powerpc.rs":"2cd0f4128eee4120275e1f0706729c28c32426c01adbc54dbc7104e72e9c6185","src/unix/linux_like/linux/gnu/b32/riscv32/align.rs":"d321491612be8d5c61b6ec2dc0111beb3a22e58803f99cd37543efe86621b119","src/unix/linux_like/linux/gnu/b32/riscv32/mod.rs":"887288a0a1cfff319d0e15edcdc4fcb31fd643ff41715ec5244c8f2413624169","src/unix/linux_like/linux/gnu/b32/sparc/align.rs":"21adbed27df73e2d1ed934aaf733a643003d7baf2bde9c48ea440895bcca6d41","src/unix/linux_like/linux/gnu/b32/sparc/mod.rs":"cc4342b949e4d796f304acd9dfe3f721a1c2f37fec16b42d3bb27dc94723af37","src/unix/linux_like/linux/gnu/b32/x86/align.rs":"e4bafdc4a519a7922a81b37a62bbfd1177a2f620890eef8f1fbc47162e9eb413","src/unix/linux_like/linux/gnu/b32/x86/mod.rs":"772b5f144ba8f7dd481e7956fa922c98e7173616fa4dc312f17a56702fdc7c6d","src/unix/linux_like/linux/gnu/b64/aarch64/align.rs":"fdf1c72375a2167699157e0dd825422690bb6719f7bc69515a2e5846d0431d7c","src/unix/linux_like/linux/gnu/b64/aarch64/fallback.rs":"832e7487249c1c0bb6e9911ce3f7d32ca22378e42392ab83c56915cbc59d8be3","src/unix/linux_like/linux/gnu/b64/aarch64/ilp32.rs":"bf4611b737813deef6787babf6c01698605f3b75482269b8546318667bc68e29","src/unix/linux_like/linux/gnu/b64/aarch64/int128.rs":"1735f6f5c56770d20dd426442f09724d9b2052b46a7cd82f23f3288a4a7276de","src/unix/linux_like/linux/gnu/b64/aarch64/lp64.rs":"11a950697fdda0258c6e37c6b13993348c8de4134105ed4faa79358e53175072","src/unix/linux_like/linux/gnu/b64/aarch64/mod.rs":"23c9aaf3a154d1ce6606791d9a9a93625f6a0d091097b18a63a01f451ce9da44","src/unix/linux_like/linux/gnu/b64/loongarch64/align.rs":"060aa33cc737966c691aab8511c5c5729e551458ce18d0e284e0d45f39beeb60","src/unix/linux_like/linux/gnu/b64/loongarch64/mod.rs":"10f025edecebc6e0ed8fdae4736ebe7564189741d5b910433f07c21fc12a94d8","src/unix/linux_like/linux/gnu/b64/mips64/align.rs":"7169d07a9fd4716f7512719aec9fda5d8bed306dc0720ffc1b21696c9951e3c6","src/unix/linux_like/linux/gnu/b64/mips64/mod.rs":"73532be4b5775acf9524c77feeefe1f6d1936ceffef908d01dd2586986520f2d","src/unix/linux_like/linux/gnu/b64/mod.rs":"6a160ef25439c4fecdb0e3bd0b818742263c791364da874d4febd3aa644ec8e2","src/unix/linux_like/linux/gnu/b64/powerpc64/align.rs":"e29c4868bbecfa4a6cd8a2ad06193f3bbc78a468cc1dc9df83f002f1268130d9","src/unix/linux_like/linux/gnu/b64/powerpc64/mod.rs":"a90c2641616c620e9d1fea87695ce046e14f9da2282bb93f761eeb4077c74741","src/unix/linux_like/linux/gnu/b64/riscv64/align.rs":"fe7e3c928d0367c37eb652686591801c3694a3558ebbbeb5c22be692265d07f2","src/unix/linux_like/linux/gnu/b64/riscv64/mod.rs":"dec86883731f7b8419bff35b125b40eefc927090c1510f6daf931726f7965c0b","src/unix/linux_like/linux/gnu/b64/s390x.rs":"6f5c788ba4a05ef8c2045c24dba160f2e3e7391d474fa0796de2915e3706ba3c","src/unix/linux_like/linux/gnu/b64/sparc64/align.rs":"e29c4868bbecfa4a6cd8a2ad06193f3bbc78a468cc1dc9df83f002f1268130d9","src/unix/linux_like/linux/gnu/b64/sparc64/mod.rs":"bed381c44cec2a5b50125f7e548ab487d4c829006c971d152a611b7141760052","src/unix/linux_like/linux/gnu/b64/x86_64/align.rs":"62e822478356db4a73b6bbd1b36d825b893939ab4b308ec11b0578bcc4b49769","src/unix/linux_like/linux/gnu/b64/x86_64/mod.rs":"332846e4a5920d7e6b05df0448a2333c5dd00fb27cb33654648f507ee89dbec5","src/unix/linux_like/linux/gnu/b64/x86_64/not_x32.rs":"1901db260c5fbbe57ba13e034ba88d7780302b272c03cafd2963535d9d3b7b7e","src/unix/linux_like/linux/gnu/b64/x86_64/x32.rs":"46230160f3ec999bcdeeb6f363d1e930619e67a6a80652bdd12709ef71975c7d","src/unix/linux_like/linux/gnu/mod.rs":"0b0eb1888f44036821f4661a7f8b50ffef6e602f0da483f1b0e87344eced0619","src/unix/linux_like/linux/gnu/no_align.rs":"9cd223135de75315840ff9c3fd5441ba1cb632b96b5c85a76f8316c86653db25","src/unix/linux_like/linux/mod.rs":"9f23e5cae0bb0b00b29ae132f5566e40c40bcfee28f8e7fe80e48cae546dc8b4","src/unix/linux_like/linux/musl/b32/arm/align.rs":"3e8ac052c1043764776b54c93ba4260e061df998631737a897d9d47d54f7b80c","src/unix/linux_like/linux/musl/b32/arm/mod.rs":"3466888b7a46f2f63f5318762011e03634c2b3ecea5125e305ef5e16438062f1","src/unix/linux_like/linux/musl/b32/hexagon.rs":"d079cab42529f7dab699334d43168c74ff4aa0282f11040a8b7d274b65767a7a","src/unix/linux_like/linux/musl/b32/mips/align.rs":"429fb5e005cb7143602d430098b6ebfb7d360685b194f333dfd587472ae954ee","src/unix/linux_like/linux/musl/b32/mips/mod.rs":"e44043766f7cd26de7ffa4232654afb6feb03e58dbd5890717970887bd003151","src/unix/linux_like/linux/musl/b32/mod.rs":"31677597fd9544c4b1ec1477628288f6273fabbc06e38f33da862ad55f019ce1","src/unix/linux_like/linux/musl/b32/powerpc.rs":"98508bd9493f0f5858184be71595694bb2d0ab4bb1151a773ccc1bed33cb9b95","src/unix/linux_like/linux/musl/b32/riscv32/align.rs":"efd2accf33b87de7c7547903359a5da896edc33cd6c719552c7474b60d4a5d48","src/unix/linux_like/linux/musl/b32/riscv32/mod.rs":"3ee845d272f91a1908d5f421d7c353e1f14681bbdfef64410e408f4c14365a91","src/unix/linux_like/linux/musl/b32/x86/align.rs":"08e77fbd7435d7dec2ff56932433bece3f02e47ce810f89004a275a86d39cbe1","src/unix/linux_like/linux/musl/b32/x86/mod.rs":"25a7efca08ff96cc39b3da374b35e17eae13597a60ad854655949388ea3d4f64","src/unix/linux_like/linux/musl/b64/aarch64/align.rs":"6ba32725d24d7d8e6aa111f3b57aafa318f83b606abe96561329151829821133","src/unix/linux_like/linux/musl/b64/aarch64/int128.rs":"1735f6f5c56770d20dd426442f09724d9b2052b46a7cd82f23f3288a4a7276de","src/unix/linux_like/linux/musl/b64/aarch64/mod.rs":"b35b8fd1771b1b07b6b045cf9fd5b46ba877e467199d18635dd8aab50823daa4","src/unix/linux_like/linux/musl/b64/loongarch64/align.rs":"060aa33cc737966c691aab8511c5c5729e551458ce18d0e284e0d45f39beeb60","src/unix/linux_like/linux/musl/b64/loongarch64/mod.rs":"3d9ef92e682a1789544a2bd20cad5a5623db9d7d9f5d0a3692bb0230af034165","src/unix/linux_like/linux/musl/b64/mips64.rs":"a968ef9c54fa22293085f318c8472c1754482df92cc500568dc33bd807d71ea6","src/unix/linux_like/linux/musl/b64/mod.rs":"20ceaf90a03c24a2eb154a5dffbfc9a538348404db5b554a3d8126021ba45509","src/unix/linux_like/linux/musl/b64/powerpc64.rs":"140e579800a67315f4cb8a42b22aa8157eae34ffe626e77e421b43c53c23b34d","src/unix/linux_like/linux/musl/b64/riscv64/align.rs":"fe7e3c928d0367c37eb652686591801c3694a3558ebbbeb5c22be692265d07f2","src/unix/linux_like/linux/musl/b64/riscv64/mod.rs":"c5944526d7e19cd43e9d14d119a1d98f8780db7ecbcc79e69d7b9348e596b520","src/unix/linux_like/linux/musl/b64/s390x.rs":"b48edee0693b5c59a5e24bd239469f430258a334d9914e57c39dae572214bb21","src/unix/linux_like/linux/musl/b64/x86_64/align.rs":"77309276ad7a42cbe59ca381f23590b7a143aded05555b34a5b307b808cbca6e","src/unix/linux_like/linux/musl/b64/x86_64/mod.rs":"af3532523b56aa4417e0f3b7a8f6c9138e65db594ec63aa4ea7bf34c7b728f2a","src/unix/linux_like/linux/musl/lfs64.rs":"3e4fb381f3a0756520bde0f1692d4fa45e4ae8133bf7d7c64b0e3fdd512f235f","src/unix/linux_like/linux/musl/mod.rs":"77a93ad36df609b8e41125540951993fe856d63dc95c015ce05f08794f7f76b5","src/unix/linux_like/linux/no_align.rs":"62cdca0e011937aaf09a51ca86d9f0ee0fdb05f61ec3c058e6a5d5fa6357d784","src/unix/linux_like/linux/non_exhaustive.rs":"181a05bf94fdb911db83ce793b993bd6548a4115b306a7ef3c10f745a8fea3e9","src/unix/linux_like/linux/uclibc/align.rs":"9ed16138d8e439bd90930845a65eafa7ebd67366e6bf633936d44014f6e4c959","src/unix/linux_like/linux/uclibc/arm/align.rs":"e4a3c27fe20a57b8d612c34cb05bc70646edb5cec7251957315afa53a7b9f936","src/unix/linux_like/linux/uclibc/arm/mod.rs":"50288ff9e411ab0966da24838f2c2a5618021bc19c422a04f577b2979ef4081e","src/unix/linux_like/linux/uclibc/arm/no_align.rs":"9cd223135de75315840ff9c3fd5441ba1cb632b96b5c85a76f8316c86653db25","src/unix/linux_like/linux/uclibc/mips/mips32/align.rs":"e4a3c27fe20a57b8d612c34cb05bc70646edb5cec7251957315afa53a7b9f936","src/unix/linux_like/linux/uclibc/mips/mips32/mod.rs":"d0c4434e2bf813372c418a8f516c706cdccc9f7be2f0921b2207b0afdb66fe81","src/unix/linux_like/linux/uclibc/mips/mips32/no_align.rs":"9cd223135de75315840ff9c3fd5441ba1cb632b96b5c85a76f8316c86653db25","src/unix/linux_like/linux/uclibc/mips/mips64/align.rs":"a7bdcb18a37a2d91e64d5fad83ea3edc78f5412adb28f77ab077dbb26dd08b2d","src/unix/linux_like/linux/uclibc/mips/mips64/mod.rs":"3f38ee6a4690b9d7594be20d216467a34d955f7653c2c8ce1e6147daeb53f1e0","src/unix/linux_like/linux/uclibc/mips/mips64/no_align.rs":"4a18e3875698c85229599225ac3401a2a40da87e77b2ad4ef47c6fcd5a24ed30","src/unix/linux_like/linux/uclibc/mips/mod.rs":"a048fce1c2d9b1ad57305642e8ad05ca0f0c7e4753267a2e2d6b4fee5db3b072","src/unix/linux_like/linux/uclibc/mod.rs":"8424edc59f5670d2ab82bda9fba828af8798bffc93cdb7d8b82a3f5d76eedb77","src/unix/linux_like/linux/uclibc/no_align.rs":"3f28637046524618adaa1012e26cb7ffe94b9396e6b518cccdc69d59f274d709","src/unix/linux_like/linux/uclibc/x86_64/l4re.rs":"8485b9182b7c67f7344fab377e7cc2a72afefd9ab63837c860514abba9728d76","src/unix/linux_like/linux/uclibc/x86_64/mod.rs":"e7197f0f68ece174c8ae42b2b9115893abfcdbe44a1a6ed98fb3cbd7bfe087e8","src/unix/linux_like/linux/uclibc/x86_64/other.rs":"42c3f71e58cabba373f6a55a623f3c31b85049eb64824c09c2b082b3b2d6a0a8","src/unix/linux_like/mod.rs":"863f628cbaa864911ffebc58e9fb788b6c6a9651955fc401ac1f40f20eb62505","src/unix/mod.rs":"fb0df7c62d224667188167d2864246ade555c15a8b13472cc2945a4cee6da651","src/unix/newlib/aarch64/mod.rs":"964c096288da836b53c0c71d7f3a97048d177da220a69314c5ce93ba330d72af","src/unix/newlib/align.rs":"28aaf87fafbc6b312622719d472d8cf65f9e5467d15339df5f73e66d8502b28a","src/unix/newlib/arm/mod.rs":"cf754f8b1197489fca01e881a4b4b146e814998e4b365f116fa1a102c00e6a4e","src/unix/newlib/espidf/mod.rs":"a49c813dc989fc43479a80dbe1bf748da663f68e2d0ca0112ff0a9e60c83ffe7","src/unix/newlib/generic.rs":"5f0b5d07ddb5a5d60580f9561fdb05e9218d9751d4068c4aadad2ba6b950aabf","src/unix/newlib/horizon/mod.rs":"6c1109cbf4809d25a6d88129445f82f137183422c6ed1d3faa3a775bce12d536","src/unix/newlib/mod.rs":"9708ef2966966f128041022d81091bd5ff9dc8e220dddf61f3069e453e9f728f","src/unix/newlib/no_align.rs":"e0743b2179495a9514bc3a4d1781e492878c4ec834ee0085d0891dd1712e82fb","src/unix/newlib/powerpc/mod.rs":"cc9e188711b9bf614323ad6c48e0d2e1a1ecc5d3bc64961ba451f29c6c22d2d8","src/unix/newlib/vita/mod.rs":"ff1caf74bb0696fe15d60dbac598db4520cd538aa0f5989713d97d008eee6ad8","src/unix/no_align.rs":"7be3d17a22ca1f55ba1058d199fd45916f9be1a9669bfd99e0dea5525af07b84","src/unix/nto/aarch64.rs":"4709c9afdc8d583be876598e7c238499ee3e8da5bd2baa614d9c7dd414851555","src/unix/nto/mod.rs":"5eb045c352114f5d744d098acaf9e47a9223f6fccd43f36b9a3ba79b29af0eee","src/unix/nto/neutrino.rs":"799bff4ab01a6424db6c5a2b76aa5679826d41495f9d13c63485bf13bc80026b","src/unix/nto/x86_64.rs":"a3e18e93c2999da1cd7a6f748a4b60c07aefb73d8ea2aafec19a84cfb040bc8e","src/unix/redox/mod.rs":"e75a319975472fe9e0873244fb07c5d2004672b7a4cf7a3cb01532d6d394cb8a","src/unix/solarish/compat.rs":"00f1ee3faec9da69204e42f025f6735dd13d894071a154425dcc43ecbdd06e7f","src/unix/solarish/illumos.rs":"26171da367221de1e456f1236250b5831a770d6f109ed12b0ebe4d508e490194","src/unix/solarish/mod.rs":"c0c5dfc406d728666010cdc2fe21b0df40547ed20dd7ad0eab65906e103b6d4b","src/unix/solarish/solaris.rs":"41b350a89ddf01cd12a10f93640f92be53be0b0d976021cdc08da17bf3e72edf","src/unix/solarish/x86.rs":"e86e806df0caed72765040eaa2f3c883198d1aa91508540adf9b7008c77f522e","src/unix/solarish/x86_64.rs":"ec2b01f194eb8a6a27133c57681da195a949e03098f3ea1e847227a9c09ef5fc","src/unix/solarish/x86_common.rs":"ac869d9c3c95645c22460468391eb1982023c3a8e02b9e06a72e3aef3d5f1eac","src/vxworks/aarch64.rs":"98f0afdc511cd02557e506c21fed6737585490a1dce7a9d4941d08c437762b99","src/vxworks/arm.rs":"acb7968ce99fe3f4abdf39d98f8133d21a4fba435b8ef7084777cb181d788e88","src/vxworks/mod.rs":"442df15948cda5cbb2a11dc1cc98e7e84d9fd59237d703888c9285e0d03e5bcb","src/vxworks/powerpc.rs":"acb7968ce99fe3f4abdf39d98f8133d21a4fba435b8ef7084777cb181d788e88","src/vxworks/powerpc64.rs":"98f0afdc511cd02557e506c21fed6737585490a1dce7a9d4941d08c437762b99","src/vxworks/x86.rs":"552f007f38317620b23889cb7c49d1d115841252439060122f52f434fbc6e5ba","src/vxworks/x86_64.rs":"018d92be3ad628a129eff9f2f5dfbc0883d8b8e5f2fa917b900a7f98ed6b514a","src/wasi/mod.rs":"6b7d8bbcf668c85e37ae35fecf6088ad75a81b6d84f3e339fabc2f8dae4b12c9","src/wasi/p2.rs":"535987406f8a5abddba9e3e020865a1b148e11dee683ed28ccc553cfac9c5e1b","src/windows/gnu/align.rs":"b2c13ec1b9f3b39a75c452c80c951dff9d0215e31d77e883b4502afb31794647","src/windows/gnu/mod.rs":"3c8c7edb7cdf5d0c44af936db2a94869585c69dfabeef30571b4f4e38375767a","src/windows/mod.rs":"9fdc5e1c62c441abef7bc62a7343efb2041edc24db9ac0efc0f74df55b69e249","src/windows/msvc/mod.rs":"c068271e00fca6b62bc4bf44bcf142cfc38caeded9b6c4e01d1ceef3ccf986f4","src/xous.rs":"eb0675f25ba01f73072d2b70907fb8abb1148facefe5a20756c49250f3d65fae","tests/const_fn.rs":"cb75a1f0864f926aebe79118fc34d51a0d1ade2c20a394e7774c7e545f21f1f4"},"package":"561d97a539a36e26a9a5fad1ea11a3039a67714694aaa379433e580854bc3dc5"} \ No newline at end of file +{"files":{"CHANGELOG.md":"00a63505931433eba3839574cda42b8120c51d87848a48db84566249e80a4683","CONTRIBUTING.md":"a93fcda0a76e1975fcfb0aa2ba00c9b1864f9ae6062704a294d81a3688898e10","Cargo.toml":"cd5c96ca2c050e73f246b496d6744fd99193c049a9adbac875d731e15d118afe","LICENSE-APACHE":"62c7a1e35f56406896d7aa7ca52d0cc0d272ac022b5d2796e7d6905db8a3636a","LICENSE-MIT":"a8d47ff51ca256f56a8932dba07660672dbfe3004257ca8de708aac1415937a1","README.md":"dcd338c238d2eede49c8e5031dae41297248bc72038aa0b6a74c276b7af8e4c1","build.rs":"c06d45444ada13db1b9faaafe2c3e85fe8c8e35e9450cf33496d595fa401c01c","rustfmt.toml":"eaa2ea84fc1ba0359b77680804903e07bb38d257ab11986b95b158e460f787b2","src/fixed_width_ints.rs":"7f986e5f5e68d25ef04d386fd2f640e8be8f15427a8d4a458ea01d26b8dca0ca","src/fuchsia/aarch64.rs":"893fcec48142d273063ffd814dca33fbec92205fd39ada97075f85201d803996","src/fuchsia/align.rs":"ae1cf8f011a99737eabeb14ffff768e60f13b13363d7646744dbb0f443dab3d6","src/fuchsia/mod.rs":"a8e3ff551e5ff4247ab1faa1b7ca1e042046a619198e8b30fe183c6ef8485d65","src/fuchsia/no_align.rs":"303f3f1b255e0088b5715094353cf00476131d8e94e6aebb3f469557771c8b8a","src/fuchsia/riscv64.rs":"617cd75e79e0e20f664db764a4dc2a396d9fd11a4d95371acd91ed4811293b11","src/fuchsia/x86_64.rs":"93a3632b5cf67d2a6bcb7dc0a558605252d5fe689e0f38d8aa2ec5852255ac87","src/hermit.rs":"fb4a1781b64586a03b06f0837f6882ded37c01018c1d1012eea5f36e4593b87b","src/lib.rs":"7f57f05b3d9e1e14a666aabbd942cf5959e778966981e604087774d56eb059c8","src/macros.rs":"5f985b3de7b18833f866bf832b8ffb0430f0f70aa9a468b6a2c855c1bf9d33e4","src/psp.rs":"0a7d5121a8cc2903009f586c00e4ae2d6126d24eb90531dafaba6f59823aa6b2","src/sgx.rs":"16a95cdefc81c5ee00d8353a60db363c4cc3e0f75abcd5d0144723f2a306ed1b","src/solid/aarch64.rs":"a726e47f324adf73a4a0b67a2c183408d0cad105ae66acf36db37a42ab7f8707","src/solid/arm.rs":"e39a4f74ebbef3b97b8c95758ad741123d84ed3eb48d9cf4f1f4872097fc27fe","src/solid/mod.rs":"5f4151dca5132e4b4e4c23ab9737e12856dddbdc0ca3f7dbc004328ef3c8acde","src/switch.rs":"9da3dd39b3de45a7928789926e8572d00e1e11a39e6f7289a1349aadce90edba","src/teeos/mod.rs":"ecf8922923fb7541ef7b0813cdc5418b75be56247c4dbdbb7dca58a076f25b97","src/unix/aix/mod.rs":"91de34bf8237e4998e10f9274471d14fb9a31ac6f2ef6e44689066b8e280b3d3","src/unix/aix/powerpc64.rs":"cf374d81139d45f9d77c6a764f640bfbf7e0a5903689652c8296f8e10d55169b","src/unix/align.rs":"93e08ec488a0a86a518c3c64b02d4fd18a91bdc03f7103495709062f3e9efd15","src/unix/bsd/apple/b32/align.rs":"ec833a747866fe19ca2d9b4d3c9ff0385faba5edf4bd0d15fa68884c40b0e26c","src/unix/bsd/apple/b32/mod.rs":"b68a100ef6bcdac138e4381b34cebdb97f3cc04fc7282c5200776933576e26ab","src/unix/bsd/apple/b64/aarch64/align.rs":"2eaf0f561a32bdcbf4e0477c8895d5e7bcb5cdebd5fef7b4df2ca8e38e144d94","src/unix/bsd/apple/b64/aarch64/mod.rs":"44c217a4f263afe7a97435de9323d20a96c37836f899ca0925306d4b7e073c27","src/unix/bsd/apple/b64/align.rs":"ec833a747866fe19ca2d9b4d3c9ff0385faba5edf4bd0d15fa68884c40b0e26c","src/unix/bsd/apple/b64/mod.rs":"dbe5d2cfda9517615f1bcd5ebf65508555795fd659eb5f2a3ba3ac9948dfc795","src/unix/bsd/apple/b64/x86_64/align.rs":"ec833a747866fe19ca2d9b4d3c9ff0385faba5edf4bd0d15fa68884c40b0e26c","src/unix/bsd/apple/b64/x86_64/mod.rs":"8c87c5855038aae5d433c8f5eb3b29b0a175879a0245342b3bfd83bdf4cfd936","src/unix/bsd/apple/long_array.rs":"3cf1f19b812e6d093c819dc65ce55b13491963e0780eda0d0bd1577603e81948","src/unix/bsd/apple/mod.rs":"b29927e1da40142316427e72ec3bea9c672f143a166ab15b2e73a2c33bbf3d68","src/unix/bsd/freebsdlike/dragonfly/errno.rs":"8295b8bb0dfd38d2cdb4d9192cdeeb534cc6c3b208170e64615fa3e0edb3e578","src/unix/bsd/freebsdlike/dragonfly/mod.rs":"de68129961129d85c8252d1eea7960151c61d817789b502ba1bf004e269ec6cd","src/unix/bsd/freebsdlike/freebsd/aarch64.rs":"6c8e216385f53a4bf5f171749b57602fc34a4e4b160a44ca31c058cb0c8a2126","src/unix/bsd/freebsdlike/freebsd/arm.rs":"a8749458ac9fec3f3594280bb2c83cf90e78e46026a05c2a5b5af22c7c28867d","src/unix/bsd/freebsdlike/freebsd/freebsd11/b32.rs":"019329b53448b550d2ae07be672facc886f4108c6440cc19bcd6ce2f398d91a5","src/unix/bsd/freebsdlike/freebsd/freebsd11/b64.rs":"9808d152c1196aa647f1b0f0cf84dac8c930da7d7f897a44975545e3d9d17681","src/unix/bsd/freebsdlike/freebsd/freebsd11/mod.rs":"65ae22c58b30221320d74dd97ca020a13f556314f5cdf7b9f5adb9683ef73f70","src/unix/bsd/freebsdlike/freebsd/freebsd12/mod.rs":"b95173192cc528b51c455fcaa7c8578eb3356e76b55924157f05a9a60cad95d3","src/unix/bsd/freebsdlike/freebsd/freebsd12/x86_64.rs":"2df36a7f122f6d6e5753cfb4d22e915cc80f6bc91c0161b3daae55a481bfd052","src/unix/bsd/freebsdlike/freebsd/freebsd13/mod.rs":"04857783746abeecea95a03d812e11fe59049742ae7f52a8507f5208eb25d4bb","src/unix/bsd/freebsdlike/freebsd/freebsd13/x86_64.rs":"2df36a7f122f6d6e5753cfb4d22e915cc80f6bc91c0161b3daae55a481bfd052","src/unix/bsd/freebsdlike/freebsd/freebsd14/mod.rs":"c299bdf43fea4b5f083b77ca181401d6d8f1f1edfb36f9afe22548bf4b3422c9","src/unix/bsd/freebsdlike/freebsd/freebsd14/x86_64.rs":"e7b5863e222d6cc416b6b0fbe71690fad909e899b4c4ae810bbca117e4fcb650","src/unix/bsd/freebsdlike/freebsd/freebsd15/mod.rs":"293d185c686b6ae62038287e3af42cf958c32f7e0b4acbfc4b8da47e9b77b9f3","src/unix/bsd/freebsdlike/freebsd/freebsd15/x86_64.rs":"e7b5863e222d6cc416b6b0fbe71690fad909e899b4c4ae810bbca117e4fcb650","src/unix/bsd/freebsdlike/freebsd/mod.rs":"819c393d6368d067735b1c6f41acf59e83952d6927720e7ef09d62ff878ac9a8","src/unix/bsd/freebsdlike/freebsd/powerpc.rs":"45f2293fcfc76f936cd1a075f3b7eb1a37433f86acf22f34d4346e16f8162c37","src/unix/bsd/freebsdlike/freebsd/powerpc64.rs":"d650fb558023c2e79cba812ed76b25342c12c516de2245d8ecd2f1c4fc9bd6fc","src/unix/bsd/freebsdlike/freebsd/riscv64.rs":"fa4bed4c58cad24ba3395941c7fa6b11e089551a04714f9561078e400f5b2b62","src/unix/bsd/freebsdlike/freebsd/x86.rs":"9640d6be072b07b36917a2d475fb9e30dce68a607b645a5e9de5591bd56b7024","src/unix/bsd/freebsdlike/freebsd/x86_64/align.rs":"0e1f69a88fca1c32874b1daf5db3d446fefbe518dca497f096cc9168c39dde70","src/unix/bsd/freebsdlike/freebsd/x86_64/mod.rs":"e4d76219bec0621db07dec37de9be1a9b7fb38daa10ffc1a6adbdbc34e163435","src/unix/bsd/freebsdlike/mod.rs":"e6872f3d66b99905846d57034c1d3b6da939de7b357e891b017f8ae643f0e84b","src/unix/bsd/mod.rs":"c8dddc969aee356415d42fb2045802c7e402fb6b019dd007f0e4e25010f97edb","src/unix/bsd/netbsdlike/mod.rs":"3f6ca44e28bd09a1aef70c74aaa7ba9bc5086b89984f2290530f0d89944edafa","src/unix/bsd/netbsdlike/netbsd/aarch64.rs":"057ee877db7193ba0dc10801b9a6563ac6dbdb78376d6851a84cb12b30841759","src/unix/bsd/netbsdlike/netbsd/arm.rs":"949b55e4dee1c8c511f4f061a6a57ac876a6c0eabfaf5cc20e9ab40d8f41b2e0","src/unix/bsd/netbsdlike/netbsd/mips.rs":"88be18ac43ba224c77e78e4179b6761debc5e6c30a258fac56263809c7af4fbc","src/unix/bsd/netbsdlike/netbsd/mod.rs":"febeb36ab9e653e8916c5476c5560b4eb12ea19153bb74fb591e4166afa013eb","src/unix/bsd/netbsdlike/netbsd/powerpc.rs":"ee7ff5d89d0ed22f531237b5059aa669df93a3b5c489fa641465ace8d405bf41","src/unix/bsd/netbsdlike/netbsd/riscv64.rs":"1cbe2e5ed681cb1054b699da37daaf6c714267df7d332c90fc2a589b11579625","src/unix/bsd/netbsdlike/netbsd/sparc64.rs":"9489f4b3e4566f43bb12dfb92238960613dac7f6a45cc13068a8d152b902d7d9","src/unix/bsd/netbsdlike/netbsd/x86.rs":"20692320e36bfe028d1a34d16fe12ca77aa909cb02bda167376f98f1a09aefe7","src/unix/bsd/netbsdlike/netbsd/x86_64.rs":"532b76199d6c71ff996eade9f906c55a72c9aff489595d25a21e21878cfd740b","src/unix/bsd/netbsdlike/openbsd/aarch64.rs":"dd91931d373b7ecaf6e2de25adadee10d16fa9b12c2cbacdff3eb291e1ba36af","src/unix/bsd/netbsdlike/openbsd/arm.rs":"01580d261bc6447bb327a0d982181b7bdabfa066cee65a30373d3ced729ad307","src/unix/bsd/netbsdlike/openbsd/mips64.rs":"8532a189ae10c7d668d9d4065da8b05d124e09bd39442c9f74a7f231c43eca48","src/unix/bsd/netbsdlike/openbsd/mod.rs":"fc947eb997567037feb46d0e1404abc20de63e10cc2f9800d155d7b64bcd875c","src/unix/bsd/netbsdlike/openbsd/powerpc.rs":"01580d261bc6447bb327a0d982181b7bdabfa066cee65a30373d3ced729ad307","src/unix/bsd/netbsdlike/openbsd/powerpc64.rs":"1dd5449dd1fd3d51e30ffdeeaece91d0aaf05c710e0ac699fecc5461cfa2c28e","src/unix/bsd/netbsdlike/openbsd/riscv64.rs":"1fe3332dc705a13e6242219970f5449d6d7a73e2e6c8537ab8e421d8a6f2e3ff","src/unix/bsd/netbsdlike/openbsd/sparc64.rs":"d04fd287afbaa2c5df9d48c94e8374a532a3ba491b424ddf018270c7312f4085","src/unix/bsd/netbsdlike/openbsd/x86.rs":"6f7f5c4fde2a2259eb547890cbd86570cea04ef85347d7569e94e679448bec87","src/unix/bsd/netbsdlike/openbsd/x86_64.rs":"d31db31630289c85af3339dbe357998a21ca584cbae31607448fe2cf7675a4e1","src/unix/haiku/b32.rs":"a2efdbf7158a6da341e1db9176b0ab193ba88b449616239ed95dced11f54d87b","src/unix/haiku/b64.rs":"ff8115367d3d7d354f792d6176dfaaa26353f57056197b563bf4681f91ff7985","src/unix/haiku/mod.rs":"b40054667bedbaed9c27768ec10628187c530f488067d4f9e0fd86afde92ac1a","src/unix/haiku/native.rs":"2b1f88c043777a915bb7218aa05a3647a0e0481ebff55a99e351c45dea2be8de","src/unix/haiku/x86_64.rs":"3ec3aeeb7ed208b8916f3e32d42bfd085ff5e16936a1a35d9a52789f043b7237","src/unix/hurd/align.rs":"03c79b2cd8270ebd0cf93cb475a8f1ff85b28175ea0de007ede17cad94a89b03","src/unix/hurd/b32.rs":"2ba90ed973f90366c36a6387833a3df42abfee9622d4a0352635937d4a89eaf4","src/unix/hurd/b64.rs":"d919b4aec9b3080ad24c125c57b2c8b2e483d72045f1554c429d14560355846f","src/unix/hurd/mod.rs":"5900f5d2caa62fadf2d3098344d0a2b7495c4a05fde4cc6c46b74c94429ffee5","src/unix/hurd/no_align.rs":"03c79b2cd8270ebd0cf93cb475a8f1ff85b28175ea0de007ede17cad94a89b03","src/unix/linux_like/android/b32/arm.rs":"a817ce1e9ab47c1de31f447697f4480ac18a8d2b8f261b25dbc3e01b346c10a3","src/unix/linux_like/android/b32/mod.rs":"7c173e0375119bf06a3081652faede95e5bcd6858e7576b7533d037978737c8f","src/unix/linux_like/android/b32/x86/align.rs":"812914e4241df82e32b12375ca3374615dc3a4bdd4cf31f0423c5815320c0dab","src/unix/linux_like/android/b32/x86/mod.rs":"cdfd47d24e464575a737c9902d4ea8fe1c8e3af824f4e8258fc47d5c26e15437","src/unix/linux_like/android/b64/aarch64/align.rs":"2179c3b1608fa4bf68840482bfc2b2fa3ee2faf6fcae3770f9e505cddca35c7b","src/unix/linux_like/android/b64/aarch64/int128.rs":"1735f6f5c56770d20dd426442f09724d9b2052b46a7cd82f23f3288a4a7276de","src/unix/linux_like/android/b64/aarch64/mod.rs":"bb8522d0a482d3a1a83d57d7c8d7c7504ee1447b121898316d206df91f1b95b2","src/unix/linux_like/android/b64/mod.rs":"c6403d74a0233796b61db7c16b5da16c33b913653e5c0ef467f63b8a6299ab5a","src/unix/linux_like/android/b64/riscv64/align.rs":"0bf138f84e5327d8339bcd4adf071a6832b516445e597552c82bbd881095e3a8","src/unix/linux_like/android/b64/riscv64/mod.rs":"27497d6f43bb38b860c486f19104bb2dbaec554384dcc35f2286cf8a71f2ad4b","src/unix/linux_like/android/b64/x86_64/align.rs":"7169d07a9fd4716f7512719aec9fda5d8bed306dc0720ffc1b21696c9951e3c6","src/unix/linux_like/android/b64/x86_64/mod.rs":"1237ceeae9cfb035aaa67e102633612b369dca1bb88c3573a2700af1b54eff46","src/unix/linux_like/android/mod.rs":"66f047d4ead41af0987db997a7c53c7c726af8ae8302591094f79fd9113994a6","src/unix/linux_like/emscripten/align.rs":"86c95cbed7a7161b1f23ee06843e7b0e2340ad92b2cb86fe2a8ef3e0e8c36216","src/unix/linux_like/emscripten/lfs64.rs":"3776af30a758d765a88920ec4fde442ab89040da13d3b3625c7fbcb8a958559f","src/unix/linux_like/emscripten/mod.rs":"a90b1520ddc6d3a4f792f1d423a62e925efaa63ed169d6e35b1c9b940cb76681","src/unix/linux_like/emscripten/no_align.rs":"0128e4aa721a9902754828b61b5ec7d8a86619983ed1e0544a85d35b1051fad6","src/unix/linux_like/linux/align.rs":"c2b0beda8ffb03c2068f5f45aeb417030cc94a0294a2810d8dec6e87a65af8ba","src/unix/linux_like/linux/arch/generic/mod.rs":"3ab533349696d24505adb6bb9183d73fd5e3b17e2f90dd21478af2a47b4d6fa8","src/unix/linux_like/linux/arch/mips/mod.rs":"ca3db0e3ae852abf18f3588e40d5d64707fcc1829e08ddc5da1080e1a92c8851","src/unix/linux_like/linux/arch/mod.rs":"5bd5361f8a6ab4e18bbba6da9f92c164ae252b15a0ed10064812544aa1fdf198","src/unix/linux_like/linux/arch/powerpc/mod.rs":"0bc2d2667a00eca81f4abeb6d613a90848a947f51224103f83268928b8197629","src/unix/linux_like/linux/arch/sparc/mod.rs":"5e6777863e74a9e2aa9dc487f1059783dd211babc2b32d6bf676f311e49c55d6","src/unix/linux_like/linux/gnu/align.rs":"e4a3c27fe20a57b8d612c34cb05bc70646edb5cec7251957315afa53a7b9f936","src/unix/linux_like/linux/gnu/b32/arm/align.rs":"6ec0eb3ee93f7ae99fd714b4deabfb5e97fbcefd8c26f5a45fb8e7150899cdeb","src/unix/linux_like/linux/gnu/b32/arm/mod.rs":"b8bf225aa589e52471eab5193c9270e1492b42232c09d16c6e01aeb29f102945","src/unix/linux_like/linux/gnu/b32/csky/align.rs":"3fed009dc9af3cc81be7087da9d2d7d1f39845e4497e290259c5cdbae25f039d","src/unix/linux_like/linux/gnu/b32/csky/mod.rs":"8729b68e433e94c2128e51a7db4fd555938e4be4dc64584c352b24a20d9c8e91","src/unix/linux_like/linux/gnu/b32/m68k/align.rs":"8faa92f77a9232c035418d45331774e64a9a841d99c91791570a203bf2b45bcb","src/unix/linux_like/linux/gnu/b32/m68k/mod.rs":"80956d3fef163ecf248828a6f38782dd8ae856d86b1bb5aac2de36032dbd8ea0","src/unix/linux_like/linux/gnu/b32/mips/align.rs":"429fb5e005cb7143602d430098b6ebfb7d360685b194f333dfd587472ae954ee","src/unix/linux_like/linux/gnu/b32/mips/mod.rs":"96e22350d5d132d917c743d6560464500652c67b52c3d0e8474494487df3365d","src/unix/linux_like/linux/gnu/b32/mod.rs":"b56625dd20dd48a8699034d349ef089c540c0ddcbf8a3481d598d101f8b40b78","src/unix/linux_like/linux/gnu/b32/powerpc.rs":"2cd0f4128eee4120275e1f0706729c28c32426c01adbc54dbc7104e72e9c6185","src/unix/linux_like/linux/gnu/b32/riscv32/align.rs":"d321491612be8d5c61b6ec2dc0111beb3a22e58803f99cd37543efe86621b119","src/unix/linux_like/linux/gnu/b32/riscv32/mod.rs":"887288a0a1cfff319d0e15edcdc4fcb31fd643ff41715ec5244c8f2413624169","src/unix/linux_like/linux/gnu/b32/sparc/align.rs":"21adbed27df73e2d1ed934aaf733a643003d7baf2bde9c48ea440895bcca6d41","src/unix/linux_like/linux/gnu/b32/sparc/mod.rs":"cc4342b949e4d796f304acd9dfe3f721a1c2f37fec16b42d3bb27dc94723af37","src/unix/linux_like/linux/gnu/b32/x86/align.rs":"e4bafdc4a519a7922a81b37a62bbfd1177a2f620890eef8f1fbc47162e9eb413","src/unix/linux_like/linux/gnu/b32/x86/mod.rs":"772b5f144ba8f7dd481e7956fa922c98e7173616fa4dc312f17a56702fdc7c6d","src/unix/linux_like/linux/gnu/b64/aarch64/align.rs":"fdf1c72375a2167699157e0dd825422690bb6719f7bc69515a2e5846d0431d7c","src/unix/linux_like/linux/gnu/b64/aarch64/fallback.rs":"832e7487249c1c0bb6e9911ce3f7d32ca22378e42392ab83c56915cbc59d8be3","src/unix/linux_like/linux/gnu/b64/aarch64/ilp32.rs":"bf4611b737813deef6787babf6c01698605f3b75482269b8546318667bc68e29","src/unix/linux_like/linux/gnu/b64/aarch64/int128.rs":"1735f6f5c56770d20dd426442f09724d9b2052b46a7cd82f23f3288a4a7276de","src/unix/linux_like/linux/gnu/b64/aarch64/lp64.rs":"11a950697fdda0258c6e37c6b13993348c8de4134105ed4faa79358e53175072","src/unix/linux_like/linux/gnu/b64/aarch64/mod.rs":"23c9aaf3a154d1ce6606791d9a9a93625f6a0d091097b18a63a01f451ce9da44","src/unix/linux_like/linux/gnu/b64/loongarch64/align.rs":"060aa33cc737966c691aab8511c5c5729e551458ce18d0e284e0d45f39beeb60","src/unix/linux_like/linux/gnu/b64/loongarch64/mod.rs":"10f025edecebc6e0ed8fdae4736ebe7564189741d5b910433f07c21fc12a94d8","src/unix/linux_like/linux/gnu/b64/mips64/align.rs":"7169d07a9fd4716f7512719aec9fda5d8bed306dc0720ffc1b21696c9951e3c6","src/unix/linux_like/linux/gnu/b64/mips64/mod.rs":"73532be4b5775acf9524c77feeefe1f6d1936ceffef908d01dd2586986520f2d","src/unix/linux_like/linux/gnu/b64/mod.rs":"6a160ef25439c4fecdb0e3bd0b818742263c791364da874d4febd3aa644ec8e2","src/unix/linux_like/linux/gnu/b64/powerpc64/align.rs":"e29c4868bbecfa4a6cd8a2ad06193f3bbc78a468cc1dc9df83f002f1268130d9","src/unix/linux_like/linux/gnu/b64/powerpc64/mod.rs":"a90c2641616c620e9d1fea87695ce046e14f9da2282bb93f761eeb4077c74741","src/unix/linux_like/linux/gnu/b64/riscv64/align.rs":"fe7e3c928d0367c37eb652686591801c3694a3558ebbbeb5c22be692265d07f2","src/unix/linux_like/linux/gnu/b64/riscv64/mod.rs":"dec86883731f7b8419bff35b125b40eefc927090c1510f6daf931726f7965c0b","src/unix/linux_like/linux/gnu/b64/s390x.rs":"6f5c788ba4a05ef8c2045c24dba160f2e3e7391d474fa0796de2915e3706ba3c","src/unix/linux_like/linux/gnu/b64/sparc64/align.rs":"e29c4868bbecfa4a6cd8a2ad06193f3bbc78a468cc1dc9df83f002f1268130d9","src/unix/linux_like/linux/gnu/b64/sparc64/mod.rs":"bed381c44cec2a5b50125f7e548ab487d4c829006c971d152a611b7141760052","src/unix/linux_like/linux/gnu/b64/x86_64/align.rs":"62e822478356db4a73b6bbd1b36d825b893939ab4b308ec11b0578bcc4b49769","src/unix/linux_like/linux/gnu/b64/x86_64/mod.rs":"ba753a7997864baa04097de1176c2a2618ea8495b2342f43af81b39b4a0ba7eb","src/unix/linux_like/linux/gnu/b64/x86_64/not_x32.rs":"1901db260c5fbbe57ba13e034ba88d7780302b272c03cafd2963535d9d3b7b7e","src/unix/linux_like/linux/gnu/b64/x86_64/x32.rs":"46230160f3ec999bcdeeb6f363d1e930619e67a6a80652bdd12709ef71975c7d","src/unix/linux_like/linux/gnu/mod.rs":"e448e29b9d2f35ea9adccf24397365e5a9d680ef31e88680be9750242b5f797c","src/unix/linux_like/linux/gnu/no_align.rs":"9cd223135de75315840ff9c3fd5441ba1cb632b96b5c85a76f8316c86653db25","src/unix/linux_like/linux/mod.rs":"544d76a04c916d536e5e151e1ea5dedb70e4d7fa1074100f35639438fff7bf4e","src/unix/linux_like/linux/musl/b32/arm/align.rs":"3e8ac052c1043764776b54c93ba4260e061df998631737a897d9d47d54f7b80c","src/unix/linux_like/linux/musl/b32/arm/mod.rs":"3466888b7a46f2f63f5318762011e03634c2b3ecea5125e305ef5e16438062f1","src/unix/linux_like/linux/musl/b32/hexagon.rs":"d079cab42529f7dab699334d43168c74ff4aa0282f11040a8b7d274b65767a7a","src/unix/linux_like/linux/musl/b32/mips/align.rs":"429fb5e005cb7143602d430098b6ebfb7d360685b194f333dfd587472ae954ee","src/unix/linux_like/linux/musl/b32/mips/mod.rs":"e44043766f7cd26de7ffa4232654afb6feb03e58dbd5890717970887bd003151","src/unix/linux_like/linux/musl/b32/mod.rs":"31677597fd9544c4b1ec1477628288f6273fabbc06e38f33da862ad55f019ce1","src/unix/linux_like/linux/musl/b32/powerpc.rs":"98508bd9493f0f5858184be71595694bb2d0ab4bb1151a773ccc1bed33cb9b95","src/unix/linux_like/linux/musl/b32/riscv32/align.rs":"efd2accf33b87de7c7547903359a5da896edc33cd6c719552c7474b60d4a5d48","src/unix/linux_like/linux/musl/b32/riscv32/mod.rs":"3ee845d272f91a1908d5f421d7c353e1f14681bbdfef64410e408f4c14365a91","src/unix/linux_like/linux/musl/b32/x86/align.rs":"08e77fbd7435d7dec2ff56932433bece3f02e47ce810f89004a275a86d39cbe1","src/unix/linux_like/linux/musl/b32/x86/mod.rs":"25a7efca08ff96cc39b3da374b35e17eae13597a60ad854655949388ea3d4f64","src/unix/linux_like/linux/musl/b64/aarch64/align.rs":"6ba32725d24d7d8e6aa111f3b57aafa318f83b606abe96561329151829821133","src/unix/linux_like/linux/musl/b64/aarch64/int128.rs":"1735f6f5c56770d20dd426442f09724d9b2052b46a7cd82f23f3288a4a7276de","src/unix/linux_like/linux/musl/b64/aarch64/mod.rs":"b35b8fd1771b1b07b6b045cf9fd5b46ba877e467199d18635dd8aab50823daa4","src/unix/linux_like/linux/musl/b64/loongarch64/align.rs":"060aa33cc737966c691aab8511c5c5729e551458ce18d0e284e0d45f39beeb60","src/unix/linux_like/linux/musl/b64/loongarch64/mod.rs":"3d9ef92e682a1789544a2bd20cad5a5623db9d7d9f5d0a3692bb0230af034165","src/unix/linux_like/linux/musl/b64/mips64.rs":"a968ef9c54fa22293085f318c8472c1754482df92cc500568dc33bd807d71ea6","src/unix/linux_like/linux/musl/b64/mod.rs":"20ceaf90a03c24a2eb154a5dffbfc9a538348404db5b554a3d8126021ba45509","src/unix/linux_like/linux/musl/b64/powerpc64.rs":"140e579800a67315f4cb8a42b22aa8157eae34ffe626e77e421b43c53c23b34d","src/unix/linux_like/linux/musl/b64/riscv64/align.rs":"fe7e3c928d0367c37eb652686591801c3694a3558ebbbeb5c22be692265d07f2","src/unix/linux_like/linux/musl/b64/riscv64/mod.rs":"c5944526d7e19cd43e9d14d119a1d98f8780db7ecbcc79e69d7b9348e596b520","src/unix/linux_like/linux/musl/b64/s390x.rs":"b48edee0693b5c59a5e24bd239469f430258a334d9914e57c39dae572214bb21","src/unix/linux_like/linux/musl/b64/x86_64/align.rs":"77309276ad7a42cbe59ca381f23590b7a143aded05555b34a5b307b808cbca6e","src/unix/linux_like/linux/musl/b64/x86_64/mod.rs":"af3532523b56aa4417e0f3b7a8f6c9138e65db594ec63aa4ea7bf34c7b728f2a","src/unix/linux_like/linux/musl/lfs64.rs":"3e4fb381f3a0756520bde0f1692d4fa45e4ae8133bf7d7c64b0e3fdd512f235f","src/unix/linux_like/linux/musl/mod.rs":"0a9d87bcae05265ad65269c41bafb621a1086d8cc2aa7d2b9c79bfe9ab85dd4e","src/unix/linux_like/linux/no_align.rs":"29a591dbbdd66e72666b4dfcb50b9dff33c1eefc4169e898c84c4b171e49d1a5","src/unix/linux_like/linux/non_exhaustive.rs":"181a05bf94fdb911db83ce793b993bd6548a4115b306a7ef3c10f745a8fea3e9","src/unix/linux_like/linux/uclibc/align.rs":"9ed16138d8e439bd90930845a65eafa7ebd67366e6bf633936d44014f6e4c959","src/unix/linux_like/linux/uclibc/arm/align.rs":"e4a3c27fe20a57b8d612c34cb05bc70646edb5cec7251957315afa53a7b9f936","src/unix/linux_like/linux/uclibc/arm/mod.rs":"50288ff9e411ab0966da24838f2c2a5618021bc19c422a04f577b2979ef4081e","src/unix/linux_like/linux/uclibc/arm/no_align.rs":"9cd223135de75315840ff9c3fd5441ba1cb632b96b5c85a76f8316c86653db25","src/unix/linux_like/linux/uclibc/mips/mips32/align.rs":"e4a3c27fe20a57b8d612c34cb05bc70646edb5cec7251957315afa53a7b9f936","src/unix/linux_like/linux/uclibc/mips/mips32/mod.rs":"d0c4434e2bf813372c418a8f516c706cdccc9f7be2f0921b2207b0afdb66fe81","src/unix/linux_like/linux/uclibc/mips/mips32/no_align.rs":"9cd223135de75315840ff9c3fd5441ba1cb632b96b5c85a76f8316c86653db25","src/unix/linux_like/linux/uclibc/mips/mips64/align.rs":"a7bdcb18a37a2d91e64d5fad83ea3edc78f5412adb28f77ab077dbb26dd08b2d","src/unix/linux_like/linux/uclibc/mips/mips64/mod.rs":"3f38ee6a4690b9d7594be20d216467a34d955f7653c2c8ce1e6147daeb53f1e0","src/unix/linux_like/linux/uclibc/mips/mips64/no_align.rs":"4a18e3875698c85229599225ac3401a2a40da87e77b2ad4ef47c6fcd5a24ed30","src/unix/linux_like/linux/uclibc/mips/mod.rs":"a048fce1c2d9b1ad57305642e8ad05ca0f0c7e4753267a2e2d6b4fee5db3b072","src/unix/linux_like/linux/uclibc/mod.rs":"8424edc59f5670d2ab82bda9fba828af8798bffc93cdb7d8b82a3f5d76eedb77","src/unix/linux_like/linux/uclibc/no_align.rs":"3f28637046524618adaa1012e26cb7ffe94b9396e6b518cccdc69d59f274d709","src/unix/linux_like/linux/uclibc/x86_64/l4re.rs":"8485b9182b7c67f7344fab377e7cc2a72afefd9ab63837c860514abba9728d76","src/unix/linux_like/linux/uclibc/x86_64/mod.rs":"e7197f0f68ece174c8ae42b2b9115893abfcdbe44a1a6ed98fb3cbd7bfe087e8","src/unix/linux_like/linux/uclibc/x86_64/other.rs":"42c3f71e58cabba373f6a55a623f3c31b85049eb64824c09c2b082b3b2d6a0a8","src/unix/linux_like/mod.rs":"863f628cbaa864911ffebc58e9fb788b6c6a9651955fc401ac1f40f20eb62505","src/unix/mod.rs":"a3544f9e681e84caac85ab44d1194887ce65724902c45a4451755b81491e40bf","src/unix/newlib/aarch64/mod.rs":"964c096288da836b53c0c71d7f3a97048d177da220a69314c5ce93ba330d72af","src/unix/newlib/align.rs":"28aaf87fafbc6b312622719d472d8cf65f9e5467d15339df5f73e66d8502b28a","src/unix/newlib/arm/mod.rs":"cf754f8b1197489fca01e881a4b4b146e814998e4b365f116fa1a102c00e6a4e","src/unix/newlib/espidf/mod.rs":"56e0c1366c930339ef757742088f99a3617197ec86336b34afa854982cd0efff","src/unix/newlib/generic.rs":"43651894e9beb0950c8e3caa4ba7deb149c7290fe6a0f33fbccb72ee8ce54229","src/unix/newlib/horizon/mod.rs":"6c1109cbf4809d25a6d88129445f82f137183422c6ed1d3faa3a775bce12d536","src/unix/newlib/mod.rs":"7f46ed8648b45bf93b5952ef2e1c0e198cab8542c6ffe517b4091c53fcb98a80","src/unix/newlib/no_align.rs":"e0743b2179495a9514bc3a4d1781e492878c4ec834ee0085d0891dd1712e82fb","src/unix/newlib/powerpc/mod.rs":"cc9e188711b9bf614323ad6c48e0d2e1a1ecc5d3bc64961ba451f29c6c22d2d8","src/unix/newlib/rtems/mod.rs":"6f6fd7daf9c4a60647d5eb2c117340467e1df93b012a5e1ccbc2f52ba1060c63","src/unix/newlib/vita/mod.rs":"ff1caf74bb0696fe15d60dbac598db4520cd538aa0f5989713d97d008eee6ad8","src/unix/no_align.rs":"7be3d17a22ca1f55ba1058d199fd45916f9be1a9669bfd99e0dea5525af07b84","src/unix/nto/aarch64.rs":"4709c9afdc8d583be876598e7c238499ee3e8da5bd2baa614d9c7dd414851555","src/unix/nto/mod.rs":"5eb045c352114f5d744d098acaf9e47a9223f6fccd43f36b9a3ba79b29af0eee","src/unix/nto/neutrino.rs":"799bff4ab01a6424db6c5a2b76aa5679826d41495f9d13c63485bf13bc80026b","src/unix/nto/x86_64.rs":"a3e18e93c2999da1cd7a6f748a4b60c07aefb73d8ea2aafec19a84cfb040bc8e","src/unix/nuttx/mod.rs":"4aaa15700c6ba8777f270864c02844f0c7ce7fbbbd84f9e1f7f80ff8033691f8","src/unix/redox/mod.rs":"0f12d756798211ddaa5f0d075eb723ece86426f2a726dcce7e2da7d27a631bec","src/unix/solarish/compat.rs":"00f1ee3faec9da69204e42f025f6735dd13d894071a154425dcc43ecbdd06e7f","src/unix/solarish/illumos.rs":"0f31604e9b9c60caa3ac0be8ff078cbde089b63add5b908ba218840e7156b7ca","src/unix/solarish/mod.rs":"eb1f663df0898486c91d155c825a21806705d6b736b3ffa0925b290995631c5b","src/unix/solarish/solaris.rs":"41b350a89ddf01cd12a10f93640f92be53be0b0d976021cdc08da17bf3e72edf","src/unix/solarish/x86.rs":"e86e806df0caed72765040eaa2f3c883198d1aa91508540adf9b7008c77f522e","src/unix/solarish/x86_64.rs":"ec2b01f194eb8a6a27133c57681da195a949e03098f3ea1e847227a9c09ef5fc","src/unix/solarish/x86_common.rs":"ac869d9c3c95645c22460468391eb1982023c3a8e02b9e06a72e3aef3d5f1eac","src/vxworks/aarch64.rs":"98f0afdc511cd02557e506c21fed6737585490a1dce7a9d4941d08c437762b99","src/vxworks/arm.rs":"acb7968ce99fe3f4abdf39d98f8133d21a4fba435b8ef7084777cb181d788e88","src/vxworks/mod.rs":"fdba79ee380a3e25c64137d76faf78718e06237fbe38fc3233d4ba900d9e0375","src/vxworks/powerpc.rs":"acb7968ce99fe3f4abdf39d98f8133d21a4fba435b8ef7084777cb181d788e88","src/vxworks/powerpc64.rs":"98f0afdc511cd02557e506c21fed6737585490a1dce7a9d4941d08c437762b99","src/vxworks/riscv32.rs":"552f007f38317620b23889cb7c49d1d115841252439060122f52f434fbc6e5ba","src/vxworks/riscv64.rs":"018d92be3ad628a129eff9f2f5dfbc0883d8b8e5f2fa917b900a7f98ed6b514a","src/vxworks/x86.rs":"552f007f38317620b23889cb7c49d1d115841252439060122f52f434fbc6e5ba","src/vxworks/x86_64.rs":"018d92be3ad628a129eff9f2f5dfbc0883d8b8e5f2fa917b900a7f98ed6b514a","src/wasi/mod.rs":"6b7d8bbcf668c85e37ae35fecf6088ad75a81b6d84f3e339fabc2f8dae4b12c9","src/wasi/p2.rs":"535987406f8a5abddba9e3e020865a1b148e11dee683ed28ccc553cfac9c5e1b","src/windows/gnu/align.rs":"b2c13ec1b9f3b39a75c452c80c951dff9d0215e31d77e883b4502afb31794647","src/windows/gnu/mod.rs":"3c8c7edb7cdf5d0c44af936db2a94869585c69dfabeef30571b4f4e38375767a","src/windows/mod.rs":"9fdc5e1c62c441abef7bc62a7343efb2041edc24db9ac0efc0f74df55b69e249","src/windows/msvc/mod.rs":"c068271e00fca6b62bc4bf44bcf142cfc38caeded9b6c4e01d1ceef3ccf986f4","src/xous.rs":"eb0675f25ba01f73072d2b70907fb8abb1148facefe5a20756c49250f3d65fae","tests/const_fn.rs":"cb75a1f0864f926aebe79118fc34d51a0d1ade2c20a394e7774c7e545f21f1f4"},"package":"8e9489c2807c139ffd9c1794f4af0ebe86a828db53ecdc7fea2111d0fed085d1"} \ No newline at end of file diff --git a/.cargo-vendor/libc/CHANGELOG.md b/.cargo-vendor/libc/CHANGELOG.md index 01c340acaa..6cb8da6919 100644 --- a/.cargo-vendor/libc/CHANGELOG.md +++ b/.cargo-vendor/libc/CHANGELOG.md @@ -2,6 +2,58 @@ ## [Unreleased] +## [0.2.161](https://github.com/rust-lang/libc/compare/0.2.160...0.2.161) - 2024-10-17 + +### Fixed + +- OpenBSD: fix `FNM_PATHNAME` and `FNM_NOESCAPE` values + +## [0.2.160](https://github.com/rust-lang/libc/compare/0.2.159...0.2.160) - 2024-10-17 + +### Added + +- Android: add `PR_GET_NAME` and `PR_SET_NAME` +- Apple: add `F_TRANSFEREXTENTS` +- Apple: add `mach_error_string` +- Apple: add additional `pthread` APIs +- Apple: add the `LOCAL_PEERTOKEN` socket option +- BSD: add `RTF_*`, `RTA_*`, `RTAX_*`, and `RTM_*` definitions +- Emscripten: add `AT_EACCESS` +- Emscripten: add `getgrgid`, `getgrnam`, `getgrnam_r` and `getgrgid_r` +- Emscripten: add `getpwnam_r` and `getpwuid_r` +- FreeBSD: add `POLLRDHUP` +- Haiku: add `arc4random` +- Illumos: add `ptsname_r` +- Linux: add `fanotify` interfaces +- Linux: add `tcp_info` +- Linux: add additional AF_PACKET options +- Linux: make Elf constants always available +- Musl x86: add `iopl` and `ioperm` +- Musl: add `posix_spawn` chdir functions +- Musl: add `utmpx.h` constants +- NetBSD: add `sysctlnametomib`, `CLOCK_THREAD_CPUTIME_ID` and `CLOCK_PROCESS_CPUTIME_ID` +- Nuttx: initial support +- RTEMS: add `getentropy` +- RTEMS: initial support +- Solarish: add `POLLRDHUP`, `POSIX_FADV_*`, `O_RSYNC`, and `posix_fallocate` +- Unix: add `fnmatch.h` +- VxWorks: add riscv64 support +- VxWorks: update constants related to the scheduler + +### Changed + +- Redox: change `ino_t` to be `c_ulonglong` + +### Fixed + +- ESP-IDF: fix mismatched constants and structs +- FreeBSD: fix `struct stat` on FreeBSD 12+ + +### Other + +- CI: Fix CI for FreeBSD 15 +- Docs: link to `windows-sys` + ## [0.2.159](https://github.com/rust-lang/libc/compare/0.2.158...0.2.159) - 2024-09-24 ### Added diff --git a/.cargo-vendor/libc/Cargo.toml b/.cargo-vendor/libc/Cargo.toml index 7f56824385..0b37bc5476 100644 --- a/.cargo-vendor/libc/Cargo.toml +++ b/.cargo-vendor/libc/Cargo.toml @@ -11,7 +11,7 @@ [package] name = "libc" -version = "0.2.159" +version = "0.2.161" authors = ["The Rust Project Developers"] build = "build.rs" exclude = [ @@ -117,12 +117,14 @@ targets = [ "riscv32i-unknown-none-elf", "riscv32imac-unknown-none-elf", "riscv32imc-unknown-none-elf", + "riscv32-wrs-vxworks", "riscv64gc-unknown-freebsd", "riscv64gc-unknown-hermit", "riscv64gc-unknown-linux-gnu", "riscv64gc-unknown-linux-musl", "riscv64gc-unknown-none-elf", "riscv64imac-unknown-none-elf", + "riscv64-wrs-vxworks", "s390x-unknown-linux-gnu", "s390x-unknown-linux-musl", "sparc-unknown-linux-gnu", diff --git a/.cargo-vendor/libc/README.md b/.cargo-vendor/libc/README.md index 395b94ce0c..3d5b5ec583 100644 --- a/.cargo-vendor/libc/README.md +++ b/.cargo-vendor/libc/README.md @@ -11,10 +11,14 @@ This crate exports all underlying platform types, functions, and constants under the crate root, so all items are accessible as `libc::foo`. The types and values of all the exported APIs match the platform that libc is compiled for. +Windows API bindings are not included in this crate. If you are looking for WinAPI +bindings, consider using crates like [windows-sys]. + More detailed information about the design of this library can be found in its [associated RFC][rfc]. [rfc]: https://github.com/rust-lang/rfcs/blob/HEAD/text/1291-promote-libc.md +[windows-sys]: https://docs.rs/windows-sys ## v0.3 Roadmap diff --git a/.cargo-vendor/libc/build.rs b/.cargo-vendor/libc/build.rs index ce4541e629..ea55185d77 100644 --- a/.cargo-vendor/libc/build.rs +++ b/.cargo-vendor/libc/build.rs @@ -35,7 +35,12 @@ const ALLOWED_CFGS: &'static [&'static str] = &[ // Extra values to allow for check-cfg. const CHECK_CFG_EXTRA: &'static [(&'static str, &'static [&'static str])] = &[ - ("target_os", &["switch", "aix", "ohos", "hurd", "visionos"]), + ( + "target_os", + &[ + "switch", "aix", "ohos", "hurd", "rtems", "visionos", "nuttx", + ], + ), ("target_env", &["illumos", "wasi", "aix", "ohos"]), ( "target_arch", diff --git a/.cargo-vendor/libc/src/unix/bsd/apple/b32/mod.rs b/.cargo-vendor/libc/src/unix/bsd/apple/b32/mod.rs index 0f1722f975..4e45459c18 100644 --- a/.cargo-vendor/libc/src/unix/bsd/apple/b32/mod.rs +++ b/.cargo-vendor/libc/src/unix/bsd/apple/b32/mod.rs @@ -54,6 +54,11 @@ s_no_extra_traits! { __sig: c_long, __opaque: [::c_char; 36] } + + pub struct pthread_once_t { + __sig: c_long, + __opaque: [::c_char; ::__PTHREAD_ONCE_SIZE__], + } } cfg_if! { @@ -82,6 +87,29 @@ cfg_if! { self.__opaque.hash(state); } } + impl PartialEq for pthread_once_t { + fn eq(&self, other: &pthread_once_t) -> bool { + self.__sig == other.__sig + && self.__opaque + .iter() + .zip(other.__opaque.iter()) + .all(|(a,b)| a == b) + } + } + impl Eq for pthread_once_t {} + impl ::fmt::Debug for pthread_once_t { + fn fmt(&self, f: &mut ::fmt::Formatter) -> ::fmt::Result { + f.debug_struct("pthread_once_t") + .field("__sig", &self.__sig) + .finish() + } + } + impl ::hash::Hash for pthread_once_t { + fn hash(&self, state: &mut H) { + self.__sig.hash(state); + self.__opaque.hash(state); + } + } } } @@ -92,6 +120,7 @@ pub const NET_RT_MAXID: ::c_int = 10; pub const __PTHREAD_MUTEX_SIZE__: usize = 40; pub const __PTHREAD_COND_SIZE__: usize = 24; pub const __PTHREAD_CONDATTR_SIZE__: usize = 4; +pub const __PTHREAD_ONCE_SIZE__: usize = 4; pub const __PTHREAD_RWLOCK_SIZE__: usize = 124; pub const __PTHREAD_RWLOCKATTR_SIZE__: usize = 12; @@ -103,6 +132,12 @@ pub const BIOCSRTIMEOUT: ::c_ulong = 0x8008426d; pub const BIOCGRTIMEOUT: ::c_ulong = 0x4008426e; pub const BIOCSETFNR: ::c_ulong = 0x8008427e; +const _PTHREAD_ONCE_SIG_INIT: c_long = 0x30B1BCBA; +pub const PTHREAD_ONCE_INIT: ::pthread_once_t = ::pthread_once_t { + __sig: _PTHREAD_ONCE_SIG_INIT, + __opaque: [0; 4], +}; + extern "C" { pub fn exchangedata( path1: *const ::c_char, diff --git a/.cargo-vendor/libc/src/unix/bsd/apple/b64/mod.rs b/.cargo-vendor/libc/src/unix/bsd/apple/b64/mod.rs index 48d94bcd6b..2206210da5 100644 --- a/.cargo-vendor/libc/src/unix/bsd/apple/b64/mod.rs +++ b/.cargo-vendor/libc/src/unix/bsd/apple/b64/mod.rs @@ -54,6 +54,11 @@ s_no_extra_traits! { __sig: c_long, __opaque: [::c_char; 56] } + + pub struct pthread_once_t { + __sig: c_long, + __opaque: [::c_char; __PTHREAD_ONCE_SIZE__], + } } cfg_if! { @@ -82,6 +87,29 @@ cfg_if! { self.__opaque.hash(state); } } + impl PartialEq for pthread_once_t { + fn eq(&self, other: &pthread_once_t) -> bool { + self.__sig == other.__sig + && self.__opaque + .iter() + .zip(other.__opaque.iter()) + .all(|(a,b)| a == b) + } + } + impl Eq for pthread_once_t {} + impl ::fmt::Debug for pthread_once_t { + fn fmt(&self, f: &mut ::fmt::Formatter) -> ::fmt::Result { + f.debug_struct("pthread_once_t") + .field("__sig", &self.__sig) + .finish() + } + } + impl ::hash::Hash for pthread_once_t { + fn hash(&self, state: &mut H) { + self.__sig.hash(state); + self.__opaque.hash(state); + } + } } } @@ -92,6 +120,7 @@ pub const NET_RT_MAXID: ::c_int = 11; pub const __PTHREAD_MUTEX_SIZE__: usize = 56; pub const __PTHREAD_COND_SIZE__: usize = 40; pub const __PTHREAD_CONDATTR_SIZE__: usize = 8; +pub const __PTHREAD_ONCE_SIZE__: usize = 8; pub const __PTHREAD_RWLOCK_SIZE__: usize = 192; pub const __PTHREAD_RWLOCKATTR_SIZE__: usize = 16; @@ -103,6 +132,12 @@ pub const BIOCSRTIMEOUT: ::c_ulong = 0x8010426d; pub const BIOCGRTIMEOUT: ::c_ulong = 0x4010426e; pub const BIOCSETFNR: ::c_ulong = 0x8010427e; +const _PTHREAD_ONCE_SIG_INIT: c_long = 0x30B1BCBA; +pub const PTHREAD_ONCE_INIT: ::pthread_once_t = ::pthread_once_t { + __sig: _PTHREAD_ONCE_SIG_INIT, + __opaque: [0; 8], +}; + extern "C" { pub fn exchangedata( path1: *const ::c_char, diff --git a/.cargo-vendor/libc/src/unix/bsd/apple/mod.rs b/.cargo-vendor/libc/src/unix/bsd/apple/mod.rs index 92d724071a..0017403410 100644 --- a/.cargo-vendor/libc/src/unix/bsd/apple/mod.rs +++ b/.cargo-vendor/libc/src/unix/bsd/apple/mod.rs @@ -56,6 +56,7 @@ pub type thread_inspect_t = ::mach_port_t; pub type thread_act_t = ::mach_port_t; pub type thread_act_array_t = *mut ::thread_act_t; pub type policy_t = ::c_int; +pub type mach_error_t = ::kern_return_t; pub type mach_vm_address_t = u64; pub type mach_vm_offset_t = u64; pub type mach_vm_size_t = u64; @@ -3617,6 +3618,7 @@ pub const F_PUNCHHOLE: ::c_int = 99; pub const F_TRIM_ACTIVE_FILE: ::c_int = 100; pub const F_SPECULATIVE_READ: ::c_int = 101; pub const F_GETPATH_NOFIRMLINK: ::c_int = 102; +pub const F_TRANSFEREXTENTS: ::c_int = 110; pub const F_ALLOCATECONTIG: ::c_uint = 0x02; pub const F_ALLOCATEALL: ::c_uint = 0x04; @@ -3787,6 +3789,19 @@ pub const PTHREAD_PROCESS_PRIVATE: ::c_int = 2; pub const PTHREAD_PROCESS_SHARED: ::c_int = 1; pub const PTHREAD_CREATE_JOINABLE: ::c_int = 1; pub const PTHREAD_CREATE_DETACHED: ::c_int = 2; +pub const PTHREAD_INHERIT_SCHED: ::c_int = 1; +pub const PTHREAD_EXPLICIT_SCHED: ::c_int = 2; +pub const PTHREAD_CANCEL_ENABLE: ::c_int = 0x01; +pub const PTHREAD_CANCEL_DISABLE: ::c_int = 0x00; +pub const PTHREAD_CANCEL_DEFERRED: ::c_int = 0x02; +pub const PTHREAD_CANCEL_ASYNCHRONOUS: ::c_int = 0x00; +pub const PTHREAD_CANCELED: *mut ::c_void = 1 as *mut ::c_void; +pub const PTHREAD_SCOPE_SYSTEM: ::c_int = 1; +pub const PTHREAD_SCOPE_PROCESS: ::c_int = 2; +pub const PTHREAD_PRIO_NONE: ::c_int = 0; +pub const PTHREAD_PRIO_INHERIT: ::c_int = 1; +pub const PTHREAD_PRIO_PROTECT: ::c_int = 2; + #[cfg(target_arch = "aarch64")] pub const PTHREAD_STACK_MIN: ::size_t = 16384; #[cfg(not(target_arch = "aarch64"))] @@ -4181,11 +4196,18 @@ pub const TCP_CONNECTION_INFO: ::c_int = 0x106; pub const SOL_LOCAL: ::c_int = 0; +/// Retrieve peer credentials. pub const LOCAL_PEERCRED: ::c_int = 0x001; +/// Retrieve peer PID. pub const LOCAL_PEERPID: ::c_int = 0x002; +/// Retrieve effective peer PID. pub const LOCAL_PEEREPID: ::c_int = 0x003; +/// Retrieve peer UUID. pub const LOCAL_PEERUUID: ::c_int = 0x004; +/// Retrieve effective peer UUID. pub const LOCAL_PEEREUUID: ::c_int = 0x005; +/// Retrieve peer audit token. +pub const LOCAL_PEERTOKEN: ::c_int = 0x006; pub const SOL_SOCKET: ::c_int = 0xffff; @@ -4918,22 +4940,11 @@ pub const XATTR_SHOWCOMPRESSION: ::c_int = 0x0020; pub const NET_RT_IFLIST2: ::c_int = 0x0006; // net/route.h -pub const RTF_UP: ::c_int = 0x1; -pub const RTF_GATEWAY: ::c_int = 0x2; -pub const RTF_HOST: ::c_int = 0x4; -pub const RTF_REJECT: ::c_int = 0x8; -pub const RTF_DYNAMIC: ::c_int = 0x10; -pub const RTF_MODIFIED: ::c_int = 0x20; -pub const RTF_DONE: ::c_int = 0x40; pub const RTF_DELCLONE: ::c_int = 0x80; pub const RTF_CLONING: ::c_int = 0x100; pub const RTF_XRESOLVE: ::c_int = 0x200; pub const RTF_LLINFO: ::c_int = 0x400; -pub const RTF_STATIC: ::c_int = 0x800; -pub const RTF_BLACKHOLE: ::c_int = 0x1000; pub const RTF_NOIFREF: ::c_int = 0x2000; -pub const RTF_PROTO2: ::c_int = 0x4000; -pub const RTF_PROTO1: ::c_int = 0x8000; pub const RTF_PRCLONING: ::c_int = 0x10000; pub const RTF_WASCLONED: ::c_int = 0x20000; pub const RTF_PROTO3: ::c_int = 0x40000; @@ -4952,13 +4963,6 @@ pub const RTF_GLOBAL: ::c_int = 0x40000000; pub const RTM_VERSION: ::c_int = 5; // Message types -pub const RTM_ADD: ::c_int = 0x1; -pub const RTM_DELETE: ::c_int = 0x2; -pub const RTM_CHANGE: ::c_int = 0x3; -pub const RTM_GET: ::c_int = 0x4; -pub const RTM_LOSING: ::c_int = 0x5; -pub const RTM_REDIRECT: ::c_int = 0x6; -pub const RTM_MISS: ::c_int = 0x7; pub const RTM_LOCK: ::c_int = 0x8; pub const RTM_OLDADD: ::c_int = 0x9; pub const RTM_OLDDEL: ::c_int = 0xa; @@ -4982,25 +4986,6 @@ pub const RTV_SSTHRESH: ::c_int = 0x20; pub const RTV_RTT: ::c_int = 0x40; pub const RTV_RTTVAR: ::c_int = 0x80; -// Bitmask values for rtm_addrs. -pub const RTA_DST: ::c_int = 0x1; -pub const RTA_GATEWAY: ::c_int = 0x2; -pub const RTA_NETMASK: ::c_int = 0x4; -pub const RTA_GENMASK: ::c_int = 0x8; -pub const RTA_IFP: ::c_int = 0x10; -pub const RTA_IFA: ::c_int = 0x20; -pub const RTA_AUTHOR: ::c_int = 0x40; -pub const RTA_BRD: ::c_int = 0x80; - -// Index offsets for sockaddr array for alternate internal encoding. -pub const RTAX_DST: ::c_int = 0; -pub const RTAX_GATEWAY: ::c_int = 1; -pub const RTAX_NETMASK: ::c_int = 2; -pub const RTAX_GENMASK: ::c_int = 3; -pub const RTAX_IFP: ::c_int = 4; -pub const RTAX_IFA: ::c_int = 5; -pub const RTAX_AUTHOR: ::c_int = 6; -pub const RTAX_BRD: ::c_int = 7; pub const RTAX_MAX: ::c_int = 8; pub const KERN_PROCARGS2: ::c_int = 49; @@ -5757,6 +5742,40 @@ extern "C" { pub fn mach_timebase_info(info: *mut ::mach_timebase_info) -> ::c_int; pub fn mach_host_self() -> mach_port_t; pub fn mach_thread_self() -> mach_port_t; + pub fn pthread_once( + once_control: *mut ::pthread_once_t, + init_routine: ::Option, + ) -> ::c_int; + pub fn pthread_attr_getinheritsched( + attr: *const ::pthread_attr_t, + inheritsched: *mut ::c_int, + ) -> ::c_int; + pub fn pthread_attr_getschedpolicy( + attr: *const ::pthread_attr_t, + policy: *mut ::c_int, + ) -> ::c_int; + pub fn pthread_attr_getscope( + attr: *const ::pthread_attr_t, + contentionscope: *mut ::c_int, + ) -> ::c_int; + pub fn pthread_attr_getstackaddr( + attr: *const ::pthread_attr_t, + stackaddr: *mut *mut ::c_void, + ) -> ::c_int; + pub fn pthread_attr_getdetachstate( + attr: *const ::pthread_attr_t, + detachstate: *mut ::c_int, + ) -> ::c_int; + pub fn pthread_attr_setinheritsched( + attr: *mut ::pthread_attr_t, + inheritsched: ::c_int, + ) -> ::c_int; + pub fn pthread_attr_setschedpolicy(attr: *mut ::pthread_attr_t, policy: ::c_int) -> ::c_int; + pub fn pthread_attr_setscope(attr: *mut ::pthread_attr_t, contentionscope: ::c_int) -> ::c_int; + pub fn pthread_attr_setstackaddr( + attr: *mut ::pthread_attr_t, + stackaddr: *mut ::c_void, + ) -> ::c_int; pub fn pthread_setname_np(name: *const ::c_char) -> ::c_int; pub fn pthread_getname_np(thread: ::pthread_t, name: *mut ::c_char, len: ::size_t) -> ::c_int; pub fn pthread_mach_thread_np(thread: ::pthread_t) -> ::mach_port_t; @@ -6276,6 +6295,8 @@ extern "C" { pub fn copyfile_state_get(s: copyfile_state_t, flags: u32, dst: *mut ::c_void) -> ::c_int; pub fn copyfile_state_set(s: copyfile_state_t, flags: u32, src: *const ::c_void) -> ::c_int; + pub fn mach_error_string(error_value: ::mach_error_t) -> *mut ::c_char; + // Added in macOS 10.13 // ISO/IEC 9899:2011 ("ISO C11") K.3.7.4.1 pub fn memset_s(s: *mut ::c_void, smax: ::size_t, c: ::c_int, n: ::size_t) -> ::c_int; diff --git a/.cargo-vendor/libc/src/unix/bsd/freebsdlike/dragonfly/mod.rs b/.cargo-vendor/libc/src/unix/bsd/freebsdlike/dragonfly/mod.rs index 6ade7949af..9b3b872d03 100644 --- a/.cargo-vendor/libc/src/unix/bsd/freebsdlike/dragonfly/mod.rs +++ b/.cargo-vendor/libc/src/unix/bsd/freebsdlike/dragonfly/mod.rs @@ -1522,6 +1522,19 @@ pub const NGROUPS: usize = 16; pub const RB_PAUSE: ::c_int = 0x40000; pub const RB_VIDEO: ::c_int = 0x20000000; +// net/route.h +pub const RTF_CLONING: ::c_int = 0x100; +pub const RTF_PRCLONING: ::c_int = 0x10000; +pub const RTF_WASCLONED: ::c_int = 0x20000; +pub const RTF_MPLSOPS: ::c_int = 0x1000000; + +pub const RTM_VERSION: ::c_int = 7; + +pub const RTAX_MPLS1: ::c_int = 8; +pub const RTAX_MPLS2: ::c_int = 9; +pub const RTAX_MPLS3: ::c_int = 10; +pub const RTAX_MAX: ::c_int = 11; + const_fn! { {const} fn _CMSG_ALIGN(n: usize) -> usize { (n + (::mem::size_of::<::c_long>() - 1)) & !(::mem::size_of::<::c_long>() - 1) diff --git a/.cargo-vendor/libc/src/unix/bsd/freebsdlike/freebsd/arm.rs b/.cargo-vendor/libc/src/unix/bsd/freebsdlike/freebsd/arm.rs index 300b3dd45c..8ff500c659 100644 --- a/.cargo-vendor/libc/src/unix/bsd/freebsdlike/freebsd/arm.rs +++ b/.cargo-vendor/libc/src/unix/bsd/freebsdlike/freebsd/arm.rs @@ -6,36 +6,6 @@ pub type time_t = i64; pub type suseconds_t = i32; pub type register_t = i32; -s! { - pub struct stat { - pub st_dev: ::dev_t, - pub st_ino: ::ino_t, - pub st_mode: ::mode_t, - pub st_nlink: ::nlink_t, - pub st_uid: ::uid_t, - pub st_gid: ::gid_t, - pub st_rdev: ::dev_t, - pub st_atime: ::time_t, - pub st_atime_nsec: ::c_long, - pub st_atime_pad: ::c_long, - pub st_mtime: ::time_t, - pub st_mtime_nsec: ::c_long, - pub st_mtime_pad: ::c_long, - pub st_ctime: ::time_t, - pub st_ctime_nsec: ::c_long, - pub st_ctime_pad: ::c_long, - pub st_size: ::off_t, - pub st_blocks: ::blkcnt_t, - pub st_blksize: ::blksize_t, - pub st_flags: ::fflags_t, - pub st_gen: u32, - pub st_lspare: i32, - pub st_birthtime: ::time_t, - pub st_birthtime_nsec: ::c_long, - pub st_birthtime_pad: ::c_long, - } -} - // should be pub(crate), but that requires Rust 1.18.0 cfg_if! { if #[cfg(libc_const_size_of)] { diff --git a/.cargo-vendor/libc/src/unix/bsd/freebsdlike/freebsd/freebsd12/b64.rs b/.cargo-vendor/libc/src/unix/bsd/freebsdlike/freebsd/freebsd11/b32.rs similarity index 89% rename from .cargo-vendor/libc/src/unix/bsd/freebsdlike/freebsd/freebsd12/b64.rs rename to .cargo-vendor/libc/src/unix/bsd/freebsdlike/freebsd/freebsd11/b32.rs index 80c6fa1684..5c1156581f 100644 --- a/.cargo-vendor/libc/src/unix/bsd/freebsdlike/freebsd/freebsd12/b64.rs +++ b/.cargo-vendor/libc/src/unix/bsd/freebsdlike/freebsd/freebsd11/b32.rs @@ -3,12 +3,10 @@ pub struct stat { pub st_dev: ::dev_t, pub st_ino: ::ino_t, - pub st_nlink: ::nlink_t, pub st_mode: ::mode_t, - st_padding0: i16, + pub st_nlink: ::nlink_t, pub st_uid: ::uid_t, pub st_gid: ::gid_t, - st_padding1: i32, pub st_rdev: ::dev_t, pub st_atime: ::time_t, pub st_atime_nsec: ::c_long, @@ -16,14 +14,15 @@ pub struct stat { pub st_mtime_nsec: ::c_long, pub st_ctime: ::time_t, pub st_ctime_nsec: ::c_long, - pub st_birthtime: ::time_t, - pub st_birthtime_nsec: ::c_long, pub st_size: ::off_t, pub st_blocks: ::blkcnt_t, pub st_blksize: ::blksize_t, pub st_flags: ::fflags_t, - pub st_gen: u64, - pub st_spare: [u64; 10], + pub st_gen: u32, + pub st_lspare: i32, + pub st_birthtime: ::time_t, + pub st_birthtime_nsec: ::c_long, + __unused: [u8; 8], } impl ::Copy for ::stat {} diff --git a/.cargo-vendor/libc/src/unix/bsd/freebsdlike/freebsd/freebsd11/mod.rs b/.cargo-vendor/libc/src/unix/bsd/freebsdlike/freebsd/freebsd11/mod.rs index de34069eab..e416ebf745 100644 --- a/.cargo-vendor/libc/src/unix/bsd/freebsdlike/freebsd/freebsd11/mod.rs +++ b/.cargo-vendor/libc/src/unix/bsd/freebsdlike/freebsd/freebsd11/mod.rs @@ -4,7 +4,7 @@ pub type nlink_t = u16; // Type of `dev_t` changed from `u32` to `u64` in FreeBSD 12: pub type dev_t = u32; -// Type of `ino_t` changed from `unsigned int` to `unsigned long` in FreeBSD 12: +// Type of `ino_t` changed from `__uint32_t` to `__uint64_t` in FreeBSD 12: pub type ino_t = u32; s! { @@ -479,10 +479,11 @@ extern "C" { } cfg_if! { - if #[cfg(any(target_arch = "x86_64", - target_arch = "aarch64", - target_arch = "riscv64"))] { + if #[cfg(target_pointer_width = "64")] { mod b64; pub use self::b64::*; + } else { + mod b32; + pub use self::b32::*; } } diff --git a/.cargo-vendor/libc/src/unix/bsd/freebsdlike/freebsd/freebsd12/mod.rs b/.cargo-vendor/libc/src/unix/bsd/freebsdlike/freebsd/freebsd12/mod.rs index 10fcaa03a4..c4431a6458 100644 --- a/.cargo-vendor/libc/src/unix/bsd/freebsdlike/freebsd/freebsd12/mod.rs +++ b/.cargo-vendor/libc/src/unix/bsd/freebsdlike/freebsd/freebsd12/mod.rs @@ -2,7 +2,7 @@ pub type nlink_t = u64; pub type dev_t = u64; -pub type ino_t = ::c_ulong; +pub type ino_t = u64; pub type shmatt_t = ::c_uint; s! { @@ -218,6 +218,40 @@ s! { /// kthread flag. pub ki_tdflags: ::c_long, } + + pub struct stat { + pub st_dev: ::dev_t, + pub st_ino: ::ino_t, + pub st_nlink: ::nlink_t, + pub st_mode: ::mode_t, + st_padding0: i16, + pub st_uid: ::uid_t, + pub st_gid: ::gid_t, + st_padding1: i32, + pub st_rdev: ::dev_t, + #[cfg(target_arch = "x86")] + st_atim_ext: i32, + pub st_atime: ::time_t, + pub st_atime_nsec: ::c_long, + #[cfg(target_arch = "x86")] + st_mtim_ext: i32, + pub st_mtime: ::time_t, + pub st_mtime_nsec: ::c_long, + #[cfg(target_arch = "x86")] + st_ctim_ext: i32, + pub st_ctime: ::time_t, + pub st_ctime_nsec: ::c_long, + #[cfg(target_arch = "x86")] + st_btim_ext: i32, + pub st_birthtime: ::time_t, + pub st_birthtime_nsec: ::c_long, + pub st_size: ::off_t, + pub st_blocks: ::blkcnt_t, + pub st_blksize: ::blksize_t, + pub st_flags: ::fflags_t, + pub st_gen: u64, + pub st_spare: [u64; 10], + } } s_no_extra_traits! { @@ -488,15 +522,6 @@ extern "C" { pub fn basename(path: *mut ::c_char) -> *mut ::c_char; } -cfg_if! { - if #[cfg(any(target_arch = "x86_64", - target_arch = "aarch64", - target_arch = "riscv64"))] { - mod b64; - pub use self::b64::*; - } -} - cfg_if! { if #[cfg(target_arch = "x86_64")] { mod x86_64; diff --git a/.cargo-vendor/libc/src/unix/bsd/freebsdlike/freebsd/freebsd13/b64.rs b/.cargo-vendor/libc/src/unix/bsd/freebsdlike/freebsd/freebsd13/b64.rs deleted file mode 100644 index 80c6fa1684..0000000000 --- a/.cargo-vendor/libc/src/unix/bsd/freebsdlike/freebsd/freebsd13/b64.rs +++ /dev/null @@ -1,34 +0,0 @@ -#[repr(C)] -#[cfg_attr(feature = "extra_traits", derive(Debug, Eq, Hash, PartialEq))] -pub struct stat { - pub st_dev: ::dev_t, - pub st_ino: ::ino_t, - pub st_nlink: ::nlink_t, - pub st_mode: ::mode_t, - st_padding0: i16, - pub st_uid: ::uid_t, - pub st_gid: ::gid_t, - st_padding1: i32, - pub st_rdev: ::dev_t, - pub st_atime: ::time_t, - pub st_atime_nsec: ::c_long, - pub st_mtime: ::time_t, - pub st_mtime_nsec: ::c_long, - pub st_ctime: ::time_t, - pub st_ctime_nsec: ::c_long, - pub st_birthtime: ::time_t, - pub st_birthtime_nsec: ::c_long, - pub st_size: ::off_t, - pub st_blocks: ::blkcnt_t, - pub st_blksize: ::blksize_t, - pub st_flags: ::fflags_t, - pub st_gen: u64, - pub st_spare: [u64; 10], -} - -impl ::Copy for ::stat {} -impl ::Clone for ::stat { - fn clone(&self) -> ::stat { - *self - } -} diff --git a/.cargo-vendor/libc/src/unix/bsd/freebsdlike/freebsd/freebsd13/mod.rs b/.cargo-vendor/libc/src/unix/bsd/freebsdlike/freebsd/freebsd13/mod.rs index ec6bce2a03..118404e8b0 100644 --- a/.cargo-vendor/libc/src/unix/bsd/freebsdlike/freebsd/freebsd13/mod.rs +++ b/.cargo-vendor/libc/src/unix/bsd/freebsdlike/freebsd/freebsd13/mod.rs @@ -2,7 +2,7 @@ pub type nlink_t = u64; pub type dev_t = u64; -pub type ino_t = ::c_ulong; +pub type ino_t = u64; pub type shmatt_t = ::c_uint; pub type kpaddr_t = u64; pub type kssize_t = i64; @@ -228,6 +228,40 @@ s! { /// kthread flag. pub ki_tdflags: ::c_long, } + + pub struct stat { + pub st_dev: ::dev_t, + pub st_ino: ::ino_t, + pub st_nlink: ::nlink_t, + pub st_mode: ::mode_t, + st_padding0: i16, + pub st_uid: ::uid_t, + pub st_gid: ::gid_t, + st_padding1: i32, + pub st_rdev: ::dev_t, + #[cfg(target_arch = "x86")] + st_atim_ext: i32, + pub st_atime: ::time_t, + pub st_atime_nsec: ::c_long, + #[cfg(target_arch = "x86")] + st_mtim_ext: i32, + pub st_mtime: ::time_t, + pub st_mtime_nsec: ::c_long, + #[cfg(target_arch = "x86")] + st_ctim_ext: i32, + pub st_ctime: ::time_t, + pub st_ctime_nsec: ::c_long, + #[cfg(target_arch = "x86")] + st_btim_ext: i32, + pub st_birthtime: ::time_t, + pub st_birthtime_nsec: ::c_long, + pub st_size: ::off_t, + pub st_blocks: ::blkcnt_t, + pub st_blksize: ::blksize_t, + pub st_flags: ::fflags_t, + pub st_gen: u64, + pub st_spare: [u64; 10], + } } s_no_extra_traits! { @@ -529,15 +563,6 @@ extern "C" { pub fn kvm_kerndisp(kd: *mut ::kvm_t) -> ::kssize_t; } -cfg_if! { - if #[cfg(any(target_arch = "x86_64", - target_arch = "aarch64", - target_arch = "riscv64"))] { - mod b64; - pub use self::b64::*; - } -} - cfg_if! { if #[cfg(target_arch = "x86_64")] { mod x86_64; diff --git a/.cargo-vendor/libc/src/unix/bsd/freebsdlike/freebsd/freebsd14/b64.rs b/.cargo-vendor/libc/src/unix/bsd/freebsdlike/freebsd/freebsd14/b64.rs deleted file mode 100644 index 80c6fa1684..0000000000 --- a/.cargo-vendor/libc/src/unix/bsd/freebsdlike/freebsd/freebsd14/b64.rs +++ /dev/null @@ -1,34 +0,0 @@ -#[repr(C)] -#[cfg_attr(feature = "extra_traits", derive(Debug, Eq, Hash, PartialEq))] -pub struct stat { - pub st_dev: ::dev_t, - pub st_ino: ::ino_t, - pub st_nlink: ::nlink_t, - pub st_mode: ::mode_t, - st_padding0: i16, - pub st_uid: ::uid_t, - pub st_gid: ::gid_t, - st_padding1: i32, - pub st_rdev: ::dev_t, - pub st_atime: ::time_t, - pub st_atime_nsec: ::c_long, - pub st_mtime: ::time_t, - pub st_mtime_nsec: ::c_long, - pub st_ctime: ::time_t, - pub st_ctime_nsec: ::c_long, - pub st_birthtime: ::time_t, - pub st_birthtime_nsec: ::c_long, - pub st_size: ::off_t, - pub st_blocks: ::blkcnt_t, - pub st_blksize: ::blksize_t, - pub st_flags: ::fflags_t, - pub st_gen: u64, - pub st_spare: [u64; 10], -} - -impl ::Copy for ::stat {} -impl ::Clone for ::stat { - fn clone(&self) -> ::stat { - *self - } -} diff --git a/.cargo-vendor/libc/src/unix/bsd/freebsdlike/freebsd/freebsd14/mod.rs b/.cargo-vendor/libc/src/unix/bsd/freebsdlike/freebsd/freebsd14/mod.rs index 160a4baae4..e624dd7201 100644 --- a/.cargo-vendor/libc/src/unix/bsd/freebsdlike/freebsd/freebsd14/mod.rs +++ b/.cargo-vendor/libc/src/unix/bsd/freebsdlike/freebsd/freebsd14/mod.rs @@ -2,7 +2,7 @@ pub type nlink_t = u64; pub type dev_t = u64; -pub type ino_t = ::c_ulong; +pub type ino_t = u64; pub type shmatt_t = ::c_uint; pub type kpaddr_t = u64; pub type kssize_t = i64; @@ -228,6 +228,40 @@ s! { /// kthread flag. pub ki_tdflags: ::c_long, } + + pub struct stat { + pub st_dev: ::dev_t, + pub st_ino: ::ino_t, + pub st_nlink: ::nlink_t, + pub st_mode: ::mode_t, + st_padding0: i16, + pub st_uid: ::uid_t, + pub st_gid: ::gid_t, + st_padding1: i32, + pub st_rdev: ::dev_t, + #[cfg(target_arch = "x86")] + st_atim_ext: i32, + pub st_atime: ::time_t, + pub st_atime_nsec: ::c_long, + #[cfg(target_arch = "x86")] + st_mtim_ext: i32, + pub st_mtime: ::time_t, + pub st_mtime_nsec: ::c_long, + #[cfg(target_arch = "x86")] + st_ctim_ext: i32, + pub st_ctime: ::time_t, + pub st_ctime_nsec: ::c_long, + #[cfg(target_arch = "x86")] + st_btim_ext: i32, + pub st_birthtime: ::time_t, + pub st_birthtime_nsec: ::c_long, + pub st_size: ::off_t, + pub st_blocks: ::blkcnt_t, + pub st_blksize: ::blksize_t, + pub st_flags: ::fflags_t, + pub st_gen: u64, + pub st_spare: [u64; 10], + } } s_no_extra_traits! { @@ -529,15 +563,6 @@ extern "C" { pub fn kvm_kerndisp(kd: *mut ::kvm_t) -> ::kssize_t; } -cfg_if! { - if #[cfg(any(target_arch = "x86_64", - target_arch = "aarch64", - target_arch = "riscv64"))] { - mod b64; - pub use self::b64::*; - } -} - cfg_if! { if #[cfg(target_arch = "x86_64")] { mod x86_64; diff --git a/.cargo-vendor/libc/src/unix/bsd/freebsdlike/freebsd/freebsd15/b64.rs b/.cargo-vendor/libc/src/unix/bsd/freebsdlike/freebsd/freebsd15/b64.rs deleted file mode 100644 index 80c6fa1684..0000000000 --- a/.cargo-vendor/libc/src/unix/bsd/freebsdlike/freebsd/freebsd15/b64.rs +++ /dev/null @@ -1,34 +0,0 @@ -#[repr(C)] -#[cfg_attr(feature = "extra_traits", derive(Debug, Eq, Hash, PartialEq))] -pub struct stat { - pub st_dev: ::dev_t, - pub st_ino: ::ino_t, - pub st_nlink: ::nlink_t, - pub st_mode: ::mode_t, - st_padding0: i16, - pub st_uid: ::uid_t, - pub st_gid: ::gid_t, - st_padding1: i32, - pub st_rdev: ::dev_t, - pub st_atime: ::time_t, - pub st_atime_nsec: ::c_long, - pub st_mtime: ::time_t, - pub st_mtime_nsec: ::c_long, - pub st_ctime: ::time_t, - pub st_ctime_nsec: ::c_long, - pub st_birthtime: ::time_t, - pub st_birthtime_nsec: ::c_long, - pub st_size: ::off_t, - pub st_blocks: ::blkcnt_t, - pub st_blksize: ::blksize_t, - pub st_flags: ::fflags_t, - pub st_gen: u64, - pub st_spare: [u64; 10], -} - -impl ::Copy for ::stat {} -impl ::Clone for ::stat { - fn clone(&self) -> ::stat { - *self - } -} diff --git a/.cargo-vendor/libc/src/unix/bsd/freebsdlike/freebsd/freebsd15/mod.rs b/.cargo-vendor/libc/src/unix/bsd/freebsdlike/freebsd/freebsd15/mod.rs index d73215a68e..a299af7d5d 100644 --- a/.cargo-vendor/libc/src/unix/bsd/freebsdlike/freebsd/freebsd15/mod.rs +++ b/.cargo-vendor/libc/src/unix/bsd/freebsdlike/freebsd/freebsd15/mod.rs @@ -2,7 +2,7 @@ pub type nlink_t = u64; pub type dev_t = u64; -pub type ino_t = ::c_ulong; +pub type ino_t = u64; pub type shmatt_t = ::c_uint; pub type kpaddr_t = u64; pub type kssize_t = i64; @@ -228,6 +228,40 @@ s! { /// kthread flag. pub ki_tdflags: ::c_long, } + + pub struct stat { + pub st_dev: ::dev_t, + pub st_ino: ::ino_t, + pub st_nlink: ::nlink_t, + pub st_mode: ::mode_t, + st_padding0: i16, + pub st_uid: ::uid_t, + pub st_gid: ::gid_t, + st_padding1: i32, + pub st_rdev: ::dev_t, + #[cfg(target_arch = "x86")] + st_atim_ext: i32, + pub st_atime: ::time_t, + pub st_atime_nsec: ::c_long, + #[cfg(target_arch = "x86")] + st_mtim_ext: i32, + pub st_mtime: ::time_t, + pub st_mtime_nsec: ::c_long, + #[cfg(target_arch = "x86")] + st_ctim_ext: i32, + pub st_ctime: ::time_t, + pub st_ctime_nsec: ::c_long, + #[cfg(target_arch = "x86")] + st_btim_ext: i32, + pub st_birthtime: ::time_t, + pub st_birthtime_nsec: ::c_long, + pub st_size: ::off_t, + pub st_blocks: ::blkcnt_t, + pub st_blksize: ::blksize_t, + pub st_flags: ::fflags_t, + pub st_gen: u64, + pub st_spare: [u64; 10], + } } s_no_extra_traits! { @@ -529,15 +563,6 @@ extern "C" { pub fn kvm_kerndisp(kd: *mut ::kvm_t) -> ::kssize_t; } -cfg_if! { - if #[cfg(any(target_arch = "x86_64", - target_arch = "aarch64", - target_arch = "riscv64"))] { - mod b64; - pub use self::b64::*; - } -} - cfg_if! { if #[cfg(target_arch = "x86_64")] { mod x86_64; diff --git a/.cargo-vendor/libc/src/unix/bsd/freebsdlike/freebsd/mod.rs b/.cargo-vendor/libc/src/unix/bsd/freebsdlike/freebsd/mod.rs index 47b4bd36e6..a15987df10 100644 --- a/.cargo-vendor/libc/src/unix/bsd/freebsdlike/freebsd/mod.rs +++ b/.cargo-vendor/libc/src/unix/bsd/freebsdlike/freebsd/mod.rs @@ -2894,6 +2894,7 @@ pub const POSIX_FADV_DONTNEED: ::c_int = 4; pub const POSIX_FADV_NOREUSE: ::c_int = 5; pub const POLLINIGNEOF: ::c_short = 0x2000; +pub const POLLRDHUP: ::c_short = 0x4000; pub const EVFILT_READ: i16 = -1; pub const EVFILT_WRITE: i16 = -2; @@ -3843,6 +3844,7 @@ pub const TCP_INFO: ::c_int = 32; pub const TCP_CONGESTION: ::c_int = 64; pub const TCP_CCALGOOPT: ::c_int = 65; pub const TCP_MAXUNACKTIME: ::c_int = 68; +#[deprecated(since = "0.2.160", note = "Removed in FreeBSD 15")] pub const TCP_MAXPEAKRATE: ::c_int = 69; pub const TCP_IDLE_REDUCE: ::c_int = 70; pub const TCP_REMOTE_UDP_ENCAPS_PORT: ::c_int = 71; @@ -4741,6 +4743,14 @@ pub const CPU_WHICH_CPUSET: ::c_int = 3; pub const CPU_WHICH_IRQ: ::c_int = 4; pub const CPU_WHICH_JAIL: ::c_int = 5; +// net/route.h +pub const RTF_LLDATA: ::c_int = 0x400; +pub const RTF_FIXEDMTU: ::c_int = 0x80000; + +pub const RTM_VERSION: ::c_int = 5; + +pub const RTAX_MAX: ::c_int = 8; + // sys/signal.h pub const SIGTHR: ::c_int = 32; pub const SIGLWP: ::c_int = SIGTHR; diff --git a/.cargo-vendor/libc/src/unix/bsd/freebsdlike/freebsd/powerpc.rs b/.cargo-vendor/libc/src/unix/bsd/freebsdlike/freebsd/powerpc.rs index a0120c337e..f84062ba34 100644 --- a/.cargo-vendor/libc/src/unix/bsd/freebsdlike/freebsd/powerpc.rs +++ b/.cargo-vendor/libc/src/unix/bsd/freebsdlike/freebsd/powerpc.rs @@ -6,32 +6,6 @@ pub type time_t = i64; pub type suseconds_t = i32; pub type register_t = i32; -s! { - pub struct stat { - pub st_dev: ::dev_t, - pub st_ino: ::ino_t, - pub st_mode: ::mode_t, - pub st_nlink: ::nlink_t, - pub st_uid: ::uid_t, - pub st_gid: ::gid_t, - pub st_rdev: ::dev_t, - pub st_atime: ::time_t, - pub st_atime_nsec: ::c_long, - pub st_mtime: ::time_t, - pub st_mtime_nsec: ::c_long, - pub st_ctime: ::time_t, - pub st_ctime_nsec: ::c_long, - pub st_size: ::off_t, - pub st_blocks: ::blkcnt_t, - pub st_blksize: ::blksize_t, - pub st_flags: ::fflags_t, - pub st_gen: u32, - pub st_lspare: i32, - pub st_birthtime: ::time_t, - pub st_birthtime_nsec: ::c_long, - } -} - // should be pub(crate), but that requires Rust 1.18.0 cfg_if! { if #[cfg(libc_const_size_of)] { diff --git a/.cargo-vendor/libc/src/unix/bsd/freebsdlike/freebsd/powerpc64.rs b/.cargo-vendor/libc/src/unix/bsd/freebsdlike/freebsd/powerpc64.rs index 7f5b975226..69cf4c5fc8 100644 --- a/.cargo-vendor/libc/src/unix/bsd/freebsdlike/freebsd/powerpc64.rs +++ b/.cargo-vendor/libc/src/unix/bsd/freebsdlike/freebsd/powerpc64.rs @@ -6,32 +6,6 @@ pub type time_t = i64; pub type suseconds_t = i64; pub type register_t = i64; -s! { - pub struct stat { - pub st_dev: ::dev_t, - pub st_ino: ::ino_t, - pub st_mode: ::mode_t, - pub st_nlink: ::nlink_t, - pub st_uid: ::uid_t, - pub st_gid: ::gid_t, - pub st_rdev: ::dev_t, - pub st_atime: ::time_t, - pub st_atime_nsec: ::c_long, - pub st_mtime: ::time_t, - pub st_mtime_nsec: ::c_long, - pub st_ctime: ::time_t, - pub st_ctime_nsec: ::c_long, - pub st_size: ::off_t, - pub st_blocks: ::blkcnt_t, - pub st_blksize: ::blksize_t, - pub st_flags: ::fflags_t, - pub st_gen: u32, - pub st_lspare: i32, - pub st_birthtime: ::time_t, - pub st_birthtime_nsec: ::c_long, - } -} - // should be pub(crate), but that requires Rust 1.18.0 cfg_if! { if #[cfg(libc_const_size_of)] { diff --git a/.cargo-vendor/libc/src/unix/bsd/freebsdlike/freebsd/x86.rs b/.cargo-vendor/libc/src/unix/bsd/freebsdlike/freebsd/x86.rs index c3c576ed66..31a660e7d0 100644 --- a/.cargo-vendor/libc/src/unix/bsd/freebsdlike/freebsd/x86.rs +++ b/.cargo-vendor/libc/src/unix/bsd/freebsdlike/freebsd/x86.rs @@ -42,31 +42,6 @@ s_no_extra_traits! { } s! { - pub struct stat { - pub st_dev: ::dev_t, - pub st_ino: ::ino_t, - pub st_mode: ::mode_t, - pub st_nlink: ::nlink_t, - pub st_uid: ::uid_t, - pub st_gid: ::gid_t, - pub st_rdev: ::dev_t, - pub st_atime: ::time_t, - pub st_atime_nsec: ::c_long, - pub st_mtime: ::time_t, - pub st_mtime_nsec: ::c_long, - pub st_ctime: ::time_t, - pub st_ctime_nsec: ::c_long, - pub st_size: ::off_t, - pub st_blocks: ::blkcnt_t, - pub st_blksize: ::blksize_t, - pub st_flags: ::fflags_t, - pub st_gen: u32, - pub st_lspare: i32, - pub st_birthtime: ::time_t, - pub st_birthtime_nsec: ::c_long, - __unused: [u8; 8], - } - pub struct ucontext_t { pub uc_sigmask: ::sigset_t, pub uc_mcontext: ::mcontext_t, diff --git a/.cargo-vendor/libc/src/unix/bsd/freebsdlike/mod.rs b/.cargo-vendor/libc/src/unix/bsd/freebsdlike/mod.rs index e0a0fbd014..86ade55353 100644 --- a/.cargo-vendor/libc/src/unix/bsd/freebsdlike/mod.rs +++ b/.cargo-vendor/libc/src/unix/bsd/freebsdlike/mod.rs @@ -1017,6 +1017,25 @@ pub const SO_TYPE: ::c_int = 0x1008; pub const LOCAL_PEERCRED: ::c_int = 1; +// net/route.h +pub const RTF_XRESOLVE: ::c_int = 0x200; +pub const RTF_LLINFO: ::c_int = 0x400; +pub const RTF_PROTO3: ::c_int = 0x40000; +pub const RTF_PINNED: ::c_int = 0x100000; +pub const RTF_LOCAL: ::c_int = 0x200000; +pub const RTF_BROADCAST: ::c_int = 0x400000; +pub const RTF_MULTICAST: ::c_int = 0x800000; + +pub const RTM_LOCK: ::c_int = 0x8; +pub const RTM_RESOLVE: ::c_int = 0xb; +pub const RTM_NEWADDR: ::c_int = 0xc; +pub const RTM_DELADDR: ::c_int = 0xd; +pub const RTM_IFINFO: ::c_int = 0xe; +pub const RTM_NEWMADDR: ::c_int = 0xf; +pub const RTM_DELMADDR: ::c_int = 0x10; +pub const RTM_IFANNOUNCE: ::c_int = 0x11; +pub const RTM_IEEE80211: ::c_int = 0x12; + pub const SHUT_RD: ::c_int = 0; pub const SHUT_WR: ::c_int = 1; pub const SHUT_RDWR: ::c_int = 2; diff --git a/.cargo-vendor/libc/src/unix/bsd/mod.rs b/.cargo-vendor/libc/src/unix/bsd/mod.rs index 7acda9076d..b49a83862f 100644 --- a/.cargo-vendor/libc/src/unix/bsd/mod.rs +++ b/.cargo-vendor/libc/src/unix/bsd/mod.rs @@ -543,6 +543,49 @@ pub const ITIMER_REAL: ::c_int = 0; pub const ITIMER_VIRTUAL: ::c_int = 1; pub const ITIMER_PROF: ::c_int = 2; +// net/route.h + +pub const RTF_UP: ::c_int = 0x1; +pub const RTF_GATEWAY: ::c_int = 0x2; +pub const RTF_HOST: ::c_int = 0x4; +pub const RTF_REJECT: ::c_int = 0x8; +pub const RTF_DYNAMIC: ::c_int = 0x10; +pub const RTF_MODIFIED: ::c_int = 0x20; +pub const RTF_DONE: ::c_int = 0x40; +pub const RTF_STATIC: ::c_int = 0x800; +pub const RTF_BLACKHOLE: ::c_int = 0x1000; +pub const RTF_PROTO2: ::c_int = 0x4000; +pub const RTF_PROTO1: ::c_int = 0x8000; + +// Message types +pub const RTM_ADD: ::c_int = 0x1; +pub const RTM_DELETE: ::c_int = 0x2; +pub const RTM_CHANGE: ::c_int = 0x3; +pub const RTM_GET: ::c_int = 0x4; +pub const RTM_LOSING: ::c_int = 0x5; +pub const RTM_REDIRECT: ::c_int = 0x6; +pub const RTM_MISS: ::c_int = 0x7; + +// Bitmask values for rtm_addrs. +pub const RTA_DST: ::c_int = 0x1; +pub const RTA_GATEWAY: ::c_int = 0x2; +pub const RTA_NETMASK: ::c_int = 0x4; +pub const RTA_GENMASK: ::c_int = 0x8; +pub const RTA_IFP: ::c_int = 0x10; +pub const RTA_IFA: ::c_int = 0x20; +pub const RTA_AUTHOR: ::c_int = 0x40; +pub const RTA_BRD: ::c_int = 0x80; + +// Index offsets for sockaddr array for alternate internal encoding. +pub const RTAX_DST: ::c_int = 0; +pub const RTAX_GATEWAY: ::c_int = 1; +pub const RTAX_NETMASK: ::c_int = 2; +pub const RTAX_GENMASK: ::c_int = 3; +pub const RTAX_IFP: ::c_int = 4; +pub const RTAX_IFA: ::c_int = 5; +pub const RTAX_AUTHOR: ::c_int = 6; +pub const RTAX_BRD: ::c_int = 7; + f! { pub fn CMSG_FIRSTHDR(mhdr: *const ::msghdr) -> *mut ::cmsghdr { if (*mhdr).msg_controllen as usize >= ::mem::size_of::<::cmsghdr>() { diff --git a/.cargo-vendor/libc/src/unix/bsd/netbsdlike/netbsd/mod.rs b/.cargo-vendor/libc/src/unix/bsd/netbsdlike/netbsd/mod.rs index 0517a47b69..da96d092b4 100644 --- a/.cargo-vendor/libc/src/unix/bsd/netbsdlike/netbsd/mod.rs +++ b/.cargo-vendor/libc/src/unix/bsd/netbsdlike/netbsd/mod.rs @@ -1886,6 +1886,8 @@ pub const MNT_NOWAIT: ::c_int = 2; pub const MNT_LAZY: ::c_int = 3; // +pub const CLOCK_PROCESS_CPUTIME_ID: ::clockid_t = 2; +pub const CLOCK_THREAD_CPUTIME_ID: ::clockid_t = 4; pub const NTP_API: ::c_int = 4; pub const MAXPHASE: ::c_long = 500000000; pub const MAXFREQ: ::c_long = 500000; @@ -2422,6 +2424,33 @@ cfg_if! { } } +// net/route.h +pub const RTF_MASK: ::c_int = 0x80; +pub const RTF_CONNECTED: ::c_int = 0x100; +pub const RTF_ANNOUNCE: ::c_int = 0x20000; +pub const RTF_SRC: ::c_int = 0x10000; +pub const RTF_LOCAL: ::c_int = 0x40000; +pub const RTF_BROADCAST: ::c_int = 0x80000; +pub const RTF_UPDATING: ::c_int = 0x100000; +pub const RTF_DONTCHANGEIFA: ::c_int = 0x200000; + +pub const RTM_VERSION: ::c_int = 4; +pub const RTM_LOCK: ::c_int = 0x8; +pub const RTM_IFANNOUNCE: ::c_int = 0x10; +pub const RTM_IEEE80211: ::c_int = 0x11; +pub const RTM_SETGATE: ::c_int = 0x12; +pub const RTM_LLINFO_UPD: ::c_int = 0x13; +pub const RTM_IFINFO: ::c_int = 0x14; +pub const RTM_OCHGADDR: ::c_int = 0x15; +pub const RTM_NEWADDR: ::c_int = 0x16; +pub const RTM_DELADDR: ::c_int = 0x17; +pub const RTM_CHGADDR: ::c_int = 0x18; + +pub const RTA_TAG: ::c_int = 0x100; + +pub const RTAX_TAG: ::c_int = 8; +pub const RTAX_MAX: ::c_int = 9; + const_fn! { {const} fn _ALIGN(p: usize) -> usize { (p + _ALIGNBYTES) & !_ALIGNBYTES @@ -2668,6 +2697,11 @@ extern "C" { newp: *const ::c_void, newlen: ::size_t, ) -> ::c_int; + pub fn sysctlnametomib( + sname: *const ::c_char, + name: *mut ::c_int, + namelenp: *mut ::size_t, + ) -> ::c_int; #[link_name = "__kevent50"] pub fn kevent( kq: ::c_int, diff --git a/.cargo-vendor/libc/src/unix/bsd/netbsdlike/openbsd/mod.rs b/.cargo-vendor/libc/src/unix/bsd/netbsdlike/openbsd/mod.rs index 8f470aff9a..259f9e0602 100644 --- a/.cargo-vendor/libc/src/unix/bsd/netbsdlike/openbsd/mod.rs +++ b/.cargo-vendor/libc/src/unix/bsd/netbsdlike/openbsd/mod.rs @@ -1916,6 +1916,62 @@ pub const RB_RESET: ::c_int = 0x08000; pub const RB_GOODRANDOM: ::c_int = 0x10000; pub const RB_UNHIBERNATE: ::c_int = 0x20000; +// net/route.h +pub const RTF_CLONING: ::c_int = 0x100; +pub const RTF_MULTICAST: ::c_int = 0x200; +pub const RTF_LLINFO: ::c_int = 0x400; +pub const RTF_PROTO3: ::c_int = 0x2000; +pub const RTF_ANNOUNCE: ::c_int = ::RTF_PROTO2; + +pub const RTF_CLONED: ::c_int = 0x10000; +pub const RTF_CACHED: ::c_int = 0x20000; +pub const RTF_MPATH: ::c_int = 0x40000; +pub const RTF_MPLS: ::c_int = 0x100000; +pub const RTF_LOCAL: ::c_int = 0x200000; +pub const RTF_BROADCAST: ::c_int = 0x400000; +pub const RTF_CONNECTED: ::c_int = 0x800000; +pub const RTF_BFD: ::c_int = 0x1000000; +pub const RTF_FMASK: ::c_int = ::RTF_LLINFO + | ::RTF_PROTO1 + | ::RTF_PROTO2 + | ::RTF_PROTO3 + | ::RTF_BLACKHOLE + | ::RTF_REJECT + | ::RTF_STATIC + | ::RTF_MPLS + | ::RTF_BFD; + +pub const RTM_VERSION: ::c_int = 5; +pub const RTM_RESOLVE: ::c_int = 0xb; +pub const RTM_NEWADDR: ::c_int = 0xc; +pub const RTM_DELADDR: ::c_int = 0xd; +pub const RTM_IFINFO: ::c_int = 0xe; +pub const RTM_IFANNOUNCE: ::c_int = 0xf; +pub const RTM_DESYNC: ::c_int = 0x10; +pub const RTM_INVALIDATE: ::c_int = 0x11; +pub const RTM_BFD: ::c_int = 0x12; +pub const RTM_PROPOSAL: ::c_int = 0x13; +pub const RTM_CHGADDRATTR: ::c_int = 0x14; +pub const RTM_80211INFO: ::c_int = 0x15; +pub const RTM_SOURCE: ::c_int = 0x16; + +pub const RTA_SRC: ::c_int = 0x100; +pub const RTA_SRCMASK: ::c_int = 0x200; +pub const RTA_LABEL: ::c_int = 0x400; +pub const RTA_BFD: ::c_int = 0x800; +pub const RTA_DNS: ::c_int = 0x1000; +pub const RTA_STATIC: ::c_int = 0x2000; +pub const RTA_SEARCH: ::c_int = 0x4000; + +pub const RTAX_SRC: ::c_int = 8; +pub const RTAX_SRCMASK: ::c_int = 9; +pub const RTAX_LABEL: ::c_int = 10; +pub const RTAX_BFD: ::c_int = 11; +pub const RTAX_DNS: ::c_int = 12; +pub const RTAX_STATIC: ::c_int = 13; +pub const RTAX_SEARCH: ::c_int = 14; +pub const RTAX_MAX: ::c_int = 15; + const_fn! { {const} fn _ALIGN(p: usize) -> usize { (p + _ALIGNBYTES) & !_ALIGNBYTES diff --git a/.cargo-vendor/libc/src/unix/haiku/mod.rs b/.cargo-vendor/libc/src/unix/haiku/mod.rs index 4dc931cd04..3a226e6696 100644 --- a/.cargo-vendor/libc/src/unix/haiku/mod.rs +++ b/.cargo-vendor/libc/src/unix/haiku/mod.rs @@ -2133,6 +2133,10 @@ extern "C" { >, data: *mut ::c_void, ) -> ::c_int; + + pub fn arc4random() -> u32; + pub fn arc4random_uniform(upper_bound: u32) -> u32; + pub fn arc4random_buf(buf: *mut ::c_void, n: ::size_t); } #[link(name = "gnu")] diff --git a/.cargo-vendor/libc/src/unix/linux_like/android/mod.rs b/.cargo-vendor/libc/src/unix/linux_like/android/mod.rs index a8e935967c..3896492ebe 100644 --- a/.cargo-vendor/libc/src/unix/linux_like/android/mod.rs +++ b/.cargo-vendor/libc/src/unix/linux_like/android/mod.rs @@ -3153,6 +3153,8 @@ pub const PR_GET_TIMING: ::c_int = 13; pub const PR_SET_TIMING: ::c_int = 14; pub const PR_TIMING_STATISTICAL: ::c_int = 0; pub const PR_TIMING_TIMESTAMP: ::c_int = 1; +pub const PR_SET_NAME: ::c_int = 15; +pub const PR_GET_NAME: ::c_int = 16; // linux/if_addr.h pub const IFA_UNSPEC: ::c_ushort = 0; diff --git a/.cargo-vendor/libc/src/unix/linux_like/emscripten/mod.rs b/.cargo-vendor/libc/src/unix/linux_like/emscripten/mod.rs index 1dc607496a..2f515f390d 100644 --- a/.cargo-vendor/libc/src/unix/linux_like/emscripten/mod.rs +++ b/.cargo-vendor/libc/src/unix/linux_like/emscripten/mod.rs @@ -775,6 +775,8 @@ pub const POSIX_MADV_RANDOM: ::c_int = 1; pub const POSIX_MADV_SEQUENTIAL: ::c_int = 2; pub const POSIX_MADV_WILLNEED: ::c_int = 3; +pub const AT_EACCESS: ::c_int = 0x200; + pub const S_IEXEC: mode_t = 64; pub const S_IWRITE: mode_t = 128; pub const S_IREAD: mode_t = 256; @@ -1776,6 +1778,39 @@ extern "C" { ) -> ::c_int; pub fn getentropy(buf: *mut ::c_void, buflen: ::size_t) -> ::c_int; + + pub fn getpwnam_r( + name: *const ::c_char, + pwd: *mut passwd, + buf: *mut ::c_char, + buflen: ::size_t, + result: *mut *mut passwd, + ) -> ::c_int; + pub fn getpwuid_r( + uid: ::uid_t, + pwd: *mut passwd, + buf: *mut ::c_char, + buflen: ::size_t, + result: *mut *mut passwd, + ) -> ::c_int; + + // grp.h + pub fn getgrgid(gid: ::gid_t) -> *mut ::group; + pub fn getgrnam(name: *const ::c_char) -> *mut ::group; + pub fn getgrnam_r( + name: *const ::c_char, + grp: *mut ::group, + buf: *mut ::c_char, + buflen: ::size_t, + result: *mut *mut ::group, + ) -> ::c_int; + pub fn getgrgid_r( + gid: ::gid_t, + grp: *mut ::group, + buf: *mut ::c_char, + buflen: ::size_t, + result: *mut *mut ::group, + ) -> ::c_int; } // Alias to 64 to mimic glibc's LFS64 support diff --git a/.cargo-vendor/libc/src/unix/linux_like/linux/align.rs b/.cargo-vendor/libc/src/unix/linux_like/linux/align.rs index 1036e23dc8..bd16e449bb 100644 --- a/.cargo-vendor/libc/src/unix/linux_like/linux/align.rs +++ b/.cargo-vendor/libc/src/unix/linux_like/linux/align.rs @@ -63,6 +63,24 @@ macro_rules! expand_align { pub fd: ::c_int, pub pid: ::c_int, } + + #[repr(align(8))] + pub struct tpacket_rollover_stats { + pub tp_all: ::__u64, + pub tp_huge: ::__u64, + pub tp_failed: ::__u64, + } + + #[repr(align(8))] + pub struct tpacket_hdr_v1 { + pub block_status: ::__u32, + pub num_pkts: ::__u32, + pub offset_to_first_pkt: ::__u32, + pub blk_len: ::__u32, + pub seq_num: ::__u64, + pub ts_first_pkt: ::tpacket_bd_ts, + pub ts_last_pkt: ::tpacket_bd_ts, + } } s_no_extra_traits! { diff --git a/.cargo-vendor/libc/src/unix/linux_like/linux/gnu/b64/x86_64/mod.rs b/.cargo-vendor/libc/src/unix/linux_like/linux/gnu/b64/x86_64/mod.rs index 609c74429c..f66eb0409c 100644 --- a/.cargo-vendor/libc/src/unix/linux_like/linux/gnu/b64/x86_64/mod.rs +++ b/.cargo-vendor/libc/src/unix/linux_like/linux/gnu/b64/x86_64/mod.rs @@ -802,8 +802,6 @@ extern "C" { pub fn setcontext(ucp: *const ucontext_t) -> ::c_int; pub fn makecontext(ucp: *mut ucontext_t, func: extern "C" fn(), argc: ::c_int, ...); pub fn swapcontext(uocp: *mut ucontext_t, ucp: *const ucontext_t) -> ::c_int; - pub fn iopl(level: ::c_int) -> ::c_int; - pub fn ioperm(from: ::c_ulong, num: ::c_ulong, turn_on: ::c_int) -> ::c_int; } cfg_if! { diff --git a/.cargo-vendor/libc/src/unix/linux_like/linux/gnu/mod.rs b/.cargo-vendor/libc/src/unix/linux_like/linux/gnu/mod.rs index 75d150c90d..b28c33f2c1 100644 --- a/.cargo-vendor/libc/src/unix/linux_like/linux/gnu/mod.rs +++ b/.cargo-vendor/libc/src/unix/linux_like/linux/gnu/mod.rs @@ -454,6 +454,55 @@ s! { pub aio_flags: ::__u32, pub aio_resfd: ::__u32, } + + // netinet/tcp.h + + pub struct tcp_info { + pub tcpi_state: u8, + pub tcpi_ca_state: u8, + pub tcpi_retransmits: u8, + pub tcpi_probes: u8, + pub tcpi_backoff: u8, + pub tcpi_options: u8, + /// This contains the bitfields `tcpi_snd_wscale` and `tcpi_rcv_wscale`. + /// Each is 4 bits. + pub tcpi_snd_rcv_wscale: u8, + pub tcpi_rto: u32, + pub tcpi_ato: u32, + pub tcpi_snd_mss: u32, + pub tcpi_rcv_mss: u32, + pub tcpi_unacked: u32, + pub tcpi_sacked: u32, + pub tcpi_lost: u32, + pub tcpi_retrans: u32, + pub tcpi_fackets: u32, + pub tcpi_last_data_sent: u32, + pub tcpi_last_ack_sent: u32, + pub tcpi_last_data_recv: u32, + pub tcpi_last_ack_recv: u32, + pub tcpi_pmtu: u32, + pub tcpi_rcv_ssthresh: u32, + pub tcpi_rtt: u32, + pub tcpi_rttvar: u32, + pub tcpi_snd_ssthresh: u32, + pub tcpi_snd_cwnd: u32, + pub tcpi_advmss: u32, + pub tcpi_reordering: u32, + pub tcpi_rcv_rtt: u32, + pub tcpi_rcv_space: u32, + pub tcpi_total_retrans: u32, + } + + pub struct fanotify_event_info_pidfd { + pub hdr: ::fanotify_event_info_header, + pub pidfd: ::__s32, + } + + pub struct fanotify_event_info_error { + pub hdr: ::fanotify_event_info_header, + pub error: ::__s32, + pub error_count: ::__u32, + } } impl siginfo_t { @@ -1054,25 +1103,6 @@ pub const XSK_UNALIGNED_BUF_ADDR_MASK: ::c_ulonglong = (1 << XSK_UNALIGNED_BUF_O pub const XDP_PKT_CONTD: ::__u32 = 1 << 0; -// elf.h -pub const NT_PRSTATUS: ::c_int = 1; -pub const NT_PRFPREG: ::c_int = 2; -pub const NT_FPREGSET: ::c_int = 2; -pub const NT_PRPSINFO: ::c_int = 3; -pub const NT_PRXREG: ::c_int = 4; -pub const NT_TASKSTRUCT: ::c_int = 4; -pub const NT_PLATFORM: ::c_int = 5; -pub const NT_AUXV: ::c_int = 6; -pub const NT_GWINDOWS: ::c_int = 7; -pub const NT_ASRS: ::c_int = 8; -pub const NT_PSTATUS: ::c_int = 10; -pub const NT_PSINFO: ::c_int = 13; -pub const NT_PRCRED: ::c_int = 14; -pub const NT_UTSNAME: ::c_int = 15; -pub const NT_LWPSTATUS: ::c_int = 16; -pub const NT_LWPSINFO: ::c_int = 17; -pub const NT_PRFPXREG: ::c_int = 20; - pub const ELFOSABI_ARM_AEABI: u8 = 64; // linux/sched.h diff --git a/.cargo-vendor/libc/src/unix/linux_like/linux/mod.rs b/.cargo-vendor/libc/src/unix/linux_like/linux/mod.rs index 1973b3f574..20c4a16979 100644 --- a/.cargo-vendor/libc/src/unix/linux_like/linux/mod.rs +++ b/.cargo-vendor/libc/src/unix/linux_like/linux/mod.rs @@ -16,6 +16,7 @@ pub type loff_t = ::c_longlong; pub type pthread_key_t = ::c_uint; pub type pthread_once_t = ::c_int; pub type pthread_spinlock_t = ::c_int; +pub type __kernel_fsid_t = __c_anonymous__kernel_fsid_t; pub type __u8 = ::c_uchar; pub type __u16 = ::c_ushort; @@ -58,6 +59,15 @@ missing! { pub enum fpos64_t {} // FIXME: fill this out with a struct } +e! { + #[repr(u32)] + pub enum tpacket_versions { + TPACKET_V1, + TPACKET_V2, + TPACKET_V3, + } +} + s! { pub struct glob_t { pub gl_pathc: ::size_t, @@ -140,6 +150,15 @@ s! { __val: [::c_int; 2], } + pub struct fanout_args { + #[cfg(target_endian = "little")] + pub id: ::__u16, + pub type_flags: ::__u16, + #[cfg(target_endian = "big")] + pub id: ::__u16, + pub max_num_members: ::__u32, + } + pub struct packet_mreq { pub mr_ifindex: ::c_int, pub mr_type: ::c_ushort, @@ -147,6 +166,98 @@ s! { pub mr_address: [::c_uchar; 8], } + pub struct sockaddr_pkt { + pub spkt_family: ::c_ushort, + pub spkt_device: [::c_uchar; 14], + pub spkt_protocol: ::c_ushort, + } + + pub struct tpacket_auxdata { + pub tp_status: ::__u32, + pub tp_len: ::__u32, + pub tp_snaplen: ::__u32, + pub tp_mac: ::__u16, + pub tp_net: ::__u16, + pub tp_vlan_tci: ::__u16, + pub tp_vlan_tpid: ::__u16, + } + + pub struct tpacket_hdr { + pub tp_status: ::c_ulong, + pub tp_len: ::c_uint, + pub tp_snaplen: ::c_uint, + pub tp_mac: ::c_ushort, + pub tp_net: ::c_ushort, + pub tp_sec: ::c_uint, + pub tp_usec: ::c_uint, + } + + pub struct tpacket_hdr_variant1 { + pub tp_rxhash: ::__u32, + pub tp_vlan_tci: ::__u32, + pub tp_vlan_tpid: ::__u16, + pub tp_padding: ::__u16, + } + + pub struct tpacket2_hdr { + pub tp_status: ::__u32, + pub tp_len: ::__u32, + pub tp_snaplen: ::__u32, + pub tp_mac: ::__u16, + pub tp_net: ::__u16, + pub tp_sec: ::__u32, + pub tp_nsec: ::__u32, + pub tp_vlan_tci: ::__u16, + pub tp_vlan_tpid: ::__u16, + pub tp_padding: [::__u8; 4], + } + + pub struct tpacket_req { + pub tp_block_size: ::c_uint, + pub tp_block_nr: ::c_uint, + pub tp_frame_size: ::c_uint, + pub tp_frame_nr: ::c_uint, + } + + pub struct tpacket_req3 { + pub tp_block_size: ::c_uint, + pub tp_block_nr: ::c_uint, + pub tp_frame_size: ::c_uint, + pub tp_frame_nr: ::c_uint, + pub tp_retire_blk_tov: ::c_uint, + pub tp_sizeof_priv: ::c_uint, + pub tp_feature_req_word: ::c_uint, + } + + pub struct tpacket_stats { + pub tp_packets: ::c_uint, + pub tp_drops: ::c_uint, + } + + pub struct tpacket_stats_v3 { + pub tp_packets: ::c_uint, + pub tp_drops: ::c_uint, + pub tp_freeze_q_cnt: ::c_uint, + } + + pub struct tpacket3_hdr { + pub tp_next_offset: ::__u32, + pub tp_sec: ::__u32, + pub tp_nsec: ::__u32, + pub tp_snaplen: ::__u32, + pub tp_len: ::__u32, + pub tp_status: ::__u32, + pub tp_mac: ::__u16, + pub tp_net: ::__u16, + pub hv1: ::tpacket_hdr_variant1, + pub tp_padding: [::__u8; 8], + } + + pub struct tpacket_bd_ts { + pub ts_sec: ::c_uint, + pub ts_usec: ::c_uint, + } + pub struct cpu_set_t { #[cfg(all(target_pointer_width = "32", not(target_arch = "x86_64")))] @@ -438,6 +549,20 @@ s! { pub sh_entsize: Elf64_Xword, } + pub struct __c_anonymous_elf32_rel { + pub r_offset: Elf32_Addr, + pub r_info: Elf32_Word, + } + + pub struct __c_anonymous_elf64_rel { + pub r_offset: Elf64_Addr, + pub r_info: Elf64_Xword, + } + + pub struct __c_anonymous__kernel_fsid_t { + pub val: [::c_int; 2], + } + pub struct ucred { pub pid: ::pid_t, pub uid: ::uid_t, @@ -505,6 +630,18 @@ s! { pub response: __u32, } + pub struct fanotify_event_info_header { + pub info_type: __u8, + pub pad: __u8, + pub len: __u16, + } + + pub struct fanotify_event_info_fid { + pub hdr: fanotify_event_info_header, + pub fsid: ::__kernel_fsid_t, + pub handle: [::c_uchar; 0], + } + pub struct sockaddr_vm { pub svm_family: ::sa_family_t, pub svm_reserved1: ::c_ushort, @@ -890,6 +1027,27 @@ s_no_extra_traits! { pub sched_deadline: ::__u64, pub sched_period: ::__u64, } + + #[cfg(libc_union)] + #[allow(missing_debug_implementations)] + pub union tpacket_req_u { + pub req: ::tpacket_req, + pub req3: ::tpacket_req3, + } + + #[cfg(libc_union)] + #[allow(missing_debug_implementations)] + pub union tpacket_bd_header_u { + pub bh1: ::tpacket_hdr_v1, + } + + #[cfg(libc_union)] + #[allow(missing_debug_implementations)] + pub struct tpacket_block_desc { + pub version: ::__u32, + pub offset_to_priv: ::__u32, + pub hdr: ::tpacket_bd_header_u, + } } s_no_extra_traits! { @@ -1398,6 +1556,16 @@ cfg_if! { } } +cfg_if! { + if #[cfg(all(any(target_env = "gnu", target_env = "musl", target_env = "ohos"), + any(target_arch = "x86_64", target_arch = "x86")))] { + extern "C" { + pub fn iopl(level: ::c_int) -> ::c_int; + pub fn ioperm(from: ::c_ulong, num: ::c_ulong, turn_on: ::c_int) -> ::c_int; + } + } +} + cfg_if! { if #[cfg(any(target_env = "gnu", target_env = "musl", target_env = "ohos"))] { pub const ABDAY_1: ::nl_item = 0x20000; @@ -2825,13 +2993,84 @@ pub const CTRL_ATTR_MCAST_GRP_NAME: ::c_int = 1; pub const CTRL_ATTR_MCAST_GRP_ID: ::c_int = 2; // linux/if_packet.h +pub const PACKET_HOST: ::c_uchar = 0; +pub const PACKET_BROADCAST: ::c_uchar = 1; +pub const PACKET_MULTICAST: ::c_uchar = 2; +pub const PACKET_OTHERHOST: ::c_uchar = 3; +pub const PACKET_OUTGOING: ::c_uchar = 4; +pub const PACKET_LOOPBACK: ::c_uchar = 5; +pub const PACKET_USER: ::c_uchar = 6; +pub const PACKET_KERNEL: ::c_uchar = 7; + pub const PACKET_ADD_MEMBERSHIP: ::c_int = 1; pub const PACKET_DROP_MEMBERSHIP: ::c_int = 2; +pub const PACKET_RX_RING: ::c_int = 5; +pub const PACKET_STATISTICS: ::c_int = 6; +pub const PACKET_AUXDATA: ::c_int = 8; +pub const PACKET_VERSION: ::c_int = 10; +pub const PACKET_RESERVE: ::c_int = 12; +pub const PACKET_TX_RING: ::c_int = 13; +pub const PACKET_LOSS: ::c_int = 14; +pub const PACKET_TIMESTAMP: ::c_int = 17; +pub const PACKET_FANOUT: ::c_int = 18; +pub const PACKET_QDISC_BYPASS: ::c_int = 20; + +pub const PACKET_FANOUT_HASH: ::c_uint = 0; +pub const PACKET_FANOUT_LB: ::c_uint = 1; +pub const PACKET_FANOUT_CPU: ::c_uint = 2; +pub const PACKET_FANOUT_ROLLOVER: ::c_uint = 3; +pub const PACKET_FANOUT_RND: ::c_uint = 4; +pub const PACKET_FANOUT_QM: ::c_uint = 5; +pub const PACKET_FANOUT_CBPF: ::c_uint = 6; +pub const PACKET_FANOUT_EBPF: ::c_uint = 7; +pub const PACKET_FANOUT_FLAG_ROLLOVER: ::c_uint = 0x1000; +pub const PACKET_FANOUT_FLAG_UNIQUEID: ::c_uint = 0x2000; +pub const PACKET_FANOUT_FLAG_DEFRAG: ::c_uint = 0x8000; pub const PACKET_MR_MULTICAST: ::c_int = 0; pub const PACKET_MR_PROMISC: ::c_int = 1; pub const PACKET_MR_ALLMULTI: ::c_int = 2; +pub const TP_STATUS_KERNEL: ::__u32 = 0; +pub const TP_STATUS_USER: ::__u32 = 1 << 0; +pub const TP_STATUS_COPY: ::__u32 = 1 << 1; +pub const TP_STATUS_LOSING: ::__u32 = 1 << 2; +pub const TP_STATUS_CSUMNOTREADY: ::__u32 = 1 << 3; +pub const TP_STATUS_VLAN_VALID: ::__u32 = 1 << 4; +pub const TP_STATUS_BLK_TMO: ::__u32 = 1 << 5; +pub const TP_STATUS_VLAN_TPID_VALID: ::__u32 = 1 << 6; +pub const TP_STATUS_CSUM_VALID: ::__u32 = 1 << 7; + +pub const TP_STATUS_AVAILABLE: ::__u32 = 0; +pub const TP_STATUS_SEND_REQUEST: ::__u32 = 1 << 0; +pub const TP_STATUS_SENDING: ::__u32 = 1 << 1; +pub const TP_STATUS_WRONG_FORMAT: ::__u32 = 1 << 2; + +pub const TP_STATUS_TS_SOFTWARE: ::__u32 = 1 << 29; +pub const TP_STATUS_TS_SYS_HARDWARE: ::__u32 = 1 << 30; +pub const TP_STATUS_TS_RAW_HARDWARE: ::__u32 = 1 << 31; + +pub const TP_FT_REQ_FILL_RXHASH: ::__u32 = 1; + +pub const TPACKET_ALIGNMENT: usize = 16; + +cfg_if! { + if #[cfg(libc_const_size_of)] { + pub const TPACKET_HDRLEN: usize = ( + (::mem::size_of::<::tpacket_hdr>() + TPACKET_ALIGNMENT - 1) + & !(TPACKET_ALIGNMENT - 1) + ) + ::mem::size_of::<::sockaddr_ll>(); + pub const TPACKET2_HDRLEN: usize = ( + (::mem::size_of::<::tpacket2_hdr>() + TPACKET_ALIGNMENT - 1) + & !(TPACKET_ALIGNMENT - 1) + ) + ::mem::size_of::<::sockaddr_ll>(); + pub const TPACKET3_HDRLEN: usize = ( + (::mem::size_of::<::tpacket3_hdr>() + TPACKET_ALIGNMENT - 1) + & !(TPACKET_ALIGNMENT - 1) + ) + ::mem::size_of::<::sockaddr_ll>(); + } +} + // linux/netfilter.h pub const NF_DROP: ::c_int = 0; pub const NF_ACCEPT: ::c_int = 1; @@ -4668,6 +4907,25 @@ pub const SCHED_FLAG_KEEP_PARAMS: ::c_int = 0x10; pub const SCHED_FLAG_UTIL_CLAMP_MIN: ::c_int = 0x20; pub const SCHED_FLAG_UTIL_CLAMP_MAX: ::c_int = 0x40; +// elf.h +pub const NT_PRSTATUS: ::c_int = 1; +pub const NT_PRFPREG: ::c_int = 2; +pub const NT_FPREGSET: ::c_int = 2; +pub const NT_PRPSINFO: ::c_int = 3; +pub const NT_PRXREG: ::c_int = 4; +pub const NT_TASKSTRUCT: ::c_int = 4; +pub const NT_PLATFORM: ::c_int = 5; +pub const NT_AUXV: ::c_int = 6; +pub const NT_GWINDOWS: ::c_int = 7; +pub const NT_ASRS: ::c_int = 8; +pub const NT_PSTATUS: ::c_int = 10; +pub const NT_PSINFO: ::c_int = 13; +pub const NT_PRCRED: ::c_int = 14; +pub const NT_UTSNAME: ::c_int = 15; +pub const NT_LWPSTATUS: ::c_int = 16; +pub const NT_LWPSINFO: ::c_int = 17; +pub const NT_PRFPXREG: ::c_int = 20; + pub const SCHED_FLAG_KEEP_ALL: ::c_int = SCHED_FLAG_KEEP_POLICY | SCHED_FLAG_KEEP_PARAMS; pub const SCHED_FLAG_UTIL_CLAMP: ::c_int = SCHED_FLAG_UTIL_CLAMP_MIN | SCHED_FLAG_UTIL_CLAMP_MAX; @@ -4805,6 +5063,10 @@ f! { ee.offset(1) as *mut ::sockaddr } + pub fn TPACKET_ALIGN(x: usize) -> usize { + (x + TPACKET_ALIGNMENT - 1) & !(TPACKET_ALIGNMENT - 1) + } + pub fn BPF_RVAL(code: ::__u32) -> ::__u32 { code & 0x18 } diff --git a/.cargo-vendor/libc/src/unix/linux_like/linux/musl/mod.rs b/.cargo-vendor/libc/src/unix/linux_like/linux/musl/mod.rs index a4c8f79c35..14e1e6d3bf 100644 --- a/.cargo-vendor/libc/src/unix/linux_like/linux/musl/mod.rs +++ b/.cargo-vendor/libc/src/unix/linux_like/linux/musl/mod.rs @@ -348,6 +348,73 @@ s! { pub len: ::__u32, pub options: ::__u32, } + + // netinet/tcp.h + + pub struct tcp_info { + pub tcpi_state: u8, + pub tcpi_ca_state: u8, + pub tcpi_retransmits: u8, + pub tcpi_probes: u8, + pub tcpi_backoff: u8, + pub tcpi_options: u8, + /* + * FIXME(musl): when musl headers are more up to date + /// This contains the bitfields `tcpi_snd_wscale` and `tcpi_rcv_wscale`. + /// Each is 4 bits. + pub tcpi_snd_rcv_wscale: u8, + /// This contains the bitfields `tcpi_delivery_rate_app_limited` (1 bit) and + /// `tcpi_fastopen_client_fail` (2 bits). + pub tcpi_delivery_fastopen_bitfields: u8, + */ + pub tcpi_rto: u32, + pub tcpi_ato: u32, + pub tcpi_snd_mss: u32, + pub tcpi_rcv_mss: u32, + pub tcpi_unacked: u32, + pub tcpi_sacked: u32, + pub tcpi_lost: u32, + pub tcpi_retrans: u32, + pub tcpi_fackets: u32, + pub tcpi_last_data_sent: u32, + pub tcpi_last_ack_sent: u32, + pub tcpi_last_data_recv: u32, + pub tcpi_last_ack_recv: u32, + pub tcpi_pmtu: u32, + pub tcpi_rcv_ssthresh: u32, + pub tcpi_rtt: u32, + pub tcpi_rttvar: u32, + pub tcpi_snd_ssthresh: u32, + pub tcpi_snd_cwnd: u32, + pub tcpi_advmss: u32, + pub tcpi_reordering: u32, + pub tcpi_rcv_rtt: u32, + pub tcpi_rcv_space: u32, + pub tcpi_total_retrans: u32, + pub tcpi_pacing_rate: u64, + pub tcpi_max_pacing_rate: u64, + pub tcpi_bytes_acked: u64, + pub tcpi_bytes_received: u64, + pub tcpi_segs_out: u32, + pub tcpi_segs_in: u32, + pub tcpi_notsent_bytes: u32, + pub tcpi_min_rtt: u32, + pub tcpi_data_segs_in: u32, + pub tcpi_data_segs_out: u32, + pub tcpi_delivery_rate: u64, + pub tcpi_busy_time: u64, + pub tcpi_rwnd_limited: u64, + pub tcpi_sndbuf_limited: u64, + pub tcpi_delivered: u32, + pub tcpi_delivered_ce: u32, + pub tcpi_bytes_sent: u64, + pub tcpi_bytes_retrans: u64, + pub tcpi_dsack_dups: u32, + pub tcpi_reord_seen: u32, + // FIXME(musl): to uncomment once CI musl is updated + //pub tcpi_rcv_ooopack: u32, + //pub tcpi_snd_wnd: u32, + } } s_no_extra_traits! { @@ -565,6 +632,18 @@ pub const MAP_HUGE_16GB: ::c_int = 34 << MAP_HUGE_SHIFT; pub const MS_RMT_MASK: ::c_ulong = 0x02800051; +// include/utmpx.h +pub const EMPTY: ::c_short = 0; +pub const RUN_LVL: ::c_short = 1; +pub const BOOT_TIME: ::c_short = 2; +pub const NEW_TIME: ::c_short = 3; +pub const OLD_TIME: ::c_short = 4; +pub const INIT_PROCESS: ::c_short = 5; +pub const LOGIN_PROCESS: ::c_short = 6; +pub const USER_PROCESS: ::c_short = 7; +pub const DEAD_PROCESS: ::c_short = 8; +// musl does not define ACCOUNTING + pub const SFD_CLOEXEC: ::c_int = 0x080000; pub const NCCS: usize = 32; @@ -904,6 +983,17 @@ extern "C" { pub fn dirname(path: *mut ::c_char) -> *mut ::c_char; pub fn basename(path: *mut ::c_char) -> *mut ::c_char; + + // Added in `musl` 1.1.24 + pub fn posix_spawn_file_actions_addchdir_np( + actions: *mut ::posix_spawn_file_actions_t, + path: *const ::c_char, + ) -> ::c_int; + // Added in `musl` 1.1.24 + pub fn posix_spawn_file_actions_addfchdir_np( + actions: *mut ::posix_spawn_file_actions_t, + fd: ::c_int, + ) -> ::c_int; } // Alias to 64 to mimic glibc's LFS64 support diff --git a/.cargo-vendor/libc/src/unix/linux_like/linux/no_align.rs b/.cargo-vendor/libc/src/unix/linux_like/linux/no_align.rs index 328a5cc484..f81d046cce 100644 --- a/.cargo-vendor/libc/src/unix/linux_like/linux/no_align.rs +++ b/.cargo-vendor/libc/src/unix/linux_like/linux/no_align.rs @@ -57,6 +57,24 @@ macro_rules! expand_align { pub fd: ::c_int, pub pid: ::c_int, } + + pub struct tpacket_rollover_stats { + __align: [::c_long; 0], + pub tp_all: ::__u64, + pub tp_huge: ::__u64, + pub tp_failed: ::__u64, + } + + pub struct tpacket_hdr_v1 { + __align: [::c_long; 0], + pub block_status: ::__u32, + pub num_pkts: ::__u32, + pub offset_to_first_pkt: ::__u32, + pub blk_len: ::__u32, + pub seq_num: ::__u64, + pub ts_first_pkt: ::tpacket_bd_ts, + pub ts_last_pkt: ::tpacket_bd_ts, + } } s_no_extra_traits! { diff --git a/.cargo-vendor/libc/src/unix/mod.rs b/.cargo-vendor/libc/src/unix/mod.rs index 6bab825b04..04baabae8b 100644 --- a/.cargo-vendor/libc/src/unix/mod.rs +++ b/.cargo-vendor/libc/src/unix/mod.rs @@ -313,14 +313,36 @@ pub const ATF_PERM: ::c_int = 0x04; pub const ATF_PUBL: ::c_int = 0x08; pub const ATF_USETRAILERS: ::c_int = 0x10; +pub const FNM_PERIOD: c_int = 1 << 2; +pub const FNM_CASEFOLD: c_int = 1 << 4; +pub const FNM_NOMATCH: c_int = 1; + +cfg_if! { + if #[cfg(any( + target_os = "macos", + target_os = "freebsd", + target_os = "android", + target_os = "openbsd", + ))] { + pub const FNM_PATHNAME: c_int = 1 << 1; + pub const FNM_NOESCAPE: c_int = 1 << 0; + } else { + pub const FNM_PATHNAME: c_int = 1 << 0; + pub const FNM_NOESCAPE: c_int = 1 << 1; + } +} + extern "C" { pub static in6addr_loopback: in6_addr; pub static in6addr_any: in6_addr; } cfg_if! { - if #[cfg(any(target_os = "l4re", target_os = "espidf"))] { - // required libraries for L4Re and the ESP-IDF framework are linked externally, ATM + if #[cfg(any(target_os = "l4re", target_os = "espidf", target_os = "nuttx"))] { + // required libraries are linked externally for these platforms: + // * L4Re + // * ESP-IDF + // * NuttX } else if #[cfg(feature = "std")] { // cargo build, don't pull in anything extra as the std dep // already pulls in all libs. @@ -1577,6 +1599,10 @@ cfg_if! { } } +extern "C" { + pub fn fnmatch(pattern: *const c_char, name: *const c_char, flags: c_int) -> c_int; +} + cfg_if! { if #[cfg(target_env = "newlib")] { mod newlib; @@ -1617,6 +1643,9 @@ cfg_if! { } else if #[cfg(target_os = "hurd")] { mod hurd; pub use self::hurd::*; + } else if #[cfg(target_os = "nuttx")] { + mod nuttx; + pub use self::nuttx::*; } else { // Unknown target_os } diff --git a/.cargo-vendor/libc/src/unix/newlib/espidf/mod.rs b/.cargo-vendor/libc/src/unix/newlib/espidf/mod.rs index 1a2a907d83..a73e853159 100644 --- a/.cargo-vendor/libc/src/unix/newlib/espidf/mod.rs +++ b/.cargo-vendor/libc/src/unix/newlib/espidf/mod.rs @@ -89,15 +89,15 @@ pub const MSG_EOR: ::c_int = 0x08; pub const PTHREAD_STACK_MIN: ::size_t = 768; -pub const SIGABRT: ::c_int = 1; -pub const SIGFPE: ::c_int = 1; -pub const SIGILL: ::c_int = 1; -pub const SIGINT: ::c_int = 1; -pub const SIGSEGV: ::c_int = 1; -pub const SIGTERM: ::c_int = 1; +pub const SIGABRT: ::c_int = 6; +pub const SIGFPE: ::c_int = 8; +pub const SIGILL: ::c_int = 4; +pub const SIGINT: ::c_int = 2; +pub const SIGSEGV: ::c_int = 11; +pub const SIGTERM: ::c_int = 15; pub const SIGHUP: ::c_int = 1; -pub const SIGQUIT: ::c_int = 1; -pub const NSIG: ::size_t = 2; +pub const SIGQUIT: ::c_int = 3; +pub const NSIG: ::size_t = 32; extern "C" { pub fn pthread_create( diff --git a/.cargo-vendor/libc/src/unix/newlib/generic.rs b/.cargo-vendor/libc/src/unix/newlib/generic.rs index e45413a7a9..d716dec19f 100644 --- a/.cargo-vendor/libc/src/unix/newlib/generic.rs +++ b/.cargo-vendor/libc/src/unix/newlib/generic.rs @@ -2,7 +2,10 @@ s! { pub struct sigset_t { + #[cfg(target_os = "horizon")] __val: [::c_ulong; 16], + #[cfg(not(target_os = "horizon"))] + __val: u32, } pub struct stat { diff --git a/.cargo-vendor/libc/src/unix/newlib/mod.rs b/.cargo-vendor/libc/src/unix/newlib/mod.rs index 29693f6ec2..78e18d8cea 100644 --- a/.cargo-vendor/libc/src/unix/newlib/mod.rs +++ b/.cargo-vendor/libc/src/unix/newlib/mod.rs @@ -42,7 +42,13 @@ cfg_if! { pub type socklen_t = u32; pub type speed_t = u32; pub type suseconds_t = i32; -pub type tcflag_t = ::c_uint; +cfg_if! { + if #[cfg(target_os = "espidf")] { + pub type tcflag_t = u16; + } else { + pub type tcflag_t = ::c_uint; + } +} pub type useconds_t = u32; cfg_if! { @@ -197,6 +203,10 @@ s! { pub c_lflag: ::tcflag_t, pub c_line: ::cc_t, pub c_cc: [::cc_t; ::NCCS], + #[cfg(target_os = "espidf")] + pub c_ispeed: u32, + #[cfg(target_os = "espidf")] + pub c_ospeed: u32, } pub struct sem_t { // Unverified @@ -224,7 +234,24 @@ s! { } pub struct pthread_attr_t { // Unverified - __size: [u8; __SIZEOF_PTHREAD_ATTR_T] + #[cfg(not(target_os = "espidf"))] + __size: [u8; __SIZEOF_PTHREAD_ATTR_T], + #[cfg(target_os = "espidf")] + pub is_initialized: i32, + #[cfg(target_os = "espidf")] + pub stackaddr: *mut crate::c_void, + #[cfg(target_os = "espidf")] + pub stacksize: i32, + #[cfg(target_os = "espidf")] + pub contentionscope: i32, + #[cfg(target_os = "espidf")] + pub inheritsched: i32, + #[cfg(target_os = "espidf")] + pub schedpolicy: i32, + #[cfg(target_os = "espidf")] + pub schedparam: i32, + #[cfg(target_os = "espidf")] + pub detachstate: i32, } pub struct pthread_rwlockattr_t { // Unverified @@ -244,7 +271,14 @@ align_const! { size: [__PTHREAD_INITIALIZER_BYTE; __SIZEOF_PTHREAD_RWLOCK_T], }; } -pub const NCCS: usize = 32; + +cfg_if! { + if #[cfg(target_os = "espidf")] { + pub const NCCS: usize = 11; + } else { + pub const NCCS: usize = 32; + } +} cfg_if! { if #[cfg(target_os = "espidf")] { @@ -267,6 +301,16 @@ cfg_if! { pub const __SIZEOF_PTHREAD_RWLOCK_T: usize = 4; pub const __SIZEOF_PTHREAD_RWLOCKATTR_T: usize = 4; pub const __SIZEOF_PTHREAD_BARRIER_T: usize = 4; + } else if #[cfg(target_os = "rtems")] { + const __PTHREAD_INITIALIZER_BYTE: u8 = 0x00; + pub const __SIZEOF_PTHREAD_ATTR_T: usize = 96; + pub const __SIZEOF_PTHREAD_MUTEX_T: usize = 64; + pub const __SIZEOF_PTHREAD_MUTEXATTR_T: usize = 24; + pub const __SIZEOF_PTHREAD_COND_T: usize = 28; + pub const __SIZEOF_PTHREAD_CONDATTR_T: usize = 24; + pub const __SIZEOF_PTHREAD_RWLOCK_T: usize = 32; + pub const __SIZEOF_PTHREAD_RWLOCKATTR_T: usize = 8; + pub const __SIZEOF_PTHREAD_BARRIER_T: usize = 32; } else { const __PTHREAD_INITIALIZER_BYTE: u8 = 0; pub const __SIZEOF_PTHREAD_ATTR_T: usize = 56; @@ -413,7 +457,13 @@ pub const O_SYNC: ::c_int = 8192; pub const O_NONBLOCK: ::c_int = 16384; pub const O_ACCMODE: ::c_int = 3; -pub const O_CLOEXEC: ::c_int = 0x80000; +cfg_if! { + if #[cfg(target_os = "espidf")] { + pub const O_CLOEXEC: ::c_int = 0x40000; + } else { + pub const O_CLOEXEC: ::c_int = 0x80000; + } +} pub const RTLD_LAZY: ::c_int = 0x1; @@ -455,7 +505,13 @@ pub const SOL_TCP: ::c_int = 6; pub const PF_UNSPEC: ::c_int = 0; pub const PF_INET: ::c_int = 2; -pub const PF_INET6: ::c_int = 23; +cfg_if! { + if #[cfg(target_os = "espidf")] { + pub const PF_INET6: ::c_int = 10; + } else { + pub const PF_INET6: ::c_int = 23; + } +} pub const AF_UNSPEC: ::c_int = 0; pub const AF_INET: ::c_int = 2; @@ -540,6 +596,9 @@ cfg_if! { if #[cfg(target_os = "vita")] { pub const TCP_NODELAY: ::c_int = 1; pub const TCP_MAXSEG: ::c_int = 2; + } else if #[cfg(target_os = "espidf")] { + pub const TCP_NODELAY: ::c_int = 1; + pub const TCP_MAXSEG: ::c_int = 8194; } else { pub const TCP_NODELAY: ::c_int = 8193; pub const TCP_MAXSEG: ::c_int = 8194; @@ -548,13 +607,23 @@ cfg_if! { pub const TCP_NOPUSH: ::c_int = 4; pub const TCP_NOOPT: ::c_int = 8; -pub const TCP_KEEPIDLE: ::c_int = 256; -pub const TCP_KEEPINTVL: ::c_int = 512; -pub const TCP_KEEPCNT: ::c_int = 1024; +cfg_if! { + if #[cfg(target_os = "espidf")] { + pub const TCP_KEEPIDLE: ::c_int = 3; + pub const TCP_KEEPINTVL: ::c_int = 4; + pub const TCP_KEEPCNT: ::c_int = 5; + } else { + pub const TCP_KEEPIDLE: ::c_int = 256; + pub const TCP_KEEPINTVL: ::c_int = 512; + pub const TCP_KEEPCNT: ::c_int = 1024; + } +} cfg_if! { if #[cfg(target_os = "horizon")] { pub const IP_TOS: ::c_int = 7; + } else if #[cfg(target_os = "espidf")] { + pub const IP_TOS: ::c_int = 1; } else { pub const IP_TOS: ::c_int = 3; } @@ -562,55 +631,107 @@ cfg_if! { cfg_if! { if #[cfg(target_os = "vita")] { pub const IP_TTL: ::c_int = 4; + } else if #[cfg(target_os = "espidf")] { + pub const IP_TTL: ::c_int = 2; } else { pub const IP_TTL: ::c_int = 8; } } -pub const IP_MULTICAST_IF: ::c_int = 9; -pub const IP_MULTICAST_TTL: ::c_int = 10; -pub const IP_MULTICAST_LOOP: ::c_int = 11; + +cfg_if! { + if #[cfg(target_os = "espidf")] { + pub const IP_MULTICAST_IF: ::c_int = 6; + pub const IP_MULTICAST_TTL: ::c_int = 5; + pub const IP_MULTICAST_LOOP: ::c_int = 7; + } else { + pub const IP_MULTICAST_IF: ::c_int = 9; + pub const IP_MULTICAST_TTL: ::c_int = 10; + pub const IP_MULTICAST_LOOP: ::c_int = 11; + } +} + cfg_if! { if #[cfg(target_os = "vita")] { pub const IP_ADD_MEMBERSHIP: ::c_int = 12; pub const IP_DROP_MEMBERSHIP: ::c_int = 13; + } else if #[cfg(target_os = "espidf")] { + pub const IP_ADD_MEMBERSHIP: ::c_int = 3; + pub const IP_DROP_MEMBERSHIP: ::c_int = 4; } else { pub const IP_ADD_MEMBERSHIP: ::c_int = 11; pub const IP_DROP_MEMBERSHIP: ::c_int = 12; } } pub const IPV6_UNICAST_HOPS: ::c_int = 4; -pub const IPV6_MULTICAST_IF: ::c_int = 9; -pub const IPV6_MULTICAST_HOPS: ::c_int = 10; -pub const IPV6_MULTICAST_LOOP: ::c_int = 11; +cfg_if! { + if #[cfg(target_os = "espidf")] { + pub const IPV6_MULTICAST_IF: ::c_int = 768; + pub const IPV6_MULTICAST_HOPS: ::c_int = 769; + pub const IPV6_MULTICAST_LOOP: ::c_int = 770; + } else { + pub const IPV6_MULTICAST_IF: ::c_int = 9; + pub const IPV6_MULTICAST_HOPS: ::c_int = 10; + pub const IPV6_MULTICAST_LOOP: ::c_int = 11; + } +} pub const IPV6_V6ONLY: ::c_int = 27; pub const IPV6_JOIN_GROUP: ::c_int = 12; pub const IPV6_LEAVE_GROUP: ::c_int = 13; pub const IPV6_ADD_MEMBERSHIP: ::c_int = 12; pub const IPV6_DROP_MEMBERSHIP: ::c_int = 13; -pub const HOST_NOT_FOUND: ::c_int = 1; -pub const NO_DATA: ::c_int = 2; +cfg_if! { + if #[cfg(target_os = "espidf")] { + pub const HOST_NOT_FOUND: ::c_int = 210; + pub const NO_DATA: ::c_int = 211; + pub const NO_RECOVERY: ::c_int = 212; + pub const TRY_AGAIN: ::c_int = 213; + + } else { + pub const HOST_NOT_FOUND: ::c_int = 1; + pub const NO_DATA: ::c_int = 2; + pub const NO_RECOVERY: ::c_int = 3; + pub const TRY_AGAIN: ::c_int = 4; + } +} pub const NO_ADDRESS: ::c_int = 2; -pub const NO_RECOVERY: ::c_int = 3; -pub const TRY_AGAIN: ::c_int = 4; pub const AI_PASSIVE: ::c_int = 1; pub const AI_CANONNAME: ::c_int = 2; pub const AI_NUMERICHOST: ::c_int = 4; -pub const AI_NUMERICSERV: ::c_int = 0; -pub const AI_ADDRCONFIG: ::c_int = 0; +cfg_if! { + if #[cfg(target_os = "espidf")] { + pub const AI_NUMERICSERV: ::c_int = 8; + pub const AI_ADDRCONFIG: ::c_int = 64; + } else { + pub const AI_NUMERICSERV: ::c_int = 0; + pub const AI_ADDRCONFIG: ::c_int = 0; + } +} pub const NI_MAXHOST: ::c_int = 1025; pub const NI_MAXSERV: ::c_int = 32; pub const NI_NOFQDN: ::c_int = 1; pub const NI_NUMERICHOST: ::c_int = 2; pub const NI_NAMEREQD: ::c_int = 4; -pub const NI_NUMERICSERV: ::c_int = 0; -pub const NI_DGRAM: ::c_int = 0; +cfg_if! { + if #[cfg(target_os = "espidf")] { + pub const NI_NUMERICSERV: ::c_int = 8; + pub const NI_DGRAM: ::c_int = 16; + } else { + pub const NI_NUMERICSERV: ::c_int = 0; + pub const NI_DGRAM: ::c_int = 0; + } +} cfg_if! { // Defined in vita/mod.rs for "vita" - if #[cfg(not(target_os = "vita"))] { + if #[cfg(target_os = "espidf")] { + pub const EAI_FAMILY: ::c_int = 204; + pub const EAI_MEMORY: ::c_int = 203; + pub const EAI_NONAME: ::c_int = 200; + pub const EAI_SOCKTYPE: ::c_int = 10; + } else if #[cfg(not(target_os = "vita"))] { pub const EAI_FAMILY: ::c_int = -303; pub const EAI_MEMORY: ::c_int = -304; pub const EAI_NONAME: ::c_int = -305; @@ -792,6 +913,13 @@ cfg_if! { } } +cfg_if! { + if #[cfg(target_os = "rtems")] { + mod rtems; + pub use self::rtems::*; + } +} + cfg_if! { if #[cfg(libc_align)] { #[macro_use] diff --git a/.cargo-vendor/libc/src/unix/newlib/rtems/mod.rs b/.cargo-vendor/libc/src/unix/newlib/rtems/mod.rs new file mode 100644 index 0000000000..031754950e --- /dev/null +++ b/.cargo-vendor/libc/src/unix/newlib/rtems/mod.rs @@ -0,0 +1,143 @@ +// defined in architecture specific module +use c_long; + +s! { + pub struct sockaddr_un { + pub sun_family: ::sa_family_t, + pub sun_path: [::c_char; 108usize], + } +} + +pub const AF_UNIX: ::c_int = 1; + +pub const RTLD_DEFAULT: *mut ::c_void = -2isize as *mut ::c_void; + +pub const UTIME_OMIT: c_long = -1; +pub const AT_FDCWD: ::c_int = -2; + +pub const O_DIRECTORY: ::c_int = 0x200000; +pub const O_NOFOLLOW: ::c_int = 0x100000; + +pub const AT_EACCESS: ::c_int = 1; +pub const AT_SYMLINK_NOFOLLOW: ::c_int = 2; +pub const AT_SYMLINK_FOLLOW: ::c_int = 4; +pub const AT_REMOVEDIR: ::c_int = 8; + +// signal.h +pub const SIG_BLOCK: ::c_int = 1; +pub const SIG_UNBLOCK: ::c_int = 2; +pub const SIG_SETMASK: ::c_int = 0; +pub const SIGHUP: ::c_int = 1; +pub const SIGINT: ::c_int = 2; +pub const SIGQUIT: ::c_int = 3; +pub const SIGILL: ::c_int = 4; +pub const SIGTRAP: ::c_int = 5; +pub const SIGABRT: ::c_int = 6; +pub const SIGEMT: ::c_int = 7; +pub const SIGFPE: ::c_int = 8; +pub const SIGKILL: ::c_int = 9; +pub const SIGBUS: ::c_int = 10; +pub const SIGSEGV: ::c_int = 11; +pub const SIGSYS: ::c_int = 12; +pub const SIGPIPE: ::c_int = 13; +pub const SIGALRM: ::c_int = 14; +pub const SIGTERM: ::c_int = 15; +pub const SIGURG: ::c_int = 16; +pub const SIGSTOP: ::c_int = 17; +pub const SIGTSTP: ::c_int = 18; +pub const SIGCONT: ::c_int = 19; +pub const SIGCHLD: ::c_int = 20; +pub const SIGCLD: ::c_int = 20; +pub const SIGTTIN: ::c_int = 21; +pub const SIGTTOU: ::c_int = 22; +pub const SIGIO: ::c_int = 23; +pub const SIGWINCH: ::c_int = 24; +pub const SIGUSR1: ::c_int = 25; +pub const SIGUSR2: ::c_int = 26; +pub const SIGRTMIN: ::c_int = 27; +pub const SIGRTMAX: ::c_int = 31; +pub const SIGXCPU: ::c_int = 24; +pub const SIGXFSZ: ::c_int = 25; +pub const SIGVTALRM: ::c_int = 26; +pub const SIGPROF: ::c_int = 27; + +pub const SA_NOCLDSTOP: ::c_ulong = 0x00000001; +pub const SA_SIGINFO: ::c_ulong = 0x00000002; +pub const SA_ONSTACK: ::c_ulong = 0x00000004; + +pub const EAI_AGAIN: ::c_int = 2; +pub const EAI_BADFLAGS: ::c_int = 3; +pub const EAI_FAIL: ::c_int = 4; +pub const EAI_SERVICE: ::c_int = 9; +pub const EAI_SYSTEM: ::c_int = 11; +pub const EAI_OVERFLOW: ::c_int = 14; + +pub const _SC_PAGESIZE: ::c_int = 8; +pub const _SC_GETPW_R_SIZE_MAX: ::c_int = 51; +pub const PTHREAD_STACK_MIN: ::size_t = 0; + +// sys/wait.h +pub const WNOHANG: ::c_int = 1; +pub const WUNTRACED: ::c_int = 2; + +// sys/socket.h +pub const SOMAXCONN: ::c_int = 128; + +safe_f! { + pub {const} fn WIFSTOPPED(status: ::c_int) -> bool { + (status & 0xff) == 0x7f + } + + pub {const} fn WSTOPSIG(status: ::c_int) -> ::c_int { + // (status >> 8) & 0xff + WEXITSTATUS(status) + } + + pub {const} fn WIFSIGNALED(status: ::c_int) -> bool { + ((status & 0x7f) > 0) && ((status & 0x7f) < 0x7f) + } + + pub {const} fn WTERMSIG(status: ::c_int) -> ::c_int { + status & 0x7f + } + + pub {const} fn WIFEXITED(status: ::c_int) -> bool { + (status & 0xff) == 0 + } + + pub {const} fn WEXITSTATUS(status: ::c_int) -> ::c_int { + (status >> 8) & 0xff + } + + // RTEMS doesn't have native WIFCONTINUED. + pub {const} fn WIFCONTINUED(_status: ::c_int) -> bool { + true + } + + // RTEMS doesn't have native WCOREDUMP. + pub {const} fn WCOREDUMP(_status: ::c_int) -> bool { + false + } +} + +extern "C" { + pub fn futimens(fd: ::c_int, times: *const ::timespec) -> ::c_int; + pub fn writev(fd: ::c_int, iov: *const ::iovec, iovcnt: ::c_int) -> ::ssize_t; + pub fn readv(fd: ::c_int, iov: *const ::iovec, iovcnt: ::c_int) -> ::ssize_t; + + pub fn pthread_create( + native: *mut ::pthread_t, + attr: *const ::pthread_attr_t, + f: extern "C" fn(_: *mut ::c_void) -> *mut ::c_void, + value: *mut ::c_void, + ) -> ::c_int; + + pub fn pthread_condattr_setclock( + attr: *mut ::pthread_condattr_t, + clock_id: ::clockid_t, + ) -> ::c_int; + + pub fn getentropy(buf: *mut ::c_void, buflen: ::size_t) -> ::c_int; + + pub fn setgroups(ngroups: ::c_int, grouplist: *const ::gid_t) -> ::c_int; +} diff --git a/.cargo-vendor/libc/src/unix/nuttx/mod.rs b/.cargo-vendor/libc/src/unix/nuttx/mod.rs new file mode 100644 index 0000000000..e3a3c15b33 --- /dev/null +++ b/.cargo-vendor/libc/src/unix/nuttx/mod.rs @@ -0,0 +1,555 @@ +use c_void; +use in6_addr; +use in_addr_t; +use timespec; +use DIR; + +pub type nlink_t = u16; +pub type ino_t = u16; +pub type blkcnt_t = u64; +pub type blksize_t = i16; +pub type c_char = i8; +pub type c_long = isize; +pub type c_ulong = usize; +pub type cc_t = u8; +pub type clock_t = i64; +pub type dev_t = i32; +pub type fsblkcnt_t = u64; +pub type locale_t = *mut i8; +pub type mode_t = u32; +pub type nfds_t = u32; +pub type off_t = i64; +pub type pthread_key_t = i32; +pub type pthread_mutexattr_t = u8; +pub type pthread_rwlockattr_t = i32; +pub type pthread_t = i32; +pub type rlim_t = i64; +pub type sa_family_t = u16; +pub type socklen_t = u32; +pub type speed_t = usize; +pub type suseconds_t = i32; +pub type tcflag_t = u32; +pub type clockid_t = i32; +pub type time_t = i64; +pub type wchar_t = i32; + +s! { + pub struct stat { + pub st_dev: dev_t, + pub st_ino: ino_t, + pub st_mode: mode_t, + pub st_nlink: u64, + pub st_uid: u32, + pub st_gid: u32, + pub st_rdev: dev_t, + pub st_size: off_t, + pub st_atim: timespec, + pub st_mtim: timespec, + pub st_ctim: timespec, + pub st_blksize: blksize_t, + pub st_blocks: i64, + __reserved: [usize; __DEFAULT_RESERVED_SIZE__], + } + + pub struct sockaddr { + pub sa_family: sa_family_t, + pub sa_data: [u8; 14], + } + + pub struct passwd { + pub pw_name: *const c_char, + pub pw_uid: u32, + pub pw_gid: u32, + pub pw_gecos: *const c_char, + pub pw_dir: *const c_char, + pub pw_shell: *const c_char, + __reserved: [usize; __DEFAULT_RESERVED_SIZE__] + } + + pub struct sem_t { __val: [usize; __SEM_SIZE__] } + + pub struct pthread_attr_t { __val: [usize; __PTHREAD_ATTR_SIZE__] } + + pub struct pthread_mutex_t { __val: [usize; __PTHREAD_MUTEX_SIZE__] } + + pub struct pthread_cond_t { __val: [usize; __PTHREAD_COND_SIZE__] } + + pub struct pthread_condattr_t { __val: [usize; __PTHREAD_CONDATTR_SIZE__] } + + pub struct Dl_info { + pub dli_fname: *const c_char, + pub dli_fbase: *mut c_void, + pub dli_sname: *const c_char, + pub dli_saddr: *mut c_void, + } + + pub struct lconv { + pub decimal_point: *const c_char, + pub thousands_sep: *const c_char, + pub grouping: *const c_char, + pub int_curr_symbol: *const c_char, + pub currency_symbol: *const c_char, + pub mon_decimal_point: *const c_char, + pub mon_thousands_sep: *const c_char, + pub mon_grouping: *const c_char, + pub positive_sign: *const c_char, + pub negative_sign: *const c_char, + pub int_frac_digits: i8, + pub frac_digits: i8, + pub p_cs_precedes: i8, + pub p_sep_by_space: i8, + pub n_cs_precedes: i8, + pub n_sep_by_space: i8, + pub p_sign_posn: i8, + pub n_sign_posn: i8, + pub int_n_cs_precedes: i8, + pub int_n_sep_by_space: i8, + pub int_n_sign_posn: i8, + pub int_p_cs_precedes: i8, + pub int_p_sep_by_space: i8, + pub int_p_sign_posn: i8, + __reserved: [usize; __DEFAULT_RESERVED_SIZE__], + } + + pub struct tm { + pub tm_sec: i32, + pub tm_min: i32, + pub tm_hour: i32, + pub tm_mday: i32, + pub tm_mon: i32, + pub tm_year: i32, + pub tm_wday: i32, + pub tm_yday: i32, + pub tm_isdst: i32, + pub tm_gmtoff: isize, + pub tm_zone: *const i8, + __reserved: [usize; __DEFAULT_RESERVED_SIZE__], + } + + pub struct addrinfo { + pub ai_flags: i32, + pub ai_family: i32, + pub ai_socktype: i32, + pub ai_protocol: i32, + pub ai_addrlen: socklen_t, + pub ai_addr: *mut sockaddr, + pub ai_canonname: *mut c_char, + pub ai_next: *mut addrinfo, + __reserved: [usize; __DEFAULT_RESERVED_SIZE__], + } + + pub struct pthread_rwlock_t { + __val: [usize; __PTHREAD_RWLOCK_SIZE__], + } + + pub struct statvfs { + pub f_bsize: usize, + pub f_frsize: usize, + pub f_blocks: fsblkcnt_t, + pub f_bfree: fsblkcnt_t, + pub f_bavail: fsblkcnt_t, + pub f_files: fsblkcnt_t, + pub f_ffree: fsblkcnt_t, + pub f_favail: fsblkcnt_t, + pub f_fsid: usize, + pub f_flag: usize, + pub f_namemax: usize, + __reserved: [usize; __DEFAULT_RESERVED_SIZE__], + } + + pub struct dirent { + pub d_type: u8, + pub d_name: [i8; __NAME_MAX__ + 1], + } + + pub struct fd_set { + __val: [u32; __FDSET_SIZE__], + } + + pub struct sigset_t { + __val: [u32; __SIGSET_SIZE__], + } + + pub struct sigaction { + pub sa_handler: usize, + pub sa_mask: sigset_t, + pub sa_flags: i32, + pub sa_user: usize, + __reserved: [usize; __DEFAULT_RESERVED_SIZE__], + } + + pub struct termios { + pub c_iflag: tcflag_t, + pub c_oflag: tcflag_t, + pub c_cflag: tcflag_t, + pub c_lflag: tcflag_t, + pub c_cc: [cc_t; 12], + pub c_speed: speed_t, + __reserved: [usize; __DEFAULT_RESERVED_SIZE__], + } + + pub struct in_addr { + pub s_addr: in_addr_t, + } + + pub struct sockaddr_in { + pub sin_family: sa_family_t, + pub sin_port: ::in_port_t, + pub sin_addr: ::in_addr, + pub sin_zero: [u8; 8], + } + + pub struct sockaddr_in6 { + pub sin6_family: sa_family_t, + pub sin6_port: ::in_port_t, + pub sin6_flowinfo: u32, + pub sin6_addr: ::in6_addr, + pub sin6_scope_id: u32, + } + + pub struct sockaddr_un { + pub sun_family: sa_family_t, + pub sun_path: [c_char; 108], + } + + pub struct sockaddr_storage { + pub ss_family: sa_family_t, + ss_data: [u32; __SOCKADDR_STORAGE_SIZE__], + } + + pub struct ip_mreq { + pub imr_multiaddr: in_addr, + pub imr_interface: in_addr, + } + + pub struct ipv6_mreq { + pub ipv6mr_multiaddr: in6_addr, + pub ipv6mr_interface: u32, + } + + pub struct timeval { + pub tv_sec: time_t, + pub tv_usec: suseconds_t, + } +} + +// Reserved two pointer size for reserved area for some structures. +// This ensures that the size of these structures is large enough +// if more fields are added in the NuttX side. +// +// These structures are that defined by POSIX but only necessary fields are included, +// for example, struct passwd, https://pubs.opengroup.org/onlinepubs/009695399/basedefs/pwd.h.html, +// POSIX only defines following fields in struct passwd: +// char *pw_name User's login name. +// uid_t pw_uid Numerical user ID. +// gid_t pw_gid Numerical group ID. +// char *pw_dir Initial working directory. +// char *pw_shell Program to use as shell. +// Other fields can be different depending on the implementation. + +const __DEFAULT_RESERVED_SIZE__: usize = 2; + +const __SOCKADDR_STORAGE_SIZE__: usize = 36; +const __PTHREAD_ATTR_SIZE__: usize = 5; +const __PTHREAD_MUTEX_SIZE__: usize = 9; +const __PTHREAD_COND_SIZE__: usize = 7; +const __PTHREAD_CONDATTR_SIZE__: usize = 5; +const __PTHREAD_RWLOCK_SIZE__: usize = 17; +const __SEM_SIZE__: usize = 6; +const __NAME_MAX__: usize = 64; +const __FDSET_SIZE__: usize = 10; +const __SIGSET_SIZE__: usize = 8; + +pub const PTHREAD_COND_INITIALIZER: pthread_cond_t = pthread_cond_t { + __val: [0; __PTHREAD_COND_SIZE__], +}; +pub const PTHREAD_MUTEX_INITIALIZER: pthread_mutex_t = pthread_mutex_t { + __val: [0; __PTHREAD_MUTEX_SIZE__], +}; + +// dlfcn.h +pub const RTLD_DEFAULT: *mut c_void = 0 as *mut c_void; + +// stdlib.h +pub const EXIT_SUCCESS: i32 = 0; +pub const EXIT_FAILURE: i32 = 1; + +// time.h +pub const CLOCK_REALTIME: i32 = 0; +pub const CLOCK_MONOTONIC: i32 = 1; + +// errno.h +pub const EPERM: i32 = 1; +pub const ENOENT: i32 = 2; +pub const ESRCH: i32 = 3; +pub const EINTR: i32 = 4; +pub const EIO: i32 = 5; +pub const ENXIO: i32 = 6; +pub const E2BIG: i32 = 7; +pub const ENOEXEC: i32 = 8; +pub const EBADF: i32 = 9; +pub const ECHILD: i32 = 10; +pub const EAGAIN: i32 = 11; +pub const ENOMEM: i32 = 12; +pub const EACCES: i32 = 13; +pub const EFAULT: i32 = 14; +pub const ENOTBLK: i32 = 15; +pub const EBUSY: i32 = 16; +pub const EEXIST: i32 = 17; +pub const EXDEV: i32 = 18; +pub const ENODEV: i32 = 19; +pub const ENOTDIR: i32 = 20; +pub const EISDIR: i32 = 21; +pub const EINVAL: i32 = 22; +pub const ENFILE: i32 = 23; +pub const EMFILE: i32 = 24; +pub const ENOTTY: i32 = 25; +pub const ETXTBSY: i32 = 26; +pub const EFBIG: i32 = 27; +pub const ENOSPC: i32 = 28; +pub const ESPIPE: i32 = 29; +pub const EROFS: i32 = 30; +pub const EMLINK: i32 = 31; +pub const EPIPE: i32 = 32; +pub const EDOM: i32 = 33; +pub const ERANGE: i32 = 34; +pub const EDEADLK: i32 = 35; +pub const ENAMETOOLONG: i32 = 36; +pub const ENOLCK: i32 = 37; +pub const ENOSYS: i32 = 38; +pub const ENOTEMPTY: i32 = 39; +pub const ELOOP: i32 = 40; +pub const EWOULDBLOCK: i32 = EAGAIN; +pub const ENOMSG: i32 = 42; +pub const EIDRM: i32 = 43; +pub const ECHRNG: i32 = 44; +pub const EL2NSYNC: i32 = 45; +pub const EL3HLT: i32 = 46; +pub const EL3RST: i32 = 47; +pub const ELNRNG: i32 = 48; +pub const EUNATCH: i32 = 49; +pub const ENOCSI: i32 = 50; +pub const EL2HLT: i32 = 51; +pub const EBADE: i32 = 52; +pub const EBADR: i32 = 53; +pub const EXFULL: i32 = 54; +pub const ENOANO: i32 = 55; +pub const EBADRQC: i32 = 56; +pub const EBADSLT: i32 = 57; +pub const EDEADLOCK: i32 = EDEADLK; +pub const EBFONT: i32 = 59; +pub const ENOSTR: i32 = 60; +pub const ENODATA: i32 = 61; +pub const ETIME: i32 = 62; +pub const ENOSR: i32 = 63; +pub const ENONET: i32 = 64; +pub const ENOPKG: i32 = 65; +pub const EREMOTE: i32 = 66; +pub const ENOLINK: i32 = 67; +pub const EADV: i32 = 68; +pub const ESRMNT: i32 = 69; +pub const ECOMM: i32 = 70; +pub const EPROTO: i32 = 71; +pub const EMULTIHOP: i32 = 72; +pub const EDOTDOT: i32 = 73; +pub const EBADMSG: i32 = 74; +pub const EOVERFLOW: i32 = 75; +pub const ENOTUNIQ: i32 = 76; +pub const EBADFD: i32 = 77; +pub const EREMCHG: i32 = 78; +pub const ELIBACC: i32 = 79; +pub const ELIBBAD: i32 = 80; +pub const ELIBSCN: i32 = 81; +pub const ELIBMAX: i32 = 82; +pub const ELIBEXEC: i32 = 83; +pub const EILSEQ: i32 = 84; +pub const ERESTART: i32 = 85; +pub const ESTRPIPE: i32 = 86; +pub const EUSERS: i32 = 87; +pub const ENOTSOCK: i32 = 88; +pub const EDESTADDRREQ: i32 = 89; +pub const EMSGSIZE: i32 = 90; +pub const EPROTOTYPE: i32 = 91; +pub const ENOPROTOOPT: i32 = 92; +pub const EPROTONOSUPPORT: i32 = 93; +pub const ESOCKTNOSUPPORT: i32 = 94; +pub const EOPNOTSUPP: i32 = 95; +pub const EPFNOSUPPORT: i32 = 96; +pub const EAFNOSUPPORT: i32 = 97; +pub const EADDRINUSE: i32 = 98; +pub const EADDRNOTAVAIL: i32 = 99; +pub const ENETDOWN: i32 = 100; +pub const ENETUNREACH: i32 = 101; +pub const ENETRESET: i32 = 102; +pub const ECONNABORTED: i32 = 103; +pub const ECONNRESET: i32 = 104; +pub const ENOBUFS: i32 = 105; +pub const EISCONN: i32 = 106; +pub const ENOTCONN: i32 = 107; +pub const ESHUTDOWN: i32 = 108; +pub const ETOOMANYREFS: i32 = 109; +pub const ETIMEDOUT: i32 = 110; +pub const ECONNREFUSED: i32 = 111; +pub const EHOSTDOWN: i32 = 112; +pub const EHOSTUNREACH: i32 = 113; +pub const EALREADY: i32 = 114; +pub const EINPROGRESS: i32 = 115; +pub const ESTALE: i32 = 116; +pub const EUCLEAN: i32 = 117; +pub const ENOTNAM: i32 = 118; +pub const ENAVAIL: i32 = 119; +pub const EISNAM: i32 = 120; +pub const EREMOTEIO: i32 = 121; +pub const EDQUOT: i32 = 122; +pub const ENOMEDIUM: i32 = 123; +pub const EMEDIUMTYPE: i32 = 124; +pub const ECANCELED: i32 = 125; +pub const ENOKEY: i32 = 126; +pub const EKEYEXPIRED: i32 = 127; +pub const EKEYREVOKED: i32 = 128; +pub const EKEYREJECTED: i32 = 129; +pub const EOWNERDEAD: i32 = 130; +pub const ENOTRECOVERABLE: i32 = 131; +pub const ERFKILL: i32 = 132; +pub const EHWPOISON: i32 = 133; +pub const ELBIN: i32 = 134; +pub const EFTYPE: i32 = 135; +pub const ENMFILE: i32 = 136; +pub const EPROCLIM: i32 = 137; +pub const ENOTSUP: i32 = 138; +pub const ENOSHARE: i32 = 139; +pub const ECASECLASH: i32 = 140; + +// fcntl.h +pub const FIOCLEX: i32 = 0x30b; +pub const F_SETFL: i32 = 0x9; +pub const F_DUPFD_CLOEXEC: i32 = 0x12; +pub const F_GETFD: i32 = 0x1; +pub const F_GETFL: i32 = 0x2; +pub const O_RDONLY: i32 = 0x1; +pub const O_WRONLY: i32 = 0x2; +pub const O_RDWR: i32 = 0x3; +pub const O_CREAT: i32 = 0x4; +pub const O_EXCL: i32 = 0x8; +pub const O_NOCTTY: i32 = 0x0; +pub const O_TRUNC: i32 = 0x20; +pub const O_APPEND: i32 = 0x10; +pub const O_NONBLOCK: i32 = 0x40; +pub const O_DSYNC: i32 = 0x80; +pub const O_DIRECT: i32 = 0x200; +pub const O_LARGEFILE: i32 = 0x2000; +pub const O_DIRECTORY: i32 = 0x800; +pub const O_NOFOLLOW: i32 = 0x1000; +pub const O_NOATIME: i32 = 0x40000; +pub const O_CLOEXEC: i32 = 0x400; +pub const O_ACCMODE: i32 = 0x0003; +pub const AT_FDCWD: i32 = -100; +pub const AT_REMOVEDIR: i32 = 0x200; + +// sys/types.h +pub const SEEK_SET: i32 = 0; +pub const SEEK_CUR: i32 = 1; +pub const SEEK_END: i32 = 2; + +// sys/stat.h +pub const S_IFDIR: u32 = 0x4000; +pub const S_IFLNK: u32 = 0xA000; +pub const S_IFREG: u32 = 0x8000; +pub const S_IFMT: u32 = 0xF000; +pub const S_IFIFO: u32 = 0x1000; +pub const S_IFSOCK: u32 = 0xc000; +pub const S_IFBLK: u32 = 0x6000; +pub const S_IFCHR: u32 = 0x2000; +pub const S_IRUSR: u32 = 0x100; +pub const S_IWUSR: u32 = 0x80; +pub const S_IXUSR: u32 = 0x40; +pub const S_IRGRP: u32 = 0x20; +pub const S_IWGRP: u32 = 0x10; +pub const S_IXGRP: u32 = 0x8; +pub const S_IROTH: u32 = 0x004; +pub const S_IWOTH: u32 = 0x002; +pub const S_IXOTH: u32 = 0x001; + +// sys/poll.h +pub const POLLIN: i16 = 0x01; +pub const POLLOUT: i16 = 0x04; +pub const POLLHUP: i16 = 0x10; +pub const POLLERR: i16 = 0x08; +pub const POLLNVAL: i16 = 0x20; + +// sys/socket.h +pub const AF_UNIX: i32 = 1; +pub const SOCK_DGRAM: i32 = 2; +pub const SOCK_STREAM: i32 = 1; +pub const AF_INET: i32 = 2; +pub const AF_INET6: i32 = 10; +pub const MSG_PEEK: i32 = 0x02; +pub const SOL_SOCKET: i32 = 1; +pub const SHUT_WR: i32 = 2; +pub const SHUT_RD: i32 = 1; +pub const SHUT_RDWR: i32 = 3; +pub const SO_ERROR: i32 = 4; +pub const SO_REUSEADDR: i32 = 11; +pub const SOMAXCONN: i32 = 8; +pub const SO_LINGER: i32 = 6; +pub const SO_RCVTIMEO: i32 = 0xa; +pub const SO_SNDTIMEO: i32 = 0xe; +pub const SO_BROADCAST: i32 = 1; + +// netinet/tcp.h +pub const TCP_NODELAY: i32 = 0x10; + +// nuttx/fs/ioctl.h +pub const FIONBIO: i32 = 0x30a; + +// unistd.h +pub const STDIN_FILENO: i32 = 0; +pub const STDOUT_FILENO: i32 = 1; +pub const STDERR_FILENO: i32 = 2; +pub const _SC_PAGESIZE: i32 = 0x36; +pub const _SC_THREAD_STACK_MIN: i32 = 0x58; +pub const _SC_GETPW_R_SIZE_MAX: i32 = 0x25; + +// signal.h +pub const SIGPIPE: i32 = 13; + +// pthread.h +pub const PTHREAD_MUTEX_NORMAL: i32 = 0; + +// netinet/in.h +pub const IP_TTL: i32 = 0x1e; +pub const IPV6_V6ONLY: i32 = 0x17; +pub const IPV6_JOIN_GROUP: i32 = 0x11; +pub const IPV6_LEAVE_GROUP: i32 = 0x12; +pub const IP_MULTICAST_LOOP: i32 = 0x13; +pub const IPV6_MULTICAST_LOOP: i32 = 0x15; +pub const IP_MULTICAST_TTL: i32 = 0x12; +pub const IP_ADD_MEMBERSHIP: i32 = 0x14; +pub const IP_DROP_MEMBERSHIP: i32 = 0x15; + +extern "C" { + pub fn bind(sockfd: i32, addr: *const sockaddr, addrlen: socklen_t) -> i32; + pub fn ioctl(fd: i32, request: i32, ...) -> i32; + pub fn dirfd(dirp: *mut DIR) -> i32; + pub fn recvfrom( + sockfd: i32, + buf: *mut c_void, + len: usize, + flags: i32, + src_addr: *mut sockaddr, + addrlen: *mut socklen_t, + ) -> i32; + + pub fn pthread_create( + thread: *mut pthread_t, + attr: *const pthread_attr_t, + start_routine: extern "C" fn(*mut c_void) -> *mut c_void, + arg: *mut c_void, + ) -> i32; + + pub fn clock_gettime(clockid: clockid_t, tp: *mut timespec) -> i32; + pub fn futimens(fd: i32, times: *const timespec) -> i32; + pub fn pthread_condattr_setclock(attr: *mut pthread_condattr_t, clock_id: clockid_t) -> i32; + pub fn pthread_set_name_np(thread: pthread_t, name: *const c_char) -> i32; + pub fn getrandom(buf: *mut c_void, buflen: usize, flags: u32) -> isize; +} diff --git a/.cargo-vendor/libc/src/unix/redox/mod.rs b/.cargo-vendor/libc/src/unix/redox/mod.rs index 5036f45806..ac092a372b 100644 --- a/.cargo-vendor/libc/src/unix/redox/mod.rs +++ b/.cargo-vendor/libc/src/unix/redox/mod.rs @@ -22,7 +22,7 @@ pub type clockid_t = ::c_int; pub type dev_t = ::c_long; pub type fsblkcnt_t = ::c_ulong; pub type fsfilcnt_t = ::c_ulong; -pub type ino_t = ::c_ulong; +pub type ino_t = ::c_ulonglong; pub type mode_t = ::c_int; pub type nfds_t = ::c_ulong; pub type nlink_t = ::c_ulong; diff --git a/.cargo-vendor/libc/src/unix/solarish/illumos.rs b/.cargo-vendor/libc/src/unix/solarish/illumos.rs index ef3862ee41..614fd12eb0 100644 --- a/.cargo-vendor/libc/src/unix/solarish/illumos.rs +++ b/.cargo-vendor/libc/src/unix/solarish/illumos.rs @@ -28,6 +28,8 @@ pub const EFD_SEMAPHORE: ::c_int = 0x1; pub const EFD_NONBLOCK: ::c_int = 0x800; pub const EFD_CLOEXEC: ::c_int = 0x80000; +pub const POLLRDHUP: ::c_short = 0x4000; + pub const TCP_KEEPIDLE: ::c_int = 34; pub const TCP_KEEPCNT: ::c_int = 35; pub const TCP_KEEPINTVL: ::c_int = 36; @@ -56,6 +58,13 @@ pub const SOL_FILTER: ::c_int = 0xfffc; pub const MADV_PURGE: ::c_int = 9; +pub const POSIX_FADV_NORMAL: ::c_int = 0; +pub const POSIX_FADV_RANDOM: ::c_int = 1; +pub const POSIX_FADV_SEQUENTIAL: ::c_int = 2; +pub const POSIX_FADV_WILLNEED: ::c_int = 3; +pub const POSIX_FADV_DONTNEED: ::c_int = 4; +pub const POSIX_FADV_NOREUSE: ::c_int = 5; + pub const B1000000: ::speed_t = 24; pub const B1152000: ::speed_t = 25; pub const B1500000: ::speed_t = 26; @@ -96,8 +105,11 @@ extern "C" { stackaddr: *mut ::c_void, ) -> ::c_int; + pub fn posix_fadvise(fd: ::c_int, offset: ::off_t, len: ::off_t, advice: ::c_int) -> ::c_int; pub fn preadv(fd: ::c_int, iov: *const ::iovec, iovcnt: ::c_int, offset: ::off_t) -> ::ssize_t; pub fn pwritev(fd: ::c_int, iov: *const ::iovec, iovcnt: ::c_int, offset: ::off_t) -> ::ssize_t; pub fn getpagesizes2(pagesize: *mut ::size_t, nelem: ::c_int) -> ::c_int; + + pub fn ptsname_r(fildes: ::c_int, name: *mut ::c_char, namelen: ::size_t) -> ::c_int; } diff --git a/.cargo-vendor/libc/src/unix/solarish/mod.rs b/.cargo-vendor/libc/src/unix/solarish/mod.rs index 63056bfbd7..1cc6c429bc 100644 --- a/.cargo-vendor/libc/src/unix/solarish/mod.rs +++ b/.cargo-vendor/libc/src/unix/solarish/mod.rs @@ -1307,6 +1307,7 @@ pub const O_RDWR: ::c_int = 2; pub const O_NDELAY: ::c_int = 0x04; pub const O_APPEND: ::c_int = 8; pub const O_DSYNC: ::c_int = 0x40; +pub const O_RSYNC: ::c_int = 0x8000; pub const O_CREAT: ::c_int = 256; pub const O_EXCL: ::c_int = 1024; pub const O_NOCTTY: ::c_int = 2048; @@ -2168,7 +2169,7 @@ pub const PTHREAD_RWLOCK_INITIALIZER: pthread_rwlock_t = pthread_rwlock_t { pub const PTHREAD_MUTEX_NORMAL: ::c_int = 0; pub const PTHREAD_MUTEX_ERRORCHECK: ::c_int = 2; pub const PTHREAD_MUTEX_RECURSIVE: ::c_int = 4; -pub const PTHREAD_MUTEX_DEFAULT: ::c_int = PTHREAD_MUTEX_NORMAL; +pub const PTHREAD_MUTEX_DEFAULT: ::c_int = ::PTHREAD_MUTEX_NORMAL; pub const RTLD_NEXT: *mut ::c_void = -1isize as *mut ::c_void; pub const RTLD_DEFAULT: *mut ::c_void = -2isize as *mut ::c_void; @@ -2846,6 +2847,7 @@ extern "C" { #[cfg_attr(target_os = "illumos", link_name = "_globfree_ext")] pub fn globfree(pglob: *mut ::glob_t); + pub fn posix_fallocate(fd: ::c_int, offset: ::off_t, len: ::off_t) -> ::c_int; pub fn posix_madvise(addr: *mut ::c_void, len: ::size_t, advice: ::c_int) -> ::c_int; pub fn shmat(shmid: ::c_int, shmaddr: *const ::c_void, shmflg: ::c_int) -> *mut ::c_void; diff --git a/.cargo-vendor/libc/src/vxworks/mod.rs b/.cargo-vendor/libc/src/vxworks/mod.rs index 314283410a..f7adb5d682 100644 --- a/.cargo-vendor/libc/src/vxworks/mod.rs +++ b/.cargo-vendor/libc/src/vxworks/mod.rs @@ -253,7 +253,7 @@ s! { } // b_struct__Sched_param.h - pub struct _Sched_param { + pub struct sched_param { pub sched_priority: ::c_int, /* scheduling priority */ pub sched_ss_low_priority: ::c_int, /* low scheduling priority */ pub sched_ss_repl_period: ::_Timespec, /* replenishment period */ @@ -274,7 +274,7 @@ s! { pub threadAttrSchedpolicy : ::c_int, pub threadAttrName : *mut ::c_char, pub threadAttrOptions : ::c_int, - pub threadAttrSchedparam : ::_Sched_param, + pub threadAttrSchedparam : ::sched_param, } // signal.h @@ -613,6 +613,19 @@ pub const PTHREAD_MUTEX_DEFAULT: ::c_int = PTHREAD_MUTEX_NORMAL; pub const PTHREAD_STACK_MIN: usize = 4096; pub const _PTHREAD_SHARED_SEM_NAME_MAX: usize = 30; +//sched.h +pub const SCHED_FIFO: ::c_int = 0x01; +pub const SCHED_RR: ::c_int = 0x02; +pub const SCHED_OTHER: ::c_int = 0x04; +pub const SCHED_SPORADIC: ::c_int = 0x08; +pub const PRIO_PROCESS: ::c_uint = 0; +pub const SCHED_FIFO_HIGH_PRI: ::c_int = 255; +pub const SCHED_FIFO_LOW_PRI: ::c_int = 0; +pub const SCHED_RR_HIGH_PRI: ::c_int = 255; +pub const SCHED_RR_LOW_PRI: ::c_int = 0; +pub const SCHED_SPORADIC_HIGH_PRI: ::c_int = 255; +pub const SCHED_SPORADIC_LOW_PRI: ::c_int = 0; + // ERRNO STUFF pub const ERROR: ::c_int = -1; pub const OK: ::c_int = 0; @@ -1388,6 +1401,29 @@ extern "C" { value: *mut ::c_void, ) -> ::c_int; + //pthread.h + pub fn pthread_setschedparam( + native: ::pthread_t, + policy: ::c_int, + param: *const ::sched_param, + ) -> ::c_int; + + //pthread.h + pub fn pthread_getschedparam( + native: ::pthread_t, + policy: *mut ::c_int, + param: *mut ::sched_param, + ) -> ::c_int; + + //pthread.h + pub fn pthread_attr_setinheritsched( + attr: *mut ::pthread_attr_t, + inheritsched: ::c_int, + ) -> ::c_int; + + //pthread.h + pub fn pthread_attr_setschedpolicy(attr: *mut ::pthread_attr_t, policy: ::c_int) -> ::c_int; + // pthread.h pub fn pthread_attr_destroy(thread: *mut ::pthread_attr_t) -> ::c_int; @@ -1400,6 +1436,7 @@ extern "C" { parent: ::Option, child: ::Option, ) -> ::c_int; + // stat.h pub fn fstat(fildes: ::c_int, buf: *mut stat) -> ::c_int; @@ -1754,6 +1791,31 @@ extern "C" { // dirent.h pub fn closedir(ptr: *mut ::DIR) -> ::c_int; + //sched.h + pub fn sched_get_priority_max(policy: ::c_int) -> ::c_int; + + //sched.h + pub fn sched_get_priority_min(policy: ::c_int) -> ::c_int; + + //sched.h + pub fn sched_setparam(pid: ::pid_t, param: *const ::sched_param) -> ::c_int; + + //sched.h + pub fn sched_getparam(pid: ::pid_t, param: *mut ::sched_param) -> ::c_int; + + //sched.h + pub fn sched_setscheduler( + pid: ::pid_t, + policy: ::c_int, + param: *const ::sched_param, + ) -> ::c_int; + + //sched.h + pub fn sched_getscheduler(pid: ::pid_t) -> ::c_int; + + //sched.h + pub fn sched_rr_get_interval(pid: ::pid_t, tp: *mut ::timespec) -> ::c_int; + // sched.h pub fn sched_yield() -> ::c_int; @@ -1878,8 +1940,8 @@ extern "C" { pub fn mq_setattr(mqd: ::mqd_t, newattr: *const ::mq_attr, oldattr: *mut ::mq_attr) -> ::c_int; // vxCpuLib.h - fn vxCpuEnabledGet() -> ::cpuset_t; // Get set of running CPU's in the system - fn vxCpuConfiguredGet() -> ::cpuset_t; // Get set of Configured CPU's in the system + pub fn vxCpuEnabledGet() -> ::cpuset_t; // Get set of running CPU's in the system + pub fn vxCpuConfiguredGet() -> ::cpuset_t; // Get set of Configured CPU's in the system } //Dummy functions, these don't really exist in VxWorks. @@ -1980,6 +2042,12 @@ cfg_if! { } else if #[cfg(target_arch = "powerpc64")] { mod powerpc64; pub use self::powerpc64::*; + } else if #[cfg(target_arch = "riscv32")] { + mod riscv32; + pub use self::riscv32::*; + } else if #[cfg(target_arch = "riscv64")] { + mod riscv64; + pub use self::riscv64::*; } else { // Unknown target_arch } diff --git a/.cargo-vendor/libc/src/vxworks/riscv32.rs b/.cargo-vendor/libc/src/vxworks/riscv32.rs new file mode 100644 index 0000000000..e617bb83c6 --- /dev/null +++ b/.cargo-vendor/libc/src/vxworks/riscv32.rs @@ -0,0 +1,4 @@ +pub type c_char = i8; +pub type wchar_t = i32; +pub type c_long = i32; +pub type c_ulong = u32; diff --git a/.cargo-vendor/libc/src/vxworks/riscv64.rs b/.cargo-vendor/libc/src/vxworks/riscv64.rs new file mode 100644 index 0000000000..5e95ea2567 --- /dev/null +++ b/.cargo-vendor/libc/src/vxworks/riscv64.rs @@ -0,0 +1,4 @@ +pub type c_char = i8; +pub type wchar_t = i32; +pub type c_long = i64; +pub type c_ulong = u64; diff --git a/.cargo-vendor/ppv-lite86/.cargo-checksum.json b/.cargo-vendor/ppv-lite86/.cargo-checksum.json index 34bfe318fc..267f5c1c2b 100644 --- a/.cargo-vendor/ppv-lite86/.cargo-checksum.json +++ b/.cargo-vendor/ppv-lite86/.cargo-checksum.json @@ -1 +1 @@ -{"files":{"CHANGELOG.md":"0bd1d2bdb4a940a0d867a782644eb007e79611be0a8d74d4ba106e83597716df","Cargo.toml":"62202b5d2469759ff148a49a61a24f125f230751230204584caddf55769f3db8","LICENSE-APACHE":"0218327e7a480793ffdd4eb792379a9709e5c135c7ba267f709d6f6d4d70af0a","LICENSE-MIT":"4cada0bd02ea3692eee6f16400d86c6508bbd3bafb2b65fed0419f36d4f83e8f","src/generic.rs":"f6dd65824767012afc309e958450fcb5a98becfafaed494117faf08a497b5d3a","src/lib.rs":"45f498128e4843e920df48a285b26b87d2366983226b131e8f55535b45d03127","src/soft.rs":"df4c5502f9bc85c8d2ba3db4032b11fd4588d6580ba2262ef7839d2c5ba4b252","src/types.rs":"a1c9e993f85a99d1762597193d72ee8ff00c3f1116885040b4e4ecfbdedabf0a","src/x86_64/mod.rs":"d0085aab5710bbfa394c1a59cb1496483e2fa9f2f1f539372c3f353fef72bcc6","src/x86_64/sse2.rs":"313931537df6b97ca7246e7e85d12242f7faf308a50cd76557013729e3b83f67"},"package":"2288c0e17cc8d342c712bb43a257a80ebffce59cdb33d5000d8348f3ec02528b"} \ No newline at end of file +{"files":{"CHANGELOG.md":"0bd1d2bdb4a940a0d867a782644eb007e79611be0a8d74d4ba106e83597716df","Cargo.toml":"db172e26faf8c73a7456063fceb5db7ebeb9ea1945dfaca7aa1099ee9c6d5841","LICENSE-APACHE":"0218327e7a480793ffdd4eb792379a9709e5c135c7ba267f709d6f6d4d70af0a","LICENSE-MIT":"4cada0bd02ea3692eee6f16400d86c6508bbd3bafb2b65fed0419f36d4f83e8f","src/generic.rs":"b2ef3b6f39acb1c4ac1f361f948d61570a72f81fa9dc0c0ce8e067b8245827de","src/lib.rs":"45f498128e4843e920df48a285b26b87d2366983226b131e8f55535b45d03127","src/soft.rs":"cad6c11ccf31c93c35fbd64145972ad957ea3f18956e6ca8fdc85eea934fb0f2","src/types.rs":"a1c9e993f85a99d1762597193d72ee8ff00c3f1116885040b4e4ecfbdedabf0a","src/x86_64/mod.rs":"b6d3b8f5f84bd18e466d93fe896e667a41e03bf36b0d65257d1a3240c1de0e94","src/x86_64/sse2.rs":"71893b410f667b9919ac16e1659fbe5a360f2ba780ae178ddf29e54d556a7a48"},"package":"77957b295656769bb8ad2b6a6b09d897d94f05c41b069aede1fcdaa675eaea04"} \ No newline at end of file diff --git a/.cargo-vendor/ppv-lite86/Cargo.toml b/.cargo-vendor/ppv-lite86/Cargo.toml index 64ce835342..cddb4e480c 100644 --- a/.cargo-vendor/ppv-lite86/Cargo.toml +++ b/.cargo-vendor/ppv-lite86/Cargo.toml @@ -13,7 +13,7 @@ edition = "2021" rust-version = "1.61" name = "ppv-lite86" -version = "0.2.19" +version = "0.2.20" authors = ["The CryptoCorrosion Contributors"] build = false autobins = false @@ -40,10 +40,10 @@ path = "src/lib.rs" [dependencies.zerocopy] version = "0.7" -features = ["simd"] - -[dependencies.zerocopy-derive] -version = "0.7" +features = [ + "simd", + "derive", +] [features] default = ["std"] diff --git a/.cargo-vendor/ppv-lite86/src/generic.rs b/.cargo-vendor/ppv-lite86/src/generic.rs index 325877ef78..8989482a45 100644 --- a/.cargo-vendor/ppv-lite86/src/generic.rs +++ b/.cargo-vendor/ppv-lite86/src/generic.rs @@ -3,8 +3,7 @@ use crate::soft::{x2, x4}; use crate::types::*; use core::ops::*; -use zerocopy::{AsBytes, FromBytes}; -use zerocopy_derive::{AsBytes, FromBytes, FromZeroes}; +use zerocopy::{AsBytes, FromBytes, FromZeroes}; #[repr(C)] #[derive(Clone, Copy, FromBytes, AsBytes, FromZeroes)] diff --git a/.cargo-vendor/ppv-lite86/src/soft.rs b/.cargo-vendor/ppv-lite86/src/soft.rs index 038f3972cc..b2cf0e19ba 100644 --- a/.cargo-vendor/ppv-lite86/src/soft.rs +++ b/.cargo-vendor/ppv-lite86/src/soft.rs @@ -4,7 +4,7 @@ use crate::types::*; use crate::{vec128_storage, vec256_storage, vec512_storage}; use core::marker::PhantomData; use core::ops::*; -use zerocopy_derive::{AsBytes, FromBytes, FromZeroes}; +use zerocopy::{AsBytes, FromBytes, FromZeroes}; #[derive(Copy, Clone, Default, FromBytes, AsBytes, FromZeroes)] #[repr(transparent)] diff --git a/.cargo-vendor/ppv-lite86/src/x86_64/mod.rs b/.cargo-vendor/ppv-lite86/src/x86_64/mod.rs index cb4c298e90..9d22c0d6d4 100644 --- a/.cargo-vendor/ppv-lite86/src/x86_64/mod.rs +++ b/.cargo-vendor/ppv-lite86/src/x86_64/mod.rs @@ -2,7 +2,7 @@ use crate::types::*; use core::arch::x86_64::{__m128i, __m256i}; -use zerocopy_derive::{AsBytes, FromBytes, FromZeroes}; +use zerocopy::{AsBytes, FromBytes, FromZeroes}; mod sse2; diff --git a/.cargo-vendor/ppv-lite86/src/x86_64/sse2.rs b/.cargo-vendor/ppv-lite86/src/x86_64/sse2.rs index fba0c949a6..4b95911d4d 100644 --- a/.cargo-vendor/ppv-lite86/src/x86_64/sse2.rs +++ b/.cargo-vendor/ppv-lite86/src/x86_64/sse2.rs @@ -9,8 +9,7 @@ use core::marker::PhantomData; use core::ops::{ Add, AddAssign, BitAnd, BitAndAssign, BitOr, BitOrAssign, BitXor, BitXorAssign, Not, }; -use zerocopy::transmute; -use zerocopy_derive::{AsBytes, FromBytes, FromZeroes}; +use zerocopy::{transmute, AsBytes, FromBytes, FromZeroes}; macro_rules! impl_binop { ($vec:ident, $trait:ident, $fn:ident, $impl_fn:ident) => { @@ -1385,8 +1384,7 @@ pub mod avx2 { use core::arch::x86_64::*; use core::marker::PhantomData; use core::ops::*; - use zerocopy::transmute; - use zerocopy_derive::{AsBytes, FromBytes, FromZeroes}; + use zerocopy::{transmute, AsBytes, FromBytes, FromZeroes}; #[derive(Copy, Clone, FromBytes, AsBytes, FromZeroes)] #[repr(transparent)] diff --git a/.cargo-vendor/proc-macro2/.cargo-checksum.json b/.cargo-vendor/proc-macro2/.cargo-checksum.json index b0d735a3a2..6cd8bd00e1 100644 --- a/.cargo-vendor/proc-macro2/.cargo-checksum.json +++ b/.cargo-vendor/proc-macro2/.cargo-checksum.json @@ -1 +1 @@ -{"files":{"Cargo.toml":"41a9465146a2b62a642e29f065718649e686d3c9585736596392dd941c9b0bef","LICENSE-APACHE":"62c7a1e35f56406896d7aa7ca52d0cc0d272ac022b5d2796e7d6905db8a3636a","LICENSE-MIT":"23f18e03dc49df91622fe2a76176497404e46ced8a715d9d2b67a7446571cca3","README.md":"c609b6865476d6c35879784e9155367a97a0da496aa5c3c61488440a20f59883","build.rs":"cf78c0005f11d54ca42dbaee77cb76a440e6fa2e0b64798d3f74c04770a0ad2b","build/probe.rs":"971fd2178dc506ccdc5c2065c37b77696a4aee8e00330ca52625db4a857f68d3","rust-toolchain.toml":"6bbb61302978c736b2da03e4fb40e3beab908f85d533ab46fd541e637b5f3e0f","src/detection.rs":"ed9a5f9a979ab01247d7a68eeb1afa3c13209334c5bfff0f9289cb07e5bb4e8b","src/extra.rs":"29f094473279a29b71c3cc9f5fa27c2e2c30c670390cf7e4b7cf451486cc857e","src/fallback.rs":"be1ce5e32c88c29d41d2ab663375951817d52decce3dc9e335ec22378be8fa65","src/lib.rs":"97ca48f50ad15fbcef42b31fb4fbfb8e4a1c5f946d776aa44fd04b37d7c64b32","src/location.rs":"9225c5a55f03b56cce42bc55ceb509e8216a5e0b24c94aa1cd071b04e3d6c15f","src/marker.rs":"c11c5a1be8bdf18be3fcd224393f350a9aae7ce282e19ce583c84910c6903a8f","src/parse.rs":"4b77cddbc2752bc4d38a65acd8b96b6786c5220d19b1e1b37810257b5d24132d","src/rcvec.rs":"1c3c48c4f819927cc445ae15ca3bb06775feff2fd1cb21901ae4c40c7e6b4e82","src/wrapper.rs":"e41df9abc846b40f0cf01150d22b91944d07cde93bc72aa34798101652675844","tests/comments.rs":"31115b3a56c83d93eef2fb4c9566bf4543e302560732986161b98aef504785ed","tests/features.rs":"a86deb8644992a4eb64d9fd493eff16f9cf9c5cb6ade3a634ce0c990cf87d559","tests/marker.rs":"473e962ee1aa0633dd5cf9a973b3bbd0ef43b740d4b7f6d008ff455a6b89d386","tests/test.rs":"2e7106f582367d168638be7364d4e9aadbe0affca8b51dd80f0b3977cc2fcf83","tests/test_fmt.rs":"b7743b612af65f2c88cbe109d50a093db7aa7e87f9e37bf45b7bbaeb240aa020","tests/test_size.rs":"62d8373ea46b669b87bc90a9c49b6d02f90ff4c21f9a25acebf60c9926e01fb7"},"package":"5e719e8df665df0d1c8fbfd238015744736151d4445ec0836b8e628aae103b77"} \ No newline at end of file +{"files":{"Cargo.toml":"634793a6fc0a4fb424d2b8c5f4d84c814494380ad9f5c81ad0730dd1c9a20db1","LICENSE-APACHE":"62c7a1e35f56406896d7aa7ca52d0cc0d272ac022b5d2796e7d6905db8a3636a","LICENSE-MIT":"23f18e03dc49df91622fe2a76176497404e46ced8a715d9d2b67a7446571cca3","README.md":"c609b6865476d6c35879784e9155367a97a0da496aa5c3c61488440a20f59883","build.rs":"cf78c0005f11d54ca42dbaee77cb76a440e6fa2e0b64798d3f74c04770a0ad2b","build/probe.rs":"df0d73191f20c207bb1051a4944fb6962e1f632d1e0535aba4b995aa7feba8d1","rust-toolchain.toml":"6bbb61302978c736b2da03e4fb40e3beab908f85d533ab46fd541e637b5f3e0f","src/detection.rs":"ed9a5f9a979ab01247d7a68eeb1afa3c13209334c5bfff0f9289cb07e5bb4e8b","src/extra.rs":"29f094473279a29b71c3cc9f5fa27c2e2c30c670390cf7e4b7cf451486cc857e","src/fallback.rs":"be1ce5e32c88c29d41d2ab663375951817d52decce3dc9e335ec22378be8fa65","src/lib.rs":"b073933783beae6a8f43635eace6250dbfa2bdf4ebed0049f112d034af7c2183","src/location.rs":"9225c5a55f03b56cce42bc55ceb509e8216a5e0b24c94aa1cd071b04e3d6c15f","src/marker.rs":"c11c5a1be8bdf18be3fcd224393f350a9aae7ce282e19ce583c84910c6903a8f","src/parse.rs":"4b77cddbc2752bc4d38a65acd8b96b6786c5220d19b1e1b37810257b5d24132d","src/rcvec.rs":"1c3c48c4f819927cc445ae15ca3bb06775feff2fd1cb21901ae4c40c7e6b4e82","src/wrapper.rs":"d4afc41f00ca40088b50e35c0b622fb8b72ca7c091385c528d0290e44dfd07a5","tests/comments.rs":"31115b3a56c83d93eef2fb4c9566bf4543e302560732986161b98aef504785ed","tests/features.rs":"a86deb8644992a4eb64d9fd493eff16f9cf9c5cb6ade3a634ce0c990cf87d559","tests/marker.rs":"473e962ee1aa0633dd5cf9a973b3bbd0ef43b740d4b7f6d008ff455a6b89d386","tests/test.rs":"2e7106f582367d168638be7364d4e9aadbe0affca8b51dd80f0b3977cc2fcf83","tests/test_fmt.rs":"b7743b612af65f2c88cbe109d50a093db7aa7e87f9e37bf45b7bbaeb240aa020","tests/test_size.rs":"62d8373ea46b669b87bc90a9c49b6d02f90ff4c21f9a25acebf60c9926e01fb7"},"package":"7c3a7fc5db1e57d5a779a352c8cdb57b29aa4c40cc69c3a68a7fedc815fbf2f9"} \ No newline at end of file diff --git a/.cargo-vendor/proc-macro2/Cargo.toml b/.cargo-vendor/proc-macro2/Cargo.toml index feb3ed0bab..e24d832664 100644 --- a/.cargo-vendor/proc-macro2/Cargo.toml +++ b/.cargo-vendor/proc-macro2/Cargo.toml @@ -13,12 +13,13 @@ edition = "2021" rust-version = "1.56" name = "proc-macro2" -version = "1.0.86" +version = "1.0.88" authors = [ "David Tolnay ", "Alex Crichton ", ] build = "build.rs" +autolib = false autobins = false autoexamples = false autotests = false diff --git a/.cargo-vendor/proc-macro2/build/probe.rs b/.cargo-vendor/proc-macro2/build/probe.rs index 2c4947a0b8..79c8ae2336 100644 --- a/.cargo-vendor/proc-macro2/build/probe.rs +++ b/.cargo-vendor/proc-macro2/build/probe.rs @@ -13,6 +13,22 @@ pub fn byte_range(this: &Span) -> Range { this.byte_range() } +pub fn start(this: &Span) -> Span { + this.start() +} + +pub fn end(this: &Span) -> Span { + this.end() +} + +pub fn line(this: &Span) -> usize { + this.line() +} + +pub fn column(this: &Span) -> usize { + this.column() +} + pub fn join(this: &Span, other: Span) -> Option { this.join(other) } diff --git a/.cargo-vendor/proc-macro2/src/lib.rs b/.cargo-vendor/proc-macro2/src/lib.rs index 1430306bb3..43bac766a4 100644 --- a/.cargo-vendor/proc-macro2/src/lib.rs +++ b/.cargo-vendor/proc-macro2/src/lib.rs @@ -86,7 +86,7 @@ //! a different thread. // Proc-macro2 types in rustdoc of other crates get linked to here. -#![doc(html_root_url = "https://docs.rs/proc-macro2/1.0.86")] +#![doc(html_root_url = "https://docs.rs/proc-macro2/1.0.88")] #![cfg_attr(any(proc_macro_span, super_unstable), feature(proc_macro_span))] #![cfg_attr(super_unstable, feature(proc_macro_def_site))] #![cfg_attr(docsrs, feature(doc_cfg))] @@ -102,9 +102,11 @@ clippy::let_underscore_untyped, clippy::manual_assert, clippy::manual_range_contains, + clippy::missing_panics_doc, clippy::missing_safety_doc, clippy::must_use_candidate, clippy::needless_doctest_main, + clippy::needless_lifetimes, clippy::new_without_default, clippy::return_self_not_must_use, clippy::shadow_unrelated, @@ -833,10 +835,16 @@ impl Punct { /// The returned `Punct` will have the default span of `Span::call_site()` /// which can be further configured with the `set_span` method below. pub fn new(ch: char, spacing: Spacing) -> Self { - Punct { - ch, - spacing, - span: Span::call_site(), + if let '!' | '#' | '$' | '%' | '&' | '\'' | '*' | '+' | ',' | '-' | '.' | '/' | ':' | ';' + | '<' | '=' | '>' | '?' | '@' | '^' | '|' | '~' = ch + { + Punct { + ch, + spacing, + span: Span::call_site(), + } + } else { + panic!("unsupported proc macro punctuation character {:?}", ch); } } diff --git a/.cargo-vendor/proc-macro2/src/wrapper.rs b/.cargo-vendor/proc-macro2/src/wrapper.rs index 87e348dbb3..29481c13eb 100644 --- a/.cargo-vendor/proc-macro2/src/wrapper.rs +++ b/.cargo-vendor/proc-macro2/src/wrapper.rs @@ -477,6 +477,12 @@ impl Span { #[cfg(span_locations)] pub fn start(&self) -> LineColumn { match self { + #[cfg(proc_macro_span)] + Span::Compiler(s) => LineColumn { + line: s.line(), + column: s.column().saturating_sub(1), + }, + #[cfg(not(proc_macro_span))] Span::Compiler(_) => LineColumn { line: 0, column: 0 }, Span::Fallback(s) => s.start(), } @@ -485,6 +491,15 @@ impl Span { #[cfg(span_locations)] pub fn end(&self) -> LineColumn { match self { + #[cfg(proc_macro_span)] + Span::Compiler(s) => { + let end = s.end(); + LineColumn { + line: end.line(), + column: end.column().saturating_sub(1), + } + } + #[cfg(not(proc_macro_span))] Span::Compiler(_) => LineColumn { line: 0, column: 0 }, Span::Fallback(s) => s.end(), } diff --git a/.cargo-vendor/serde_json/.cargo-checksum.json b/.cargo-vendor/serde_json/.cargo-checksum.json index 7ddeb48066..988e75f90e 100644 --- a/.cargo-vendor/serde_json/.cargo-checksum.json +++ b/.cargo-vendor/serde_json/.cargo-checksum.json @@ -1 +1 @@ -{"files":{"CONTRIBUTING.md":"f5270cafba66223a7b51ffc0d286075a17bb7cd88762fc80d333d3102629f4d8","Cargo.toml":"ba4ed0881d1eb030190336aea006ee7c5d779fc6b800ef4ca0d51f17108fe4d6","LICENSE-APACHE":"62c7a1e35f56406896d7aa7ca52d0cc0d272ac022b5d2796e7d6905db8a3636a","LICENSE-MIT":"23f18e03dc49df91622fe2a76176497404e46ced8a715d9d2b67a7446571cca3","README.md":"f223b99630bae262eb2b88bb95d0f496db8f1ff4e94e43dbfc8d95d3a6c98d8f","build.rs":"1630d0bbfc936b0975d840cec5cfb5910d861b6afeeeeabe11000a2c202d571d","src/de.rs":"e2755b92b4e61d5fefa14ca93acaac5e7c21c0fbf7adc09e2a039d0bf8d94d5e","src/error.rs":"a9b5de0a82f95608b51b8e8875c7c49f94fb60b9f976fc6277aec0213926dec9","src/io/core.rs":"60ba28f67a9acaecf8964b611efba416b13f9f2bae4befc329fdf0e037293802","src/io/mod.rs":"fd1ed5080495cab21117f6f7d3c2c9e3687cad0c69a0cd087b08a145a9e672da","src/iter.rs":"f832c469cd7999d26ba9b76baa69b257a212a7edb3dfdf9b1d1bb35e8da85fa9","src/lexical/algorithm.rs":"bd6106e5d8875c9ff1c1d57256b459a4f0992d14a0df1a5fffcd3d3cbdccee8c","src/lexical/bhcomp.rs":"26f39d52008225a6b377d7246d326940d44200e160a7b4652733e712e1a45a04","src/lexical/bignum.rs":"db688e8112389998d0f91906f6857e28f9b510a8b4065ad476c8e8be2f77becf","src/lexical/cached.rs":"0e127398691f8042c19cde209e7f4b0161f0f3150342430145929f711e6fdac8","src/lexical/cached_float80.rs":"0f8f74a22cb7d871322a9893bffd0255ca10bf9dffd13afb2462dd3d7f51805f","src/lexical/digit.rs":"9502805adbc3da059131d1fac0a802e17065b36cd7472606b3af24e3241d5cb8","src/lexical/errors.rs":"3d9f6de6245533bcb101dfd718cfed61d59dc293f6768cedae28aa13ace164f5","src/lexical/exponent.rs":"51f19443008e8884b15c7d5d4b1f1cfbd5673a9d1da02f1af39fcf20e315f01f","src/lexical/float.rs":"fe356213c92a049f4bef2f58bc0e3a26866ca06b8c1d74d0f961c5b883852cad","src/lexical/large_powers.rs":"18d697b846b44ecb61bfaaa3b881e0696f9b7bb6be582623e9d3a8a176a48d2f","src/lexical/large_powers32.rs":"c70b57a727960beec258758a4d4a1050f8eaf3b4e60027c663a2bfb0246e0153","src/lexical/large_powers64.rs":"e7af83ce3159b5fc4669fc5a231e767d8af21bacaece52a0a48951198965b197","src/lexical/math.rs":"6866e8f8241bd718c8f599f17a589be17038533c38e16ac26e8294c49e400bbc","src/lexical/mod.rs":"ace2ccea2cd541f019a84b9eeb3b9ecd88daf6bccbe9edf0eac00b62704f47c4","src/lexical/num.rs":"2d06111d28616221995f7b4d4f13625b8d902884921268b0e02e544f871a5339","src/lexical/parse.rs":"c2bfac4c70a19938ced61e991f4ec606764887cf12bac1a0978b5b5318a56aac","src/lexical/rounding.rs":"4762af3612880b17468ff2a1bb800c8e99f08330ae439699dd53d8dc5463ad13","src/lexical/shift.rs":"bc1ed053dd63d45ac9c35302f18de9f00d94027f28af4ab749c9248439de832a","src/lexical/small_powers.rs":"73c56b7b83310c6fefa898fb94771c65bdc251c1579ab105151da43935ea02be","src/lib.rs":"ec4f48b3f5344692c30ae793ebc094090fd70e3841b7f9f9a92fea124f7d1129","src/macros.rs":"f917820b8e568b46b3fb4568bb131860d41d272446418d5708659b4bab246266","src/map.rs":"2cb5755d9cfa822a9a1ba43278be977d85d9f41e61277149befc98523c6fe9a3","src/number.rs":"537be73fe2f1f4c654a41e0b6461493ca7e3c20265163b3fb3405d047c163c1a","src/raw.rs":"74f5937706324c9325acc42597ff0a226faeaae38d270ab61ba6283e37616c86","src/read.rs":"5915d1ee818059e05c86df2540ca63140eaa1af9754a5233fcb967708df71e31","src/ser.rs":"ee5b6cb04c2ff7058b52cb5d0383218f484505ce0896e5c7fd5076bd9d90952e","src/value/de.rs":"890d88303ce0036a5efd1c57378dab7f8c45dabd798cece2248c2d9db52fa011","src/value/from.rs":"add9687e35db3962729d986c8aa54785cadeb07b8b7121cd4075e3a37ecc73a1","src/value/index.rs":"93eb54ba9d74f6853e080418774e8854d4fd965c4a94c52507d5109a1ad949ca","src/value/mod.rs":"3fc652476a2fc3e4791dd000ff8f2c22e725cf46041c2b89099f293074ae2bb8","src/value/partial_eq.rs":"655fd0bf3ab1d6669444a55ab849f43bb333032de8ca8f1ee95e1068da43ee22","src/value/ser.rs":"2cbed8aec4c714e73145d6c2d84fb9443f010c31c6e766dfeed61a4e9810807f","tests/compiletest.rs":"4e381aa8ca3eabb7ac14d1e0c3700b3223e47640547a6988cfa13ad68255f60f","tests/debug.rs":"a8451217c1e127ad6e653ef11e0513525ee350e1e37dd575758a8ee9301b28fb","tests/lexical.rs":"8ee6e617ef62a090de49ac2a930130a6913ab5316100781543c7788f89ef99c2","tests/lexical/algorithm.rs":"da378df9ee24bfa033968d5c94e91b58e52c39bf6c825dec51c3eb7250cc5874","tests/lexical/exponent.rs":"dc8fa8d05e561ff256f8b09385291768c7f45e5ad6cb878ef9194757aa014386","tests/lexical/float.rs":"0440f2d85c993bcccd925096d7f4136bf624ffd66b3c7ee565d158390685eb11","tests/lexical/math.rs":"4142ef090f563df1f6b14c9a4e6d4723535fa816dca3febc94b3423240e9db20","tests/lexical/num.rs":"e0bdc3b4facd579e9cfdf87c8bae107ed227c63cf9ef920fd85e9febb985c693","tests/lexical/parse.rs":"a11f09bb003a3a024548008cf78bf76526ed71b00077d1989f45eb8cebc93b9c","tests/lexical/rounding.rs":"6c56e39ba534616c1b2146e8efa6eb57aed322e683bf23183cd32a61fae6447e","tests/macros/mod.rs":"93aa1d54af20bc2c55b6ae8db73c1414cda2626eb9fa7bd57b9d613a3c6e6a19","tests/map.rs":"c83b59fbfa6f157b552ccd3536f46ddf63d7b5aa9fdb1dfb698a226a0b53a13b","tests/regression.rs":"86731134bfb9bb693d9a4fc62393027de80a8bf031109ea6c7ea475b1ebdde8d","tests/regression/issue1004.rs":"38d7e3b6c515b881078ebd21ca8063d2ca105cd319695d29538f879e37f091b5","tests/regression/issue520.rs":"f95b362e45c57b431720c48eb47f7ddddf4078195d6859df523dc32950ce980a","tests/regression/issue795.rs":"37ff26744b1f950dd212565c6e3f276268882f7724cc589ac8b21ca8bd608413","tests/regression/issue845.rs":"10d2895cd1412cb6630f0a59db367f79ee672edb501151c7581e9921b5a84b92","tests/regression/issue953.rs":"b2cddc761f5ca6639900c173765a8a5868528a896924e5e925db2696469208f7","tests/stream.rs":"794b672b52eb8f1696b32b8dd125a660fc19b83fcfef5390896b02149b5f0a9b","tests/test.rs":"851dcfa5c9c65909fb7d90bd2523d3ea4e1b41331486ef3f6c139234de4a949e","tests/ui/missing_colon.rs":"d07e0c34d98eb43465f0a0310f2c0b5d5b0d26d243b352a1c6bbe6ad3b27eda9","tests/ui/missing_colon.stderr":"a543cf9931a6224ba74f4592ea551f19438752c09427c649cd0211d363e88e75","tests/ui/missing_comma.rs":"b8a9662f99c3e6dd2b6417892c37640578ce91d3a8365bf10c1f686a3227aa87","tests/ui/missing_comma.stderr":"eae626cf93c97abd105066e624ca4e8cb096784413b9d2564cf9414a8492bc4d","tests/ui/missing_value.rs":"bca25d67127fb88e7c191c7b03af5a4ce8a9abb630f3d2e6a6c1e77e213dc9a4","tests/ui/missing_value.stderr":"a03be58cfa3d80cf1bd967bc8473933e87226db69c7967710084b13ca43bccdc","tests/ui/not_found.rs":"d0a7adb309879ff65aee115b52cc33d36f4bad353cf97c4effc34a6128c2bee3","tests/ui/not_found.stderr":"359b751c0c21fab6d460daef4d5f73a265f7769c9b578f98ea3cb6cbf2387643","tests/ui/parse_expr.rs":"32e6d51f528db3d1ab0ed1e24765b865be393565c26f77413c5aa39d601ac563","tests/ui/parse_expr.stderr":"4fcd0a014fbce31c9266bab8527d6e6b6806a0e21d9e0275ce713137856073ce","tests/ui/parse_key.rs":"18829b2af320d5cf8a0a5cd3aaf84c7e92cc874651c30e45a3acafb76c2d8b93","tests/ui/parse_key.stderr":"20cf0d2898749f3c36780fc065f5049ee809e74cb6f0ef776f43f45e01596ee3","tests/ui/unexpected_after_array_element.rs":"a343fc3104431720bdfcf330bcc3cfcd98c8dec3e951133b495242478b0b7eb3","tests/ui/unexpected_after_array_element.stderr":"8df615998fa3057bb9ed865981a35cdbb771625337048f0ad3fba7734e607adf","tests/ui/unexpected_after_map_entry.rs":"6e3bd2def435ca610e346bbc75cdbaf61963eb2ef1885bb5f76781ba1fac37ef","tests/ui/unexpected_after_map_entry.stderr":"b1985c89075ab48b2158bd1705ed766d37854b3d4620ab257cc8bc319d224f17","tests/ui/unexpected_colon.rs":"a313cff3fed4be4c33f1eda5d0c5c98147fb835a56d36470d9f367352c1d61ef","tests/ui/unexpected_colon.stderr":"b2288742fa6a4a7eb65d2ae899bcfed8795b57bd04958da227d60928a8df26c5","tests/ui/unexpected_comma.rs":"55a8b684bde1ce905837cce719fd457d8898b61cebc27e5b420d05cb6be97256","tests/ui/unexpected_comma.stderr":"4c103ca63ff15e2ca659242cc0eae0612bf050e7580da62f1cf50de8082aa7dc"},"package":"6ff5456707a1de34e7e37f2a6fd3d3f808c318259cbd01ab6377795054b483d8"} \ No newline at end of file +{"files":{"CONTRIBUTING.md":"f5270cafba66223a7b51ffc0d286075a17bb7cd88762fc80d333d3102629f4d8","Cargo.toml":"0ce7e6ec7ffd3636b2761243597a286dfbfd842ab28be49a17ccb65d2fb3987c","LICENSE-APACHE":"62c7a1e35f56406896d7aa7ca52d0cc0d272ac022b5d2796e7d6905db8a3636a","LICENSE-MIT":"23f18e03dc49df91622fe2a76176497404e46ced8a715d9d2b67a7446571cca3","README.md":"f223b99630bae262eb2b88bb95d0f496db8f1ff4e94e43dbfc8d95d3a6c98d8f","build.rs":"1630d0bbfc936b0975d840cec5cfb5910d861b6afeeeeabe11000a2c202d571d","src/de.rs":"9cd5deba101973d24f0184aa57487ee49d475d7867e557af6399e989eac49dd5","src/error.rs":"a9b5de0a82f95608b51b8e8875c7c49f94fb60b9f976fc6277aec0213926dec9","src/io/core.rs":"60ba28f67a9acaecf8964b611efba416b13f9f2bae4befc329fdf0e037293802","src/io/mod.rs":"fd1ed5080495cab21117f6f7d3c2c9e3687cad0c69a0cd087b08a145a9e672da","src/iter.rs":"f832c469cd7999d26ba9b76baa69b257a212a7edb3dfdf9b1d1bb35e8da85fa9","src/lexical/algorithm.rs":"bd6106e5d8875c9ff1c1d57256b459a4f0992d14a0df1a5fffcd3d3cbdccee8c","src/lexical/bhcomp.rs":"26f39d52008225a6b377d7246d326940d44200e160a7b4652733e712e1a45a04","src/lexical/bignum.rs":"db688e8112389998d0f91906f6857e28f9b510a8b4065ad476c8e8be2f77becf","src/lexical/cached.rs":"0e127398691f8042c19cde209e7f4b0161f0f3150342430145929f711e6fdac8","src/lexical/cached_float80.rs":"0f8f74a22cb7d871322a9893bffd0255ca10bf9dffd13afb2462dd3d7f51805f","src/lexical/digit.rs":"9502805adbc3da059131d1fac0a802e17065b36cd7472606b3af24e3241d5cb8","src/lexical/errors.rs":"3d9f6de6245533bcb101dfd718cfed61d59dc293f6768cedae28aa13ace164f5","src/lexical/exponent.rs":"51f19443008e8884b15c7d5d4b1f1cfbd5673a9d1da02f1af39fcf20e315f01f","src/lexical/float.rs":"fe356213c92a049f4bef2f58bc0e3a26866ca06b8c1d74d0f961c5b883852cad","src/lexical/large_powers.rs":"18d697b846b44ecb61bfaaa3b881e0696f9b7bb6be582623e9d3a8a176a48d2f","src/lexical/large_powers32.rs":"c70b57a727960beec258758a4d4a1050f8eaf3b4e60027c663a2bfb0246e0153","src/lexical/large_powers64.rs":"e7af83ce3159b5fc4669fc5a231e767d8af21bacaece52a0a48951198965b197","src/lexical/math.rs":"00519897ba54fb282102549a8c2a973af1f6534fcba1e283436b00141baccc13","src/lexical/mod.rs":"ace2ccea2cd541f019a84b9eeb3b9ecd88daf6bccbe9edf0eac00b62704f47c4","src/lexical/num.rs":"2d06111d28616221995f7b4d4f13625b8d902884921268b0e02e544f871a5339","src/lexical/parse.rs":"c2bfac4c70a19938ced61e991f4ec606764887cf12bac1a0978b5b5318a56aac","src/lexical/rounding.rs":"4762af3612880b17468ff2a1bb800c8e99f08330ae439699dd53d8dc5463ad13","src/lexical/shift.rs":"bc1ed053dd63d45ac9c35302f18de9f00d94027f28af4ab749c9248439de832a","src/lexical/small_powers.rs":"73c56b7b83310c6fefa898fb94771c65bdc251c1579ab105151da43935ea02be","src/lib.rs":"ecdde50f18a9c646d2cd73f4b4540d3a18d5660229c4a066bbbf2e97a4e9c418","src/macros.rs":"f917820b8e568b46b3fb4568bb131860d41d272446418d5708659b4bab246266","src/map.rs":"735ad82c183f944ff1fdc5c3870a0358f9bc4cf1fed68ea8e58e285667b39d3e","src/number.rs":"186c2da2243afda82848a81fa401142ae8cc58ed820b3c3155b1dd5ab58f52fa","src/raw.rs":"74f5937706324c9325acc42597ff0a226faeaae38d270ab61ba6283e37616c86","src/read.rs":"6873d67c56234479bc50b665a844530d55a0f2d4adc7efdf123e4b81e52af100","src/ser.rs":"8e8981887d7b0949dc33caba04ca3ea20e1deafa5a947acd9cfc7bc8b9b9923f","src/value/de.rs":"a0aeae9ad7dbc1c01a7de0276aab95d9e1a745573ea3eb6bece4cb391a4f6113","src/value/from.rs":"f355d23945edf8e64ff8e55ae124a09bbb58fb03cf9795331b767de6b45372e4","src/value/index.rs":"8afacb0fef798745c3be102fcb7a8cc407536c918a73a90dfc613ae4fc49a5e6","src/value/mod.rs":"063b36e08e830718141cf1e06fb499edf40522303785f6e7971f4ee538742597","src/value/partial_eq.rs":"655fd0bf3ab1d6669444a55ab849f43bb333032de8ca8f1ee95e1068da43ee22","src/value/ser.rs":"5c22325737d29aa3b3c7906c73f38edb432321f695a68ee580747c4cb03b7db3","tests/compiletest.rs":"4e381aa8ca3eabb7ac14d1e0c3700b3223e47640547a6988cfa13ad68255f60f","tests/debug.rs":"a8451217c1e127ad6e653ef11e0513525ee350e1e37dd575758a8ee9301b28fb","tests/lexical.rs":"8ee6e617ef62a090de49ac2a930130a6913ab5316100781543c7788f89ef99c2","tests/lexical/algorithm.rs":"da378df9ee24bfa033968d5c94e91b58e52c39bf6c825dec51c3eb7250cc5874","tests/lexical/exponent.rs":"dc8fa8d05e561ff256f8b09385291768c7f45e5ad6cb878ef9194757aa014386","tests/lexical/float.rs":"0440f2d85c993bcccd925096d7f4136bf624ffd66b3c7ee565d158390685eb11","tests/lexical/math.rs":"4142ef090f563df1f6b14c9a4e6d4723535fa816dca3febc94b3423240e9db20","tests/lexical/num.rs":"e0bdc3b4facd579e9cfdf87c8bae107ed227c63cf9ef920fd85e9febb985c693","tests/lexical/parse.rs":"a11f09bb003a3a024548008cf78bf76526ed71b00077d1989f45eb8cebc93b9c","tests/lexical/rounding.rs":"6c56e39ba534616c1b2146e8efa6eb57aed322e683bf23183cd32a61fae6447e","tests/macros/mod.rs":"93aa1d54af20bc2c55b6ae8db73c1414cda2626eb9fa7bd57b9d613a3c6e6a19","tests/map.rs":"232a980d98b0ceac022ad34d25b0a0fc613389784222a45da4f5650a9414a847","tests/regression.rs":"4551a0770c53631d66da2399e3d213b5fe023b3fb9cc02438842eeb688dbe400","tests/regression/issue1004.rs":"38d7e3b6c515b881078ebd21ca8063d2ca105cd319695d29538f879e37f091b5","tests/regression/issue520.rs":"f95b362e45c57b431720c48eb47f7ddddf4078195d6859df523dc32950ce980a","tests/regression/issue795.rs":"37ff26744b1f950dd212565c6e3f276268882f7724cc589ac8b21ca8bd608413","tests/regression/issue845.rs":"10d2895cd1412cb6630f0a59db367f79ee672edb501151c7581e9921b5a84b92","tests/regression/issue953.rs":"b2cddc761f5ca6639900c173765a8a5868528a896924e5e925db2696469208f7","tests/stream.rs":"794b672b52eb8f1696b32b8dd125a660fc19b83fcfef5390896b02149b5f0a9b","tests/test.rs":"a3953e6010e31a9f30b6a8dbabec37daf14f18244ae547bb5c1058c54ebf3283","tests/ui/missing_colon.rs":"d07e0c34d98eb43465f0a0310f2c0b5d5b0d26d243b352a1c6bbe6ad3b27eda9","tests/ui/missing_colon.stderr":"a543cf9931a6224ba74f4592ea551f19438752c09427c649cd0211d363e88e75","tests/ui/missing_comma.rs":"b8a9662f99c3e6dd2b6417892c37640578ce91d3a8365bf10c1f686a3227aa87","tests/ui/missing_comma.stderr":"eae626cf93c97abd105066e624ca4e8cb096784413b9d2564cf9414a8492bc4d","tests/ui/missing_value.rs":"bca25d67127fb88e7c191c7b03af5a4ce8a9abb630f3d2e6a6c1e77e213dc9a4","tests/ui/missing_value.stderr":"a03be58cfa3d80cf1bd967bc8473933e87226db69c7967710084b13ca43bccdc","tests/ui/not_found.rs":"d0a7adb309879ff65aee115b52cc33d36f4bad353cf97c4effc34a6128c2bee3","tests/ui/not_found.stderr":"359b751c0c21fab6d460daef4d5f73a265f7769c9b578f98ea3cb6cbf2387643","tests/ui/parse_expr.rs":"32e6d51f528db3d1ab0ed1e24765b865be393565c26f77413c5aa39d601ac563","tests/ui/parse_expr.stderr":"4fcd0a014fbce31c9266bab8527d6e6b6806a0e21d9e0275ce713137856073ce","tests/ui/parse_key.rs":"18829b2af320d5cf8a0a5cd3aaf84c7e92cc874651c30e45a3acafb76c2d8b93","tests/ui/parse_key.stderr":"20cf0d2898749f3c36780fc065f5049ee809e74cb6f0ef776f43f45e01596ee3","tests/ui/unexpected_after_array_element.rs":"a343fc3104431720bdfcf330bcc3cfcd98c8dec3e951133b495242478b0b7eb3","tests/ui/unexpected_after_array_element.stderr":"8df615998fa3057bb9ed865981a35cdbb771625337048f0ad3fba7734e607adf","tests/ui/unexpected_after_map_entry.rs":"6e3bd2def435ca610e346bbc75cdbaf61963eb2ef1885bb5f76781ba1fac37ef","tests/ui/unexpected_after_map_entry.stderr":"b1985c89075ab48b2158bd1705ed766d37854b3d4620ab257cc8bc319d224f17","tests/ui/unexpected_colon.rs":"a313cff3fed4be4c33f1eda5d0c5c98147fb835a56d36470d9f367352c1d61ef","tests/ui/unexpected_colon.stderr":"b2288742fa6a4a7eb65d2ae899bcfed8795b57bd04958da227d60928a8df26c5","tests/ui/unexpected_comma.rs":"55a8b684bde1ce905837cce719fd457d8898b61cebc27e5b420d05cb6be97256","tests/ui/unexpected_comma.stderr":"4c103ca63ff15e2ca659242cc0eae0612bf050e7580da62f1cf50de8082aa7dc"},"package":"d726bfaff4b320266d395898905d0eba0345aae23b54aee3a737e260fd46db03"} \ No newline at end of file diff --git a/.cargo-vendor/serde_json/Cargo.toml b/.cargo-vendor/serde_json/Cargo.toml index e9f7716d63..dec027d68a 100644 --- a/.cargo-vendor/serde_json/Cargo.toml +++ b/.cargo-vendor/serde_json/Cargo.toml @@ -13,12 +13,13 @@ edition = "2021" rust-version = "1.56" name = "serde_json" -version = "1.0.128" +version = "1.0.132" authors = [ "Erick Tryzelaar ", "David Tolnay ", ] build = "build.rs" +autolib = false autobins = false autoexamples = false autotests = false diff --git a/.cargo-vendor/serde_json/src/de.rs b/.cargo-vendor/serde_json/src/de.rs index bd6f2e50ca..5b64138d87 100644 --- a/.cargo-vendor/serde_json/src/de.rs +++ b/.cargo-vendor/serde_json/src/de.rs @@ -1378,7 +1378,7 @@ macro_rules! check_recursion { }; } -impl<'de, 'a, R: Read<'de>> de::Deserializer<'de> for &'a mut Deserializer { +impl<'de, R: Read<'de>> de::Deserializer<'de> for &mut Deserializer { type Error = Error; #[inline] @@ -1926,31 +1926,37 @@ impl<'de, 'a, R: Read<'de> + 'a> de::SeqAccess<'de> for SeqAccess<'a, R> { where T: de::DeserializeSeed<'de>, { - let peek = match tri!(self.de.parse_whitespace()) { - Some(b']') => { - return Ok(None); - } - Some(b',') if !self.first => { - self.de.eat_char(); - tri!(self.de.parse_whitespace()) - } - Some(b) => { - if self.first { - self.first = false; - Some(b) - } else { - return Err(self.de.peek_error(ErrorCode::ExpectedListCommaOrEnd)); + fn has_next_element<'de, 'a, R: Read<'de> + 'a>( + seq: &mut SeqAccess<'a, R>, + ) -> Result { + let peek = match tri!(seq.de.parse_whitespace()) { + Some(b) => b, + None => { + return Err(seq.de.peek_error(ErrorCode::EofWhileParsingList)); } + }; + + if peek == b']' { + Ok(false) + } else if seq.first { + seq.first = false; + Ok(true) + } else if peek == b',' { + seq.de.eat_char(); + match tri!(seq.de.parse_whitespace()) { + Some(b']') => Err(seq.de.peek_error(ErrorCode::TrailingComma)), + Some(_) => Ok(true), + None => Err(seq.de.peek_error(ErrorCode::EofWhileParsingValue)), + } + } else { + Err(seq.de.peek_error(ErrorCode::ExpectedListCommaOrEnd)) } - None => { - return Err(self.de.peek_error(ErrorCode::EofWhileParsingList)); - } - }; + } - match peek { - Some(b']') => Err(self.de.peek_error(ErrorCode::TrailingComma)), - Some(_) => Ok(Some(tri!(seed.deserialize(&mut *self.de)))), - None => Err(self.de.peek_error(ErrorCode::EofWhileParsingValue)), + if tri!(has_next_element(self)) { + Ok(Some(tri!(seed.deserialize(&mut *self.de)))) + } else { + Ok(None) } } } @@ -1973,32 +1979,40 @@ impl<'de, 'a, R: Read<'de> + 'a> de::MapAccess<'de> for MapAccess<'a, R> { where K: de::DeserializeSeed<'de>, { - let peek = match tri!(self.de.parse_whitespace()) { - Some(b'}') => { - return Ok(None); - } - Some(b',') if !self.first => { - self.de.eat_char(); - tri!(self.de.parse_whitespace()) - } - Some(b) => { - if self.first { - self.first = false; - Some(b) + fn has_next_key<'de, 'a, R: Read<'de> + 'a>(map: &mut MapAccess<'a, R>) -> Result { + let peek = match tri!(map.de.parse_whitespace()) { + Some(b) => b, + None => { + return Err(map.de.peek_error(ErrorCode::EofWhileParsingObject)); + } + }; + + if peek == b'}' { + Ok(false) + } else if map.first { + map.first = false; + if peek == b'"' { + Ok(true) } else { - return Err(self.de.peek_error(ErrorCode::ExpectedObjectCommaOrEnd)); + Err(map.de.peek_error(ErrorCode::KeyMustBeAString)) } + } else if peek == b',' { + map.de.eat_char(); + match tri!(map.de.parse_whitespace()) { + Some(b'"') => Ok(true), + Some(b'}') => Err(map.de.peek_error(ErrorCode::TrailingComma)), + Some(_) => Err(map.de.peek_error(ErrorCode::KeyMustBeAString)), + None => Err(map.de.peek_error(ErrorCode::EofWhileParsingValue)), + } + } else { + Err(map.de.peek_error(ErrorCode::ExpectedObjectCommaOrEnd)) } - None => { - return Err(self.de.peek_error(ErrorCode::EofWhileParsingObject)); - } - }; + } - match peek { - Some(b'"') => seed.deserialize(MapKey { de: &mut *self.de }).map(Some), - Some(b'}') => Err(self.de.peek_error(ErrorCode::TrailingComma)), - Some(_) => Err(self.de.peek_error(ErrorCode::KeyMustBeAString)), - None => Err(self.de.peek_error(ErrorCode::EofWhileParsingValue)), + if tri!(has_next_key(self)) { + Ok(Some(tri!(seed.deserialize(MapKey { de: &mut *self.de })))) + } else { + Ok(None) } } diff --git a/.cargo-vendor/serde_json/src/lexical/math.rs b/.cargo-vendor/serde_json/src/lexical/math.rs index adacb42e18..2e900f1a1b 100644 --- a/.cargo-vendor/serde_json/src/lexical/math.rs +++ b/.cargo-vendor/serde_json/src/lexical/math.rs @@ -272,9 +272,7 @@ mod scalar { mod small { use super::*; - // MULTIPLICATIION - - /// ADDITION + // ADDITION /// Implied AddAssign implementation for adding a small integer to bigint. /// diff --git a/.cargo-vendor/serde_json/src/lib.rs b/.cargo-vendor/serde_json/src/lib.rs index 8358c76d7e..f8312c73cb 100644 --- a/.cargo-vendor/serde_json/src/lib.rs +++ b/.cargo-vendor/serde_json/src/lib.rs @@ -299,7 +299,7 @@ //! [macro]: crate::json //! [`serde-json-core`]: https://github.com/rust-embedded-community/serde-json-core -#![doc(html_root_url = "https://docs.rs/serde_json/1.0.128")] +#![doc(html_root_url = "https://docs.rs/serde_json/1.0.132")] // Ignored clippy lints #![allow( clippy::collapsible_else_if, @@ -314,6 +314,7 @@ clippy::match_single_binding, clippy::needless_doctest_main, clippy::needless_late_init, + clippy::needless_lifetimes, clippy::return_self_not_must_use, clippy::transmute_ptr_to_ptr, clippy::unconditional_recursion, // https://github.com/rust-lang/rust-clippy/issues/12133 diff --git a/.cargo-vendor/serde_json/src/map.rs b/.cargo-vendor/serde_json/src/map.rs index 49265c3fe5..bc9a9307b0 100644 --- a/.cargo-vendor/serde_json/src/map.rs +++ b/.cargo-vendor/serde_json/src/map.rs @@ -6,6 +6,7 @@ //! [`BTreeMap`]: https://doc.rust-lang.org/std/collections/struct.BTreeMap.html //! [`IndexMap`]: https://docs.rs/indexmap/*/indexmap/map/struct.IndexMap.html +use crate::error::Error; use crate::value::Value; use alloc::string::String; #[cfg(feature = "preserve_order")] @@ -348,6 +349,29 @@ impl Map { { self.map.retain(f); } + + /// Sorts this map's entries in-place using `str`'s usual ordering. + /// + /// If serde_json's "preserve_order" feature is not enabled, this method + /// does no work because all JSON maps are always kept in a sorted state. + /// + /// If serde_json's "preserve_order" feature is enabled, this method + /// destroys the original source order or insertion order of this map in + /// favor of an alphanumerical order that matches how a BTreeMap with the + /// same contents would be ordered. This takes **O(n log n + c)** time where + /// _n_ is the length of the map and _c_ is the capacity. + /// + /// Other maps nested within the values of this map are not sorted. If you + /// need the entire data structure to be sorted at all levels, you must also + /// call + /// map.[values_mut]\().for_each([Value::sort_all_objects]). + /// + /// [values_mut]: Map::values_mut + #[inline] + pub fn sort_keys(&mut self) { + #[cfg(feature = "preserve_order")] + self.map.sort_unstable_keys(); + } } #[allow(clippy::derivable_impls)] // clippy bug: https://github.com/rust-lang/rust-clippy/issues/7655 @@ -415,7 +439,7 @@ impl Hash for Map { /// } /// # ; /// ``` -impl<'a, Q> ops::Index<&'a Q> for Map +impl ops::Index<&Q> for Map where String: Borrow, Q: ?Sized + Ord + Eq + Hash, @@ -438,7 +462,7 @@ where /// # /// map["key"] = json!("value"); /// ``` -impl<'a, Q> ops::IndexMut<&'a Q> for Map +impl ops::IndexMut<&Q> for Map where String: Borrow, Q: ?Sized + Ord + Eq + Hash, @@ -566,6 +590,22 @@ macro_rules! delegate_iterator { } } +impl<'de> de::IntoDeserializer<'de, Error> for Map { + type Deserializer = Self; + + fn into_deserializer(self) -> Self::Deserializer { + self + } +} + +impl<'de> de::IntoDeserializer<'de, Error> for &'de Map { + type Deserializer = Self; + + fn into_deserializer(self) -> Self::Deserializer { + self + } +} + ////////////////////////////////////////////////////////////////////////////// /// A view into a single entry in a map, which may either be vacant or occupied. diff --git a/.cargo-vendor/serde_json/src/number.rs b/.cargo-vendor/serde_json/src/number.rs index 878a3dcb20..8cb0c3b7b0 100644 --- a/.cargo-vendor/serde_json/src/number.rs +++ b/.cargo-vendor/serde_json/src/number.rs @@ -78,22 +78,6 @@ impl Number { /// /// For any Number on which `is_i64` returns true, `as_i64` is guaranteed to /// return the integer value. - /// - /// ``` - /// # use serde_json::json; - /// # - /// let big = i64::MAX as u64 + 10; - /// let v = json!({ "a": 64, "b": big, "c": 256.0 }); - /// - /// assert!(v["a"].is_i64()); - /// - /// // Greater than i64::MAX. - /// assert!(!v["b"].is_i64()); - /// - /// // Numbers with a decimal point are not considered integers. - /// assert!(!v["c"].is_i64()); - /// ``` - #[inline] pub fn is_i64(&self) -> bool { #[cfg(not(feature = "arbitrary_precision"))] match self.n { @@ -109,21 +93,6 @@ impl Number { /// /// For any Number on which `is_u64` returns true, `as_u64` is guaranteed to /// return the integer value. - /// - /// ``` - /// # use serde_json::json; - /// # - /// let v = json!({ "a": 64, "b": -64, "c": 256.0 }); - /// - /// assert!(v["a"].is_u64()); - /// - /// // Negative integer. - /// assert!(!v["b"].is_u64()); - /// - /// // Numbers with a decimal point are not considered integers. - /// assert!(!v["c"].is_u64()); - /// ``` - #[inline] pub fn is_u64(&self) -> bool { #[cfg(not(feature = "arbitrary_precision"))] match self.n { @@ -141,19 +110,6 @@ impl Number { /// /// Currently this function returns true if and only if both `is_i64` and /// `is_u64` return false but this is not a guarantee in the future. - /// - /// ``` - /// # use serde_json::json; - /// # - /// let v = json!({ "a": 256.0, "b": 64, "c": -64 }); - /// - /// assert!(v["a"].is_f64()); - /// - /// // Integers. - /// assert!(!v["b"].is_f64()); - /// assert!(!v["c"].is_f64()); - /// ``` - #[inline] pub fn is_f64(&self) -> bool { #[cfg(not(feature = "arbitrary_precision"))] match self.n { @@ -173,18 +129,6 @@ impl Number { /// If the `Number` is an integer, represent it as i64 if possible. Returns /// None otherwise. - /// - /// ``` - /// # use serde_json::json; - /// # - /// let big = i64::MAX as u64 + 10; - /// let v = json!({ "a": 64, "b": big, "c": 256.0 }); - /// - /// assert_eq!(v["a"].as_i64(), Some(64)); - /// assert_eq!(v["b"].as_i64(), None); - /// assert_eq!(v["c"].as_i64(), None); - /// ``` - #[inline] pub fn as_i64(&self) -> Option { #[cfg(not(feature = "arbitrary_precision"))] match self.n { @@ -204,17 +148,6 @@ impl Number { /// If the `Number` is an integer, represent it as u64 if possible. Returns /// None otherwise. - /// - /// ``` - /// # use serde_json::json; - /// # - /// let v = json!({ "a": 64, "b": -64, "c": 256.0 }); - /// - /// assert_eq!(v["a"].as_u64(), Some(64)); - /// assert_eq!(v["b"].as_u64(), None); - /// assert_eq!(v["c"].as_u64(), None); - /// ``` - #[inline] pub fn as_u64(&self) -> Option { #[cfg(not(feature = "arbitrary_precision"))] match self.n { @@ -226,17 +159,6 @@ impl Number { } /// Represents the number as f64 if possible. Returns None otherwise. - /// - /// ``` - /// # use serde_json::json; - /// # - /// let v = json!({ "a": 256.0, "b": 64, "c": -64 }); - /// - /// assert_eq!(v["a"].as_f64(), Some(256.0)); - /// assert_eq!(v["b"].as_f64(), Some(64.0)); - /// assert_eq!(v["c"].as_f64(), Some(-64.0)); - /// ``` - #[inline] pub fn as_f64(&self) -> Option { #[cfg(not(feature = "arbitrary_precision"))] match self.n { @@ -252,15 +174,12 @@ impl Number { /// numbers. /// /// ``` - /// # use std::f64; - /// # /// # use serde_json::Number; /// # /// assert!(Number::from_f64(256.0).is_some()); /// /// assert!(Number::from_f64(f64::NAN).is_none()); /// ``` - #[inline] pub fn from_f64(f: f64) -> Option { if f.is_finite() { let n = { @@ -279,6 +198,87 @@ impl Number { } } + /// If the `Number` is an integer, represent it as i128 if possible. Returns + /// None otherwise. + pub fn as_i128(&self) -> Option { + #[cfg(not(feature = "arbitrary_precision"))] + match self.n { + N::PosInt(n) => Some(n as i128), + N::NegInt(n) => Some(n as i128), + N::Float(_) => None, + } + #[cfg(feature = "arbitrary_precision")] + self.n.parse().ok() + } + + /// If the `Number` is an integer, represent it as u128 if possible. Returns + /// None otherwise. + pub fn as_u128(&self) -> Option { + #[cfg(not(feature = "arbitrary_precision"))] + match self.n { + N::PosInt(n) => Some(n as u128), + N::NegInt(_) | N::Float(_) => None, + } + #[cfg(feature = "arbitrary_precision")] + self.n.parse().ok() + } + + /// Converts an `i128` to a `Number`. Numbers smaller than i64::MIN or + /// larger than u64::MAX can only be represented in `Number` if serde_json's + /// "arbitrary_precision" feature is enabled. + /// + /// ``` + /// # use serde_json::Number; + /// # + /// assert!(Number::from_i128(256).is_some()); + /// ``` + pub fn from_i128(i: i128) -> Option { + let n = { + #[cfg(not(feature = "arbitrary_precision"))] + { + if let Ok(u) = u64::try_from(i) { + N::PosInt(u) + } else if let Ok(i) = i64::try_from(i) { + N::NegInt(i) + } else { + return None; + } + } + #[cfg(feature = "arbitrary_precision")] + { + i.to_string() + } + }; + Some(Number { n }) + } + + /// Converts a `u128` to a `Number`. Numbers greater than u64::MAX can only + /// be represented in `Number` if serde_json's "arbitrary_precision" feature + /// is enabled. + /// + /// ``` + /// # use serde_json::Number; + /// # + /// assert!(Number::from_u128(256).is_some()); + /// ``` + pub fn from_u128(i: u128) -> Option { + let n = { + #[cfg(not(feature = "arbitrary_precision"))] + { + if let Ok(u) = u64::try_from(i) { + N::PosInt(u) + } else { + return None; + } + } + #[cfg(feature = "arbitrary_precision")] + { + i.to_string() + } + }; + Some(Number { n }) + } + /// Returns the exact original JSON representation that this Number was /// parsed from. /// @@ -368,7 +368,6 @@ impl Debug for Number { impl Serialize for Number { #[cfg(not(feature = "arbitrary_precision"))] - #[inline] fn serialize(&self, serializer: S) -> Result where S: Serializer, @@ -381,7 +380,6 @@ impl Serialize for Number { } #[cfg(feature = "arbitrary_precision")] - #[inline] fn serialize(&self, serializer: S) -> Result where S: Serializer, @@ -409,17 +407,30 @@ impl<'de> Deserialize<'de> for Number { formatter.write_str("a JSON number") } - #[inline] fn visit_i64(self, value: i64) -> Result { Ok(value.into()) } - #[inline] + fn visit_i128(self, value: i128) -> Result + where + E: de::Error, + { + Number::from_i128(value) + .ok_or_else(|| de::Error::custom("JSON number out of range")) + } + fn visit_u64(self, value: u64) -> Result { Ok(value.into()) } - #[inline] + fn visit_u128(self, value: u128) -> Result + where + E: de::Error, + { + Number::from_u128(value) + .ok_or_else(|| de::Error::custom("JSON number out of range")) + } + fn visit_f64(self, value: f64) -> Result where E: de::Error, @@ -428,7 +439,6 @@ impl<'de> Deserialize<'de> for Number { } #[cfg(feature = "arbitrary_precision")] - #[inline] fn visit_map(self, mut visitor: V) -> Result where V: de::MapAccess<'de>, @@ -522,7 +532,6 @@ fn invalid_number() -> Error { macro_rules! deserialize_any { (@expand [$($num_string:tt)*]) => { #[cfg(not(feature = "arbitrary_precision"))] - #[inline] fn deserialize_any(self, visitor: V) -> Result where V: Visitor<'de>, @@ -535,7 +544,6 @@ macro_rules! deserialize_any { } #[cfg(feature = "arbitrary_precision")] - #[inline] fn deserialize_any(self, visitor: V) -> Result where V: Visitor<'de> { @@ -543,6 +551,10 @@ macro_rules! deserialize_any { return visitor.visit_u64(u); } else if let Some(i) = self.as_i64() { return visitor.visit_i64(i); + } else if let Some(u) = self.as_u128() { + return visitor.visit_u128(u); + } else if let Some(i) = self.as_i128() { + return visitor.visit_i128(i); } else if let Some(f) = self.as_f64() { if ryu::Buffer::new().format_finite(f) == self.n || f.to_string() == self.n { return visitor.visit_f64(f); @@ -609,7 +621,7 @@ impl<'de> Deserializer<'de> for Number { } } -impl<'de, 'a> Deserializer<'de> for &'a Number { +impl<'de> Deserializer<'de> for &Number { type Error = Error; deserialize_any!(ref); @@ -692,7 +704,7 @@ impl From for Number { } #[cfg(feature = "arbitrary_precision")] { - f.to_string() + ryu::Buffer::new().format_finite(f).to_owned() } } ParserNumber::U64(u) => { @@ -702,7 +714,7 @@ impl From for Number { } #[cfg(feature = "arbitrary_precision")] { - u.to_string() + itoa::Buffer::new().format(u).to_owned() } } ParserNumber::I64(i) => { @@ -712,7 +724,7 @@ impl From for Number { } #[cfg(feature = "arbitrary_precision")] { - i.to_string() + itoa::Buffer::new().format(i).to_owned() } } #[cfg(feature = "arbitrary_precision")] @@ -728,7 +740,6 @@ macro_rules! impl_from_unsigned { ) => { $( impl From<$ty> for Number { - #[inline] fn from(u: $ty) -> Self { let n = { #[cfg(not(feature = "arbitrary_precision"))] @@ -751,7 +762,6 @@ macro_rules! impl_from_signed { ) => { $( impl From<$ty> for Number { - #[inline] fn from(i: $ty) -> Self { let n = { #[cfg(not(feature = "arbitrary_precision"))] diff --git a/.cargo-vendor/serde_json/src/read.rs b/.cargo-vendor/serde_json/src/read.rs index b84ec223ad..a3aa5d164f 100644 --- a/.cargo-vendor/serde_json/src/read.rs +++ b/.cargo-vendor/serde_json/src/read.rs @@ -751,9 +751,9 @@ impl<'a> Read<'a> for StrRead<'a> { ////////////////////////////////////////////////////////////////////////////// -impl<'a, 'de, R> private::Sealed for &'a mut R where R: Read<'de> {} +impl<'de, R> private::Sealed for &mut R where R: Read<'de> {} -impl<'a, 'de, R> Read<'de> for &'a mut R +impl<'de, R> Read<'de> for &mut R where R: Read<'de>, { diff --git a/.cargo-vendor/serde_json/src/ser.rs b/.cargo-vendor/serde_json/src/ser.rs index 3742e0bef4..6956671b4d 100644 --- a/.cargo-vendor/serde_json/src/ser.rs +++ b/.cargo-vendor/serde_json/src/ser.rs @@ -2,7 +2,9 @@ use crate::error::{Error, ErrorCode, Result}; use crate::io; -use alloc::string::{String, ToString}; +use alloc::string::String; +#[cfg(feature = "raw_value")] +use alloc::string::ToString; use alloc::vec::Vec; use core::fmt::{self, Display}; use core::num::FpCategory; @@ -1057,7 +1059,7 @@ where } fn serialize_char(self, value: char) -> Result<()> { - self.ser.serialize_str(&value.to_string()) + self.ser.serialize_str(value.encode_utf8(&mut [0u8; 4])) } fn serialize_bytes(self, _value: &[u8]) -> Result<()> { diff --git a/.cargo-vendor/serde_json/src/value/de.rs b/.cargo-vendor/serde_json/src/value/de.rs index 936725635f..dd4698e800 100644 --- a/.cargo-vendor/serde_json/src/value/de.rs +++ b/.cargo-vendor/serde_json/src/value/de.rs @@ -11,8 +11,8 @@ use core::fmt; use core::slice; use core::str::FromStr; use serde::de::{ - self, Deserialize, DeserializeSeed, EnumAccess, Expected, IntoDeserializer, MapAccess, - SeqAccess, Unexpected, VariantAccess, Visitor, + self, Deserialize, DeserializeSeed, Deserializer as _, EnumAccess, Expected, IntoDeserializer, + MapAccess, SeqAccess, Unexpected, VariantAccess, Visitor, }; use serde::forward_to_deserialize_any; @@ -44,11 +44,27 @@ impl<'de> Deserialize<'de> for Value { Ok(Value::Number(value.into())) } + fn visit_i128(self, value: i128) -> Result + where + E: serde::de::Error, + { + let de = serde::de::value::I128Deserializer::new(value); + Number::deserialize(de).map(Value::Number) + } + #[inline] fn visit_u64(self, value: u64) -> Result { Ok(Value::Number(value.into())) } + fn visit_u128(self, value: u128) -> Result + where + E: serde::de::Error, + { + let de = serde::de::value::U128Deserializer::new(value); + Number::deserialize(de).map(Value::Number) + } + #[inline] fn visit_f64(self, value: f64) -> Result { Ok(Number::from_f64(value).map_or(Value::Null, Value::Number)) @@ -187,21 +203,72 @@ where } } -fn visit_object<'de, V>(object: Map, visitor: V) -> Result -where - V: Visitor<'de>, -{ - let len = object.len(); - let mut deserializer = MapDeserializer::new(object); - let map = tri!(visitor.visit_map(&mut deserializer)); - let remaining = deserializer.iter.len(); - if remaining == 0 { - Ok(map) - } else { - Err(serde::de::Error::invalid_length( - len, - &"fewer elements in map", - )) +impl<'de> serde::Deserializer<'de> for Map { + type Error = Error; + + fn deserialize_any(self, visitor: V) -> Result + where + V: Visitor<'de>, + { + let len = self.len(); + let mut deserializer = MapDeserializer::new(self); + let map = tri!(visitor.visit_map(&mut deserializer)); + let remaining = deserializer.iter.len(); + if remaining == 0 { + Ok(map) + } else { + Err(serde::de::Error::invalid_length( + len, + &"fewer elements in map", + )) + } + } + + fn deserialize_enum( + self, + _name: &'static str, + _variants: &'static [&'static str], + visitor: V, + ) -> Result + where + V: Visitor<'de>, + { + let mut iter = self.into_iter(); + let (variant, value) = match iter.next() { + Some(v) => v, + None => { + return Err(serde::de::Error::invalid_value( + Unexpected::Map, + &"map with a single key", + )); + } + }; + // enums are encoded in json as maps with a single key:value pair + if iter.next().is_some() { + return Err(serde::de::Error::invalid_value( + Unexpected::Map, + &"map with a single key", + )); + } + + visitor.visit_enum(EnumDeserializer { + variant, + value: Some(value), + }) + } + + fn deserialize_ignored_any(self, visitor: V) -> Result + where + V: Visitor<'de>, + { + drop(self); + visitor.visit_unit() + } + + forward_to_deserialize_any! { + bool i8 i16 i32 i64 i128 u8 u16 u32 u64 u128 f32 f64 char str string + bytes byte_buf option unit unit_struct newtype_struct seq tuple + tuple_struct map struct identifier } } @@ -222,7 +289,7 @@ impl<'de> serde::Deserializer<'de> for Value { #[cfg(not(any(feature = "std", feature = "alloc")))] Value::String(_) => unreachable!(), Value::Array(v) => visit_array(v, visitor), - Value::Object(v) => visit_object(v, visitor), + Value::Object(v) => v.deserialize_any(visitor), } } @@ -253,44 +320,24 @@ impl<'de> serde::Deserializer<'de> for Value { #[inline] fn deserialize_enum( self, - _name: &str, - _variants: &'static [&'static str], + name: &'static str, + variants: &'static [&'static str], visitor: V, ) -> Result where V: Visitor<'de>, { - let (variant, value) = match self { - Value::Object(value) => { - let mut iter = value.into_iter(); - let (variant, value) = match iter.next() { - Some(v) => v, - None => { - return Err(serde::de::Error::invalid_value( - Unexpected::Map, - &"map with a single key", - )); - } - }; - // enums are encoded in json as maps with a single key:value pair - if iter.next().is_some() { - return Err(serde::de::Error::invalid_value( - Unexpected::Map, - &"map with a single key", - )); - } - (variant, Some(value)) - } - Value::String(variant) => (variant, None), - other => { - return Err(serde::de::Error::invalid_type( - other.unexpected(), - &"string or map", - )); - } - }; - - visitor.visit_enum(EnumDeserializer { variant, value }) + match self { + Value::Object(value) => value.deserialize_enum(name, variants, visitor), + Value::String(variant) => visitor.visit_enum(EnumDeserializer { + variant, + value: None, + }), + other => Err(serde::de::Error::invalid_type( + other.unexpected(), + &"string or map", + )), + } } #[inline] @@ -420,7 +467,7 @@ impl<'de> serde::Deserializer<'de> for Value { V: Visitor<'de>, { match self { - Value::Object(v) => visit_object(v, visitor), + Value::Object(v) => v.deserialize_any(visitor), _ => Err(self.invalid_type(&visitor)), } } @@ -436,7 +483,7 @@ impl<'de> serde::Deserializer<'de> for Value { { match self { Value::Array(v) => visit_array(v, visitor), - Value::Object(v) => visit_object(v, visitor), + Value::Object(v) => v.deserialize_any(visitor), _ => Err(self.invalid_type(&visitor)), } } @@ -551,7 +598,7 @@ impl<'de> VariantAccess<'de> for VariantDeserializer { V: Visitor<'de>, { match self.value { - Some(Value::Object(v)) => visit_object(v, visitor), + Some(Value::Object(v)) => v.deserialize_any(visitor), Some(other) => Err(serde::de::Error::invalid_type( other.unexpected(), &"struct variant", @@ -692,21 +739,71 @@ where } } -fn visit_object_ref<'de, V>(object: &'de Map, visitor: V) -> Result -where - V: Visitor<'de>, -{ - let len = object.len(); - let mut deserializer = MapRefDeserializer::new(object); - let map = tri!(visitor.visit_map(&mut deserializer)); - let remaining = deserializer.iter.len(); - if remaining == 0 { - Ok(map) - } else { - Err(serde::de::Error::invalid_length( - len, - &"fewer elements in map", - )) +impl<'de> serde::Deserializer<'de> for &'de Map { + type Error = Error; + + fn deserialize_any(self, visitor: V) -> Result + where + V: Visitor<'de>, + { + let len = self.len(); + let mut deserializer = MapRefDeserializer::new(self); + let map = tri!(visitor.visit_map(&mut deserializer)); + let remaining = deserializer.iter.len(); + if remaining == 0 { + Ok(map) + } else { + Err(serde::de::Error::invalid_length( + len, + &"fewer elements in map", + )) + } + } + + fn deserialize_enum( + self, + _name: &'static str, + _variants: &'static [&'static str], + visitor: V, + ) -> Result + where + V: Visitor<'de>, + { + let mut iter = self.into_iter(); + let (variant, value) = match iter.next() { + Some(v) => v, + None => { + return Err(serde::de::Error::invalid_value( + Unexpected::Map, + &"map with a single key", + )); + } + }; + // enums are encoded in json as maps with a single key:value pair + if iter.next().is_some() { + return Err(serde::de::Error::invalid_value( + Unexpected::Map, + &"map with a single key", + )); + } + + visitor.visit_enum(EnumRefDeserializer { + variant, + value: Some(value), + }) + } + + fn deserialize_ignored_any(self, visitor: V) -> Result + where + V: Visitor<'de>, + { + visitor.visit_unit() + } + + forward_to_deserialize_any! { + bool i8 i16 i32 i64 i128 u8 u16 u32 u64 u128 f32 f64 char str string + bytes byte_buf option unit unit_struct newtype_struct seq tuple + tuple_struct map struct identifier } } @@ -723,7 +820,7 @@ impl<'de> serde::Deserializer<'de> for &'de Value { Value::Number(n) => n.deserialize_any(visitor), Value::String(v) => visitor.visit_borrowed_str(v), Value::Array(v) => visit_array_ref(v, visitor), - Value::Object(v) => visit_object_ref(v, visitor), + Value::Object(v) => v.deserialize_any(visitor), } } @@ -752,44 +849,24 @@ impl<'de> serde::Deserializer<'de> for &'de Value { fn deserialize_enum( self, - _name: &str, - _variants: &'static [&'static str], + name: &'static str, + variants: &'static [&'static str], visitor: V, ) -> Result where V: Visitor<'de>, { - let (variant, value) = match self { - Value::Object(value) => { - let mut iter = value.into_iter(); - let (variant, value) = match iter.next() { - Some(v) => v, - None => { - return Err(serde::de::Error::invalid_value( - Unexpected::Map, - &"map with a single key", - )); - } - }; - // enums are encoded in json as maps with a single key:value pair - if iter.next().is_some() { - return Err(serde::de::Error::invalid_value( - Unexpected::Map, - &"map with a single key", - )); - } - (variant, Some(value)) - } - Value::String(variant) => (variant, None), - other => { - return Err(serde::de::Error::invalid_type( - other.unexpected(), - &"string or map", - )); - } - }; - - visitor.visit_enum(EnumRefDeserializer { variant, value }) + match self { + Value::Object(value) => value.deserialize_enum(name, variants, visitor), + Value::String(variant) => visitor.visit_enum(EnumRefDeserializer { + variant, + value: None, + }), + other => Err(serde::de::Error::invalid_type( + other.unexpected(), + &"string or map", + )), + } } #[inline] @@ -917,7 +994,7 @@ impl<'de> serde::Deserializer<'de> for &'de Value { V: Visitor<'de>, { match self { - Value::Object(v) => visit_object_ref(v, visitor), + Value::Object(v) => v.deserialize_any(visitor), _ => Err(self.invalid_type(&visitor)), } } @@ -933,7 +1010,7 @@ impl<'de> serde::Deserializer<'de> for &'de Value { { match self { Value::Array(v) => visit_array_ref(v, visitor), - Value::Object(v) => visit_object_ref(v, visitor), + Value::Object(v) => v.deserialize_any(visitor), _ => Err(self.invalid_type(&visitor)), } } @@ -1031,7 +1108,7 @@ impl<'de> VariantAccess<'de> for VariantRefDeserializer<'de> { V: Visitor<'de>, { match self.value { - Some(Value::Object(v)) => visit_object_ref(v, visitor), + Some(Value::Object(v)) => v.deserialize_any(visitor), Some(other) => Err(serde::de::Error::invalid_type( other.unexpected(), &"struct variant", diff --git a/.cargo-vendor/serde_json/src/value/from.rs b/.cargo-vendor/serde_json/src/value/from.rs index ed1e3338b0..2dae925a15 100644 --- a/.cargo-vendor/serde_json/src/value/from.rs +++ b/.cargo-vendor/serde_json/src/value/from.rs @@ -1,8 +1,8 @@ use super::Value; use crate::map::Map; use crate::number::Number; -use alloc::borrow::Cow; -use alloc::string::{String, ToString}; +use alloc::borrow::{Cow, ToOwned}; +use alloc::string::String; use alloc::vec::Vec; macro_rules! from_integer { @@ -85,7 +85,7 @@ impl From for Value { /// ``` /// use serde_json::Value; /// - /// let s: String = "lorem".to_string(); + /// let s: String = "lorem".to_owned(); /// let x: Value = s.into(); /// ``` fn from(f: String) -> Self { @@ -105,7 +105,7 @@ impl From<&str> for Value { /// let x: Value = s.into(); /// ``` fn from(f: &str) -> Self { - Value::String(f.to_string()) + Value::String(f.to_owned()) } } @@ -126,7 +126,7 @@ impl<'a> From> for Value { /// use serde_json::Value; /// use std::borrow::Cow; /// - /// let s: Cow = Cow::Owned("lorem".to_string()); + /// let s: Cow = Cow::Owned("lorem".to_owned()); /// let x: Value = s.into(); /// ``` fn from(f: Cow<'a, str>) -> Self { @@ -159,7 +159,7 @@ impl From> for Value { /// use serde_json::{Map, Value}; /// /// let mut m = Map::new(); - /// m.insert("Lorem".to_string(), "ipsum".into()); + /// m.insert("Lorem".to_owned(), "ipsum".into()); /// let x: Value = m.into(); /// ``` fn from(f: Map) -> Self { diff --git a/.cargo-vendor/serde_json/src/value/index.rs b/.cargo-vendor/serde_json/src/value/index.rs index c56135b33f..4e41a39be5 100644 --- a/.cargo-vendor/serde_json/src/value/index.rs +++ b/.cargo-vendor/serde_json/src/value/index.rs @@ -137,7 +137,7 @@ mod private { impl Sealed for usize {} impl Sealed for str {} impl Sealed for alloc::string::String {} - impl<'a, T> Sealed for &'a T where T: ?Sized + Sealed {} + impl Sealed for &T where T: ?Sized + Sealed {} } /// Used in panic messages. diff --git a/.cargo-vendor/serde_json/src/value/mod.rs b/.cargo-vendor/serde_json/src/value/mod.rs index 026f10dcb4..6b40f9a529 100644 --- a/.cargo-vendor/serde_json/src/value/mod.rs +++ b/.cargo-vendor/serde_json/src/value/mod.rs @@ -861,6 +861,32 @@ impl Value { pub fn take(&mut self) -> Value { mem::replace(self, Value::Null) } + + /// Reorders the entries of all `Value::Object` nested within this JSON + /// value according to `str`'s usual ordering. + /// + /// If serde_json's "preserve_order" feature is not enabled, this method + /// does no work because all JSON maps are always kept in a sorted state. + /// + /// If serde_json's "preserve_order" feature is enabled, this method + /// destroys the original source order or insertion order of the JSON + /// objects in favor of an alphanumerical order that matches how a BTreeMap + /// with the same contents would be ordered. + pub fn sort_all_objects(&mut self) { + #[cfg(feature = "preserve_order")] + { + match self { + Value::Object(map) => { + map.sort_keys(); + map.values_mut().for_each(Value::sort_all_objects); + } + Value::Array(list) => { + list.iter_mut().for_each(Value::sort_all_objects); + } + _ => {} + } + } + } } /// The default value is `Value::Null`. diff --git a/.cargo-vendor/serde_json/src/value/ser.rs b/.cargo-vendor/serde_json/src/value/ser.rs index b292f98208..a681934370 100644 --- a/.cargo-vendor/serde_json/src/value/ser.rs +++ b/.cargo-vendor/serde_json/src/value/ser.rs @@ -486,47 +486,47 @@ impl serde::Serializer for MapKeySerializer { } fn serialize_bool(self, value: bool) -> Result { - Ok(value.to_string()) + Ok(if value { "true" } else { "false" }.to_owned()) } fn serialize_i8(self, value: i8) -> Result { - Ok(value.to_string()) + Ok(itoa::Buffer::new().format(value).to_owned()) } fn serialize_i16(self, value: i16) -> Result { - Ok(value.to_string()) + Ok(itoa::Buffer::new().format(value).to_owned()) } fn serialize_i32(self, value: i32) -> Result { - Ok(value.to_string()) + Ok(itoa::Buffer::new().format(value).to_owned()) } fn serialize_i64(self, value: i64) -> Result { - Ok(value.to_string()) + Ok(itoa::Buffer::new().format(value).to_owned()) } fn serialize_i128(self, value: i128) -> Result { - Ok(value.to_string()) + Ok(itoa::Buffer::new().format(value).to_owned()) } fn serialize_u8(self, value: u8) -> Result { - Ok(value.to_string()) + Ok(itoa::Buffer::new().format(value).to_owned()) } fn serialize_u16(self, value: u16) -> Result { - Ok(value.to_string()) + Ok(itoa::Buffer::new().format(value).to_owned()) } fn serialize_u32(self, value: u32) -> Result { - Ok(value.to_string()) + Ok(itoa::Buffer::new().format(value).to_owned()) } fn serialize_u64(self, value: u64) -> Result { - Ok(value.to_string()) + Ok(itoa::Buffer::new().format(value).to_owned()) } fn serialize_u128(self, value: u128) -> Result { - Ok(value.to_string()) + Ok(itoa::Buffer::new().format(value).to_owned()) } fn serialize_f32(self, value: f32) -> Result { diff --git a/.cargo-vendor/serde_json/tests/map.rs b/.cargo-vendor/serde_json/tests/map.rs index c3c64d70b2..aa3cb25494 100644 --- a/.cargo-vendor/serde_json/tests/map.rs +++ b/.cargo-vendor/serde_json/tests/map.rs @@ -20,7 +20,7 @@ fn test_preserve_order() { fn test_shift_insert() { let mut v: Value = from_str(r#"{"b":null,"a":null,"c":null}"#).unwrap(); let val = v.as_object_mut().unwrap(); - val.shift_insert(0, "d".to_string(), Value::Null); + val.shift_insert(0, "d".to_owned(), Value::Null); let keys: Vec<_> = val.keys().collect(); assert_eq!(keys, &["d", "b", "a", "c"]); diff --git a/.cargo-vendor/serde_json/tests/regression.rs b/.cargo-vendor/serde_json/tests/regression.rs index fb2b25c89b..22cca82431 100644 --- a/.cargo-vendor/serde_json/tests/regression.rs +++ b/.cargo-vendor/serde_json/tests/regression.rs @@ -1,3 +1,5 @@ +#![allow(clippy::needless_lifetimes)] + mod regression { automod::dir!("tests/regression"); } diff --git a/.cargo-vendor/serde_json/tests/test.rs b/.cargo-vendor/serde_json/tests/test.rs index dc8c3c22f5..d41a2336a4 100644 --- a/.cargo-vendor/serde_json/tests/test.rs +++ b/.cargo-vendor/serde_json/tests/test.rs @@ -269,11 +269,11 @@ fn test_write_list() { fn test_write_object() { test_encode_ok(&[ (treemap!(), "{}"), - (treemap!("a".to_string() => true), "{\"a\":true}"), + (treemap!("a".to_owned() => true), "{\"a\":true}"), ( treemap!( - "a".to_string() => true, - "b".to_string() => false, + "a".to_owned() => true, + "b".to_owned() => false, ), "{\"a\":true,\"b\":false}", ), @@ -282,44 +282,44 @@ fn test_write_object() { test_encode_ok(&[ ( treemap![ - "a".to_string() => treemap![], - "b".to_string() => treemap![], - "c".to_string() => treemap![], + "a".to_owned() => treemap![], + "b".to_owned() => treemap![], + "c".to_owned() => treemap![], ], "{\"a\":{},\"b\":{},\"c\":{}}", ), ( treemap![ - "a".to_string() => treemap![ - "a".to_string() => treemap!["a" => vec![1,2,3]], - "b".to_string() => treemap![], - "c".to_string() => treemap![], + "a".to_owned() => treemap![ + "a".to_owned() => treemap!["a" => vec![1,2,3]], + "b".to_owned() => treemap![], + "c".to_owned() => treemap![], ], - "b".to_string() => treemap![], - "c".to_string() => treemap![], + "b".to_owned() => treemap![], + "c".to_owned() => treemap![], ], "{\"a\":{\"a\":{\"a\":[1,2,3]},\"b\":{},\"c\":{}},\"b\":{},\"c\":{}}", ), ( treemap![ - "a".to_string() => treemap![], - "b".to_string() => treemap![ - "a".to_string() => treemap!["a" => vec![1,2,3]], - "b".to_string() => treemap![], - "c".to_string() => treemap![], + "a".to_owned() => treemap![], + "b".to_owned() => treemap![ + "a".to_owned() => treemap!["a" => vec![1,2,3]], + "b".to_owned() => treemap![], + "c".to_owned() => treemap![], ], - "c".to_string() => treemap![], + "c".to_owned() => treemap![], ], "{\"a\":{},\"b\":{\"a\":{\"a\":[1,2,3]},\"b\":{},\"c\":{}},\"c\":{}}", ), ( treemap![ - "a".to_string() => treemap![], - "b".to_string() => treemap![], - "c".to_string() => treemap![ - "a".to_string() => treemap!["a" => vec![1,2,3]], - "b".to_string() => treemap![], - "c".to_string() => treemap![], + "a".to_owned() => treemap![], + "b".to_owned() => treemap![], + "c".to_owned() => treemap![ + "a".to_owned() => treemap!["a" => vec![1,2,3]], + "b".to_owned() => treemap![], + "c".to_owned() => treemap![], ], ], "{\"a\":{},\"b\":{},\"c\":{\"a\":{\"a\":[1,2,3]},\"b\":{},\"c\":{}}}", @@ -331,9 +331,9 @@ fn test_write_object() { test_pretty_encode_ok(&[ ( treemap![ - "a".to_string() => treemap![], - "b".to_string() => treemap![], - "c".to_string() => treemap![], + "a".to_owned() => treemap![], + "b".to_owned() => treemap![], + "c".to_owned() => treemap![], ], pretty_str!({ "a": {}, @@ -343,13 +343,13 @@ fn test_write_object() { ), ( treemap![ - "a".to_string() => treemap![ - "a".to_string() => treemap!["a" => vec![1,2,3]], - "b".to_string() => treemap![], - "c".to_string() => treemap![], + "a".to_owned() => treemap![ + "a".to_owned() => treemap!["a" => vec![1,2,3]], + "b".to_owned() => treemap![], + "c".to_owned() => treemap![], ], - "b".to_string() => treemap![], - "c".to_string() => treemap![], + "b".to_owned() => treemap![], + "c".to_owned() => treemap![], ], pretty_str!({ "a": { @@ -369,13 +369,13 @@ fn test_write_object() { ), ( treemap![ - "a".to_string() => treemap![], - "b".to_string() => treemap![ - "a".to_string() => treemap!["a" => vec![1,2,3]], - "b".to_string() => treemap![], - "c".to_string() => treemap![], + "a".to_owned() => treemap![], + "b".to_owned() => treemap![ + "a".to_owned() => treemap!["a" => vec![1,2,3]], + "b".to_owned() => treemap![], + "c".to_owned() => treemap![], ], - "c".to_string() => treemap![], + "c".to_owned() => treemap![], ], pretty_str!({ "a": {}, @@ -395,12 +395,12 @@ fn test_write_object() { ), ( treemap![ - "a".to_string() => treemap![], - "b".to_string() => treemap![], - "c".to_string() => treemap![ - "a".to_string() => treemap!["a" => vec![1,2,3]], - "b".to_string() => treemap![], - "c".to_string() => treemap![], + "a".to_owned() => treemap![], + "b".to_owned() => treemap![], + "c".to_owned() => treemap![ + "a".to_owned() => treemap!["a" => vec![1,2,3]], + "b".to_owned() => treemap![], + "c".to_owned() => treemap![], ], ], pretty_str!({ @@ -424,15 +424,15 @@ fn test_write_object() { test_pretty_encode_ok(&[ (treemap!(), "{}"), ( - treemap!("a".to_string() => true), + treemap!("a".to_owned() => true), pretty_str!({ "a": true }), ), ( treemap!( - "a".to_string() => true, - "b".to_string() => false, + "a".to_owned() => true, + "b".to_owned() => false, ), pretty_str!( { "a": true, @@ -493,26 +493,26 @@ fn test_write_enum() { test_encode_ok(&[ (Animal::Dog, "\"Dog\""), ( - Animal::Frog("Henry".to_string(), vec![]), + Animal::Frog("Henry".to_owned(), vec![]), "{\"Frog\":[\"Henry\",[]]}", ), ( - Animal::Frog("Henry".to_string(), vec![349]), + Animal::Frog("Henry".to_owned(), vec![349]), "{\"Frog\":[\"Henry\",[349]]}", ), ( - Animal::Frog("Henry".to_string(), vec![349, 102]), + Animal::Frog("Henry".to_owned(), vec![349, 102]), "{\"Frog\":[\"Henry\",[349,102]]}", ), ( Animal::Cat { age: 5, - name: "Kate".to_string(), + name: "Kate".to_owned(), }, "{\"Cat\":{\"age\":5,\"name\":\"Kate\"}}", ), ( - Animal::AntHive(vec!["Bob".to_string(), "Stuart".to_string()]), + Animal::AntHive(vec!["Bob".to_owned(), "Stuart".to_owned()]), "{\"AntHive\":[\"Bob\",\"Stuart\"]}", ), ]); @@ -520,7 +520,7 @@ fn test_write_enum() { test_pretty_encode_ok(&[ (Animal::Dog, "\"Dog\""), ( - Animal::Frog("Henry".to_string(), vec![]), + Animal::Frog("Henry".to_owned(), vec![]), pretty_str!({ "Frog": [ "Henry", @@ -529,7 +529,7 @@ fn test_write_enum() { }), ), ( - Animal::Frog("Henry".to_string(), vec![349]), + Animal::Frog("Henry".to_owned(), vec![349]), pretty_str!({ "Frog": [ "Henry", @@ -540,7 +540,7 @@ fn test_write_enum() { }), ), ( - Animal::Frog("Henry".to_string(), vec![349, 102]), + Animal::Frog("Henry".to_owned(), vec![349, 102]), pretty_str!({ "Frog": [ "Henry", @@ -1117,16 +1117,16 @@ fn test_parse_string() { test_parse_ok(vec![ ("\"\"", String::new()), - ("\"foo\"", "foo".to_string()), - (" \"foo\" ", "foo".to_string()), - ("\"\\\"\"", "\"".to_string()), - ("\"\\b\"", "\x08".to_string()), - ("\"\\n\"", "\n".to_string()), - ("\"\\r\"", "\r".to_string()), - ("\"\\t\"", "\t".to_string()), - ("\"\\u12ab\"", "\u{12ab}".to_string()), - ("\"\\uAB12\"", "\u{AB12}".to_string()), - ("\"\\uD83C\\uDF95\"", "\u{1F395}".to_string()), + ("\"foo\"", "foo".to_owned()), + (" \"foo\" ", "foo".to_owned()), + ("\"\\\"\"", "\"".to_owned()), + ("\"\\b\"", "\x08".to_owned()), + ("\"\\n\"", "\n".to_owned()), + ("\"\\r\"", "\r".to_owned()), + ("\"\\t\"", "\t".to_owned()), + ("\"\\u12ab\"", "\u{12ab}".to_owned()), + ("\"\\uAB12\"", "\u{AB12}".to_owned()), + ("\"\\uD83C\\uDF95\"", "\u{1F395}".to_owned()), ]); } @@ -1184,24 +1184,24 @@ fn test_parse_object() { test_parse_ok(vec![ ("{}", treemap!()), ("{ }", treemap!()), - ("{\"a\":3}", treemap!("a".to_string() => 3u64)), - ("{ \"a\" : 3 }", treemap!("a".to_string() => 3)), + ("{\"a\":3}", treemap!("a".to_owned() => 3u64)), + ("{ \"a\" : 3 }", treemap!("a".to_owned() => 3)), ( "{\"a\":3,\"b\":4}", - treemap!("a".to_string() => 3, "b".to_string() => 4), + treemap!("a".to_owned() => 3, "b".to_owned() => 4), ), ( " { \"a\" : 3 , \"b\" : 4 } ", - treemap!("a".to_string() => 3, "b".to_string() => 4), + treemap!("a".to_owned() => 3, "b".to_owned() => 4), ), ]); test_parse_ok(vec![( "{\"a\": {\"b\": 3, \"c\": 4}}", treemap!( - "a".to_string() => treemap!( - "b".to_string() => 3u64, - "c".to_string() => 4, + "a".to_owned() => treemap!( + "b".to_owned() => 3u64, + "c".to_owned() => 4, ), ), )]); @@ -1248,7 +1248,7 @@ fn test_parse_struct() { inner: vec![Inner { a: (), b: 2, - c: vec!["abc".to_string(), "xyz".to_string()], + c: vec!["abc".to_owned(), "xyz".to_owned()], }], }, ), @@ -1269,7 +1269,7 @@ fn test_parse_struct() { inner: vec![Inner { a: (), b: 2, - c: vec!["abc".to_string(), "xyz".to_string()], + c: vec!["abc".to_owned(), "xyz".to_owned()], }], } ); @@ -1283,7 +1283,7 @@ fn test_parse_struct() { fn test_parse_option() { test_parse_ok(vec![ ("null", None::), - ("\"jodhpurs\"", Some("jodhpurs".to_string())), + ("\"jodhpurs\"", Some("jodhpurs".to_owned())), ]); #[derive(Clone, Debug, PartialEq, Serialize, Deserialize)] @@ -1338,29 +1338,29 @@ fn test_parse_enum() { (" \"Dog\" ", Animal::Dog), ( "{\"Frog\":[\"Henry\",[]]}", - Animal::Frog("Henry".to_string(), vec![]), + Animal::Frog("Henry".to_owned(), vec![]), ), ( " { \"Frog\": [ \"Henry\" , [ 349, 102 ] ] } ", - Animal::Frog("Henry".to_string(), vec![349, 102]), + Animal::Frog("Henry".to_owned(), vec![349, 102]), ), ( "{\"Cat\": {\"age\": 5, \"name\": \"Kate\"}}", Animal::Cat { age: 5, - name: "Kate".to_string(), + name: "Kate".to_owned(), }, ), ( " { \"Cat\" : { \"age\" : 5 , \"name\" : \"Kate\" } } ", Animal::Cat { age: 5, - name: "Kate".to_string(), + name: "Kate".to_owned(), }, ), ( " { \"AntHive\" : [\"Bob\", \"Stuart\"] } ", - Animal::AntHive(vec!["Bob".to_string(), "Stuart".to_string()]), + Animal::AntHive(vec!["Bob".to_owned(), "Stuart".to_owned()]), ), ]); @@ -1377,8 +1377,8 @@ fn test_parse_enum() { "}" ), treemap!( - "a".to_string() => Animal::Dog, - "b".to_string() => Animal::Frog("Henry".to_string(), vec![]), + "a".to_owned() => Animal::Dog, + "b".to_owned() => Animal::Frog("Henry".to_owned(), vec![]), ), )]); } @@ -1653,7 +1653,7 @@ fn test_deserialize_from_stream() { let mut stream = TcpStream::connect("localhost:20000").unwrap(); let request = Message { - message: "hi there".to_string(), + message: "hi there".to_owned(), }; to_writer(&mut stream, &request).unwrap(); @@ -1679,20 +1679,20 @@ fn test_serialize_rejects_adt_keys() { fn test_bytes_ser() { let buf = vec![]; let bytes = Bytes::new(&buf); - assert_eq!(to_string(&bytes).unwrap(), "[]".to_string()); + assert_eq!(to_string(&bytes).unwrap(), "[]".to_owned()); let buf = vec![1, 2, 3]; let bytes = Bytes::new(&buf); - assert_eq!(to_string(&bytes).unwrap(), "[1,2,3]".to_string()); + assert_eq!(to_string(&bytes).unwrap(), "[1,2,3]".to_owned()); } #[test] fn test_byte_buf_ser() { let bytes = ByteBuf::new(); - assert_eq!(to_string(&bytes).unwrap(), "[]".to_string()); + assert_eq!(to_string(&bytes).unwrap(), "[]".to_owned()); let bytes = ByteBuf::from(vec![1, 2, 3]); - assert_eq!(to_string(&bytes).unwrap(), "[1,2,3]".to_string()); + assert_eq!(to_string(&bytes).unwrap(), "[1,2,3]".to_owned()); } #[test] diff --git a/.cargo-vendor/syn/.cargo-checksum.json b/.cargo-vendor/syn/.cargo-checksum.json index 3a2b67aefa..4dcad2ca78 100644 --- a/.cargo-vendor/syn/.cargo-checksum.json +++ b/.cargo-vendor/syn/.cargo-checksum.json @@ -1 +1 @@ -{"files":{"Cargo.toml":"93145cff820f7331bb6813f96ba91ba8eece1643bf1bb09f8bd670d52ab19159","LICENSE-APACHE":"62c7a1e35f56406896d7aa7ca52d0cc0d272ac022b5d2796e7d6905db8a3636a","LICENSE-MIT":"23f18e03dc49df91622fe2a76176497404e46ced8a715d9d2b67a7446571cca3","README.md":"ae6deb98ea51df4829c0327139a555cc115c6bcf6fb459db0ef0d6a96c4566ec","benches/file.rs":"0a0527c78d849148cbb6118b4d36f72da7d4add865ba1a410e0a1be9e8dbfe0e","benches/rust.rs":"a4b2ac626d36df1e344b1389384a559fb47da291b8ad3aa964d59d93279eebb1","src/attr.rs":"94089e45d40b1b4610e3167c0715c9075bcfc87e74cb7e306cbb0635786ea9b9","src/bigint.rs":"0299829b2f7a1a798fe2f7bc1680e4a10f9b6f4a852d09af4da2deab466c4242","src/buffer.rs":"00f28570908d311f3f568f3b116dc4f6aa3da556eb0bd5af8d6771f3301ab060","src/classify.rs":"00312dc6d51f634530f06b44365365a2588a3f6f40740224f64d0cde94839b5b","src/custom_keyword.rs":"322114e36ae43a2f8605506fb4568efdbc2986853e2fee74bd10a4ca0fb60c69","src/custom_punctuation.rs":"2ae2339c29b1aff3ab16157d51a3a07bfca594aa38586981534fe07a62cdd9d1","src/data.rs":"6f20b5ebbac7c3e9389cb0b5b0637f34d3ab721b6d6707b0eed274024ac78675","src/derive.rs":"f54f8cf9386a2d45186ff3c86ade5dae59e0e337b0198532449190ae8520cff8","src/discouraged.rs":"88b38a75d074d3f0b4186f2b4988844e8284a0c9d279d784327c6b595b9e33ea","src/drops.rs":"013385f1dd95663f1afab41abc1e2eea04181998644828935ca564c74d6462ae","src/error.rs":"3b03fd75eee8b0bb646eaf20f7e287345bdc7515ad5286024a2dd1e53c1e7bf2","src/export.rs":"b260cc49da1da3489e7755832bc8015cfad79e84f6c74e237f65ae25a2385e56","src/expr.rs":"fa075b29c787bb9990aedcfdf411e28e4ed178e7e757f813d5275b5cc4a892a0","src/ext.rs":"ed143b029af286e62ceb4310286a4ce894792dd588465face042b4199b39d329","src/file.rs":"378839f4e6a9f30d524a6a9213cc513711ddeb14e04d98b0c67644d81788919d","src/fixup.rs":"b312a6a527f81df17a94cb9f08def820584ca76cbef07893bbed492f2f0506af","src/gen/clone.rs":"c8d65438186665ed59084dbf1d6e5d78c1a4a88d515eba605c2a6fe2f6dfc293","src/gen/debug.rs":"d670460305ea3088211008e16590d0830a32c9520d5b22749f8c1d94eaae63d3","src/gen/eq.rs":"584ba47856dbb702ccf973e10a3c178146770cde542ffad5c1bc2b04b2aa3c40","src/gen/fold.rs":"e8ba8fe047a70a3285d55c6baa146c08be9554c5dbf0f8e6946496607b724f03","src/gen/hash.rs":"4b3f3251698412984b0a1c77b5b5f63eeb27bc783e270272e6f6dcaf83490146","src/gen/visit.rs":"7f80b4e6a7b33558824378fceb9f2e388453dac8b5cdaaa5e7b0faf8bb44bbdb","src/gen/visit_mut.rs":"126c0cede7870202ba4163791fa190bda49764c7f9e0a5983ad9ca49064a2e6d","src/generics.rs":"f532d7e4516c250e3eeda92e98ab2d1af19c9a368850abc8f56c230f1bbe534a","src/group.rs":"ddbff97e41315bdf9dfce215a8c00bb4d532827cf794246afde7308b39dc09ca","src/ident.rs":"d6061030fadae9c7dc847e1ee46178d9657d782aad108c7197e8cafe765b3eaa","src/item.rs":"89afdbcb9a5ef89a9cf3fb2033e0ac750dc27ef320c9f04e41c2870edf50ed00","src/lib.rs":"fd20ede898ffd7645154f4303e9d16073749bad09146c2b79fbca9e27abe50e5","src/lifetime.rs":"5787d5a5dc7e5332b03283a25ae0a9e826464242ca2d149b1a19e7cae9cee34d","src/lit.rs":"8fa6fa2d752bd1bf5a94cd5cbf9becbcba37d491876614ce62dba0f8fc745a3d","src/lookahead.rs":"eae3c1855dfd1f9bca5dd4afba07d41b15f8c108017f9eda3dc515567160a2af","src/mac.rs":"fdce8291f71adef3f69975f229156dca2309ca232ed943061afaf96220908ab8","src/macros.rs":"2a6e895dfe1c3a9a7237b5e23358ca5d8967e2beae6d094dda68d3659f9a5c84","src/meta.rs":"969d8ccbdbc6ea2e4928a21831b791c57447b231e1373149e4c63b46f3951801","src/op.rs":"a61757370f802e44efa3c4a1057ae2cd26e64e273f7d76c06d5ffb49602319e2","src/parse.rs":"fc010e04b49c36813ee50f37d974289ae7081b3f96c37051340040f460b375aa","src/parse_macro_input.rs":"e4e22b63d0496d06a4ca17742a22467ed93f08a739081324773828bad63175ee","src/parse_quote.rs":"6f4e5e28622205651bdb23fcf0f0526aef81a7921aaeac2e7a1a1e3b67916fe9","src/pat.rs":"1455a882df5defbf6b774a80f37fe24cf96d5ad1e5584c5204c0c9723883566b","src/path.rs":"1cd7f82a79d0978c3d017e545e7147f50d54a8a8348ed18b21359d5d5c7763aa","src/precedence.rs":"a0c3cd0d873e7c40b609ce3279838deb42cec4004bd4bf53276325428d7584fb","src/print.rs":"22910bf0521ab868ebd7c62601c55912d12cfb400c65723e08e5cfa3a2d111c0","src/punctuated.rs":"6e4a63b736f371bbb4cba83bb674e29aa25f9f214bc10e9acf785673a39d3fc5","src/restriction.rs":"a7152ec5a4ee4f55446019aa2b4d84f2238776f0e6ffc0c22adf3374b517fe56","src/sealed.rs":"6ece3b3dcb30f6bb98b93d83759ca7712ee8592bef9c0511141039c38765db0e","src/span.rs":"0a48e375e5c9768f6f64174a91ba6a255f4b021e2fb3548d8494e617f142601b","src/spanned.rs":"4b9bd65f60ab81922adfd0be8f03b6d50e98da3a5f525f242f9639aec4beac79","src/stmt.rs":"bb4cd196ce23c3fc07fefa47e67a0cd815db4f02ce1192625379d60bd657ffd2","src/thread.rs":"1f1deb1272525ab2af9a36aac4bce8f65b0e315adb1656641fd7075662f49222","src/token.rs":"3625e05bfaaf48adf7685669a59186386862572fa4550c5e94bf9a1febdb069e","src/tt.rs":"a58303a95d08d6bf3f3e09715b9b70a57b91b54774cfc1f00f2848034d2ff5c7","src/ty.rs":"1deae7fdaba88c0300ff562cb844f78742e379ece4254e54986e32721116126f","src/verbatim.rs":"87cbe82a90f48efb57ffd09141042698b3e011a21d0d5412154d80324b0a5ef0","src/whitespace.rs":"9cdcbfe9045b259046329a795bc1105ab5a871471a6d3f7318d275ee53f7a825","tests/common/eq.rs":"ad433c5911258010fc6ff2a93ad1f7f3acf90051969358f712fca3ef30d6461c","tests/common/mod.rs":"1f43ce65b273172c87640e87ee0775ecb6f19280fbf8f792570d019b61f9a32d","tests/common/parse.rs":"c173bd515ba1d53b3b676161849fa8df0ae3d5592445843cee65b6628b71ac32","tests/debug/gen.rs":"3ca161a049fe72ff73ead99fbfe78335fdb2ac7c41085fe8cd0c9a0b29995151","tests/debug/mod.rs":"b56136586267ae1812a937b69215dd053ada2c21717771d89dcd3ce52bcb27f5","tests/macros/mod.rs":"64b0da858096e7cf0f772e66bc1787a867e45897d7677de580c0a1f35c0f6852","tests/regression.rs":"e9565ea0efecb4136f099164ffcfa26e1996b0a27fb9c6659e90ad9bdd42e7b6","tests/regression/issue1108.rs":"f32db35244a674e22ff824ca9e5bbec2184e287b59f022db68c418b5878a2edc","tests/regression/issue1235.rs":"a2266b10c3f7c7af5734817ab0a3e8b309b51e7d177b63f26e67e6b744d280b0","tests/repo/mod.rs":"7d2c93eecb65204c8417db8ebe3e6875a56f1cd6975263ccca9440cf43832266","tests/repo/progress.rs":"c08d0314a7f3ecf760d471f27da3cd2a500aeb9f1c8331bffb2aa648f9fabf3f","tests/test_asyncness.rs":"8982f6bc4e36510f924e288247473403e72697389ce9dda4e4b5ab0a8e49259f","tests/test_attribute.rs":"b35550a43bbd187bb330997ba36f90c65d8fc489135b1d32ef4547f145cb7612","tests/test_derive_input.rs":"99c4e6e45e3322ea9e269b309059c8a00fda1dcc03aed41f6e7d8c7e0a72fa2b","tests/test_expr.rs":"d72fd1a47db706db419327bdcd8e06b26121056b96fb6c643c2244df343f1679","tests/test_generics.rs":"2fcc8575d695b568f3724b3b33d853b8fa6d9864eb816b5e3ca82420682e6155","tests/test_grouping.rs":"1bd63c8ca0b90bd493fb3f927079ab9ddf74d2a78da82db2f638e652d22305d5","tests/test_ident.rs":"d5850e817720e774cd397a46dbc5298c57933823c18e20805e84503fc9387e8f","tests/test_item.rs":"1b8412a5581adf93eaa215785a592f139af8511c954dee283d52dff2718a6cc2","tests/test_iterators.rs":"e7bd4e0743b852b9e0286489aee24fb08d48559bfa20ae55f3c7552ab69a5ba1","tests/test_lit.rs":"01b0acfe03cff16e7c1a45ceb7f4b637e5cbc6145840886ba981b7ed8e83691c","tests/test_meta.rs":"4ae570333f849ed8edec5dd957111a2deb721ede360f1e1ffeeab75380578ad4","tests/test_parse_buffer.rs":"0de6af13ba0345986b18d495063f9b75a1018e8569c34b277f9522c63a6c0941","tests/test_parse_quote.rs":"928176da6ebb449ef01a798f3352c9b181d3077c1266eb008df73876f4013c47","tests/test_parse_stream.rs":"b6b533432173123d6d01d8d2cb33714bc50b30b16ffbb6116f93937221ad4594","tests/test_pat.rs":"f6954a50e62a97ac2bc1ba0cb7a5a1fc53b7b01fb55ffe0176bee3fe1955d460","tests/test_path.rs":"d54350aa91508f8d301f5be3e3a34e03b0615b1a04e8fbbab9840da20161838b","tests/test_precedence.rs":"7e825e3845a96a274d99484f720db7ddf06205ba96cfcbef191749bcbce89620","tests/test_receiver.rs":"af64117acd66fbf42edc476f731ecd20c88009d9cb641dbd7a1d6384ae99ae73","tests/test_round_trip.rs":"48559ad63116f31fbbfd0d8501c5ace77d47f60a26b70359244bb0988fe65084","tests/test_shebang.rs":"98e8a6690c04e0aad2893b747593620b51836fe704f50f5c6fe352609837138a","tests/test_size.rs":"03efaf829b80b7db1f831474c1d3ce268914fc499d0e2a7eea03cad04a482974","tests/test_stmt.rs":"bbc305ea888254798b6faf285187d8bc7a955e4402d9a497d4b9d361e0436691","tests/test_token_trees.rs":"d012da9c3c861073711b006bf6ffdc073821fb9fb0a08733628cdae57124d1f5","tests/test_ty.rs":"aa14822fe99f3ac22eb056f5488a8110dfdb922e0008ea82b73bca8e1a613cd5","tests/test_unparenthesize.rs":"6c723cd6332b7d8be703fab20f085cef7716692eb07b1d75f2e590935656641d","tests/test_visibility.rs":"7bd239aef6f6d8173462dbd869064f3fdb9ba71644ac1f62c5d2fbb2568fb986","tests/zzz_stable.rs":"2a862e59cb446235ed99aec0e6ada8e16d3ecc30229b29d825b7c0bbc2602989"},"package":"89132cd0bf050864e1d38dc3bbc07a0eb8e7530af26344d3d2bbbef83499f590"} \ No newline at end of file +{"files":{"Cargo.toml":"c283c7c945e83c6dd1972123605e71f9a17ab1a75ef0bf539ddf45f532c8a4c9","LICENSE-APACHE":"62c7a1e35f56406896d7aa7ca52d0cc0d272ac022b5d2796e7d6905db8a3636a","LICENSE-MIT":"23f18e03dc49df91622fe2a76176497404e46ced8a715d9d2b67a7446571cca3","README.md":"ae6deb98ea51df4829c0327139a555cc115c6bcf6fb459db0ef0d6a96c4566ec","benches/file.rs":"e3593aa456d7ad50a118150e262ce2beb2092ed5c9391e93a055700d228cafb2","benches/rust.rs":"f40e33d0affc2d2081dc4522419382bf9a7b767eada7ac0063a1e6128929359f","src/attr.rs":"94089e45d40b1b4610e3167c0715c9075bcfc87e74cb7e306cbb0635786ea9b9","src/bigint.rs":"0299829b2f7a1a798fe2f7bc1680e4a10f9b6f4a852d09af4da2deab466c4242","src/buffer.rs":"00f28570908d311f3f568f3b116dc4f6aa3da556eb0bd5af8d6771f3301ab060","src/classify.rs":"22e0fb8ac18fdf32e6858198f9a2336c2b818142a64a3edb07c765761304fb35","src/custom_keyword.rs":"322114e36ae43a2f8605506fb4568efdbc2986853e2fee74bd10a4ca0fb60c69","src/custom_punctuation.rs":"2ae2339c29b1aff3ab16157d51a3a07bfca594aa38586981534fe07a62cdd9d1","src/data.rs":"6f20b5ebbac7c3e9389cb0b5b0637f34d3ab721b6d6707b0eed274024ac78675","src/derive.rs":"f54f8cf9386a2d45186ff3c86ade5dae59e0e337b0198532449190ae8520cff8","src/discouraged.rs":"88b38a75d074d3f0b4186f2b4988844e8284a0c9d279d784327c6b595b9e33ea","src/drops.rs":"e98da4aaafb5afc75919f9e2914326ad09bf16094a9407c60a05515a2e01dd00","src/error.rs":"3b03fd75eee8b0bb646eaf20f7e287345bdc7515ad5286024a2dd1e53c1e7bf2","src/export.rs":"b260cc49da1da3489e7755832bc8015cfad79e84f6c74e237f65ae25a2385e56","src/expr.rs":"43034adb5a033ae03ddedfe48ddbefff280aa0a423ae27ea3e30ad8c5435ddeb","src/ext.rs":"ed143b029af286e62ceb4310286a4ce894792dd588465face042b4199b39d329","src/file.rs":"378839f4e6a9f30d524a6a9213cc513711ddeb14e04d98b0c67644d81788919d","src/fixup.rs":"b312a6a527f81df17a94cb9f08def820584ca76cbef07893bbed492f2f0506af","src/gen/clone.rs":"f90d7e93e3def30a1809a04bb3182a0fc5529a247d5697e68ff4002d80098064","src/gen/debug.rs":"e3226aa76111ca7f216b6f920507d8e15e6afd684b231d2b9ddafa34c8f3ba9c","src/gen/eq.rs":"5567f7c2568ea9c227aad86be3aefa3fe8f891a647d3355ccbe8bfd063e324ad","src/gen/fold.rs":"ecfd5c75e205a3b7a102236d450a937595cd98dfde489fb75e5048c97bed2998","src/gen/hash.rs":"d289b25e60dd465d4aaa718f1b23a6f7b14a4eef5dd273aae60b3d1d83749263","src/gen/visit.rs":"8e90d0f425184a9f8867286c4469932a3c77cceb843fba539832c6c742ab46f4","src/gen/visit_mut.rs":"53dfe3b2368f970dee431bfbe1daeee95507ed1a4308a34d2c3f43efe10a9d90","src/generics.rs":"eb5ab81bb37a19cb9318df4c192e2e2053d1cfc9cc8afea80287e6e30f5be73b","src/group.rs":"ddbff97e41315bdf9dfce215a8c00bb4d532827cf794246afde7308b39dc09ca","src/ident.rs":"d6061030fadae9c7dc847e1ee46178d9657d782aad108c7197e8cafe765b3eaa","src/item.rs":"b927091b6f4f687baade9feede9234f2369776ca4f3f280c3be319ed90b886b8","src/lib.rs":"9b9d0cbed0e7c2c1911cb9a9c83807a8a5dc3dba3b3e4dd20efa29c3249d6921","src/lifetime.rs":"5787d5a5dc7e5332b03283a25ae0a9e826464242ca2d149b1a19e7cae9cee34d","src/lit.rs":"8fa6fa2d752bd1bf5a94cd5cbf9becbcba37d491876614ce62dba0f8fc745a3d","src/lookahead.rs":"eae3c1855dfd1f9bca5dd4afba07d41b15f8c108017f9eda3dc515567160a2af","src/mac.rs":"fdce8291f71adef3f69975f229156dca2309ca232ed943061afaf96220908ab8","src/macros.rs":"2a6e895dfe1c3a9a7237b5e23358ca5d8967e2beae6d094dda68d3659f9a5c84","src/meta.rs":"969d8ccbdbc6ea2e4928a21831b791c57447b231e1373149e4c63b46f3951801","src/op.rs":"a61757370f802e44efa3c4a1057ae2cd26e64e273f7d76c06d5ffb49602319e2","src/parse.rs":"fc010e04b49c36813ee50f37d974289ae7081b3f96c37051340040f460b375aa","src/parse_macro_input.rs":"e4e22b63d0496d06a4ca17742a22467ed93f08a739081324773828bad63175ee","src/parse_quote.rs":"6f4e5e28622205651bdb23fcf0f0526aef81a7921aaeac2e7a1a1e3b67916fe9","src/pat.rs":"1455a882df5defbf6b774a80f37fe24cf96d5ad1e5584c5204c0c9723883566b","src/path.rs":"0e1f132bcb8586b0e93d377da96d48a6c8e63b2c3ea2b83c23698da5ec8039d5","src/precedence.rs":"b745555d0b743bf0d72b56c46ae722b768194ecf9bfbe0fe6c97edcec8c7fd50","src/print.rs":"22910bf0521ab868ebd7c62601c55912d12cfb400c65723e08e5cfa3a2d111c0","src/punctuated.rs":"6e4a63b736f371bbb4cba83bb674e29aa25f9f214bc10e9acf785673a39d3fc5","src/restriction.rs":"a7152ec5a4ee4f55446019aa2b4d84f2238776f0e6ffc0c22adf3374b517fe56","src/sealed.rs":"6ece3b3dcb30f6bb98b93d83759ca7712ee8592bef9c0511141039c38765db0e","src/span.rs":"0a48e375e5c9768f6f64174a91ba6a255f4b021e2fb3548d8494e617f142601b","src/spanned.rs":"4b9bd65f60ab81922adfd0be8f03b6d50e98da3a5f525f242f9639aec4beac79","src/stmt.rs":"9d68b914eac9569de71b3b76fdec2a729796c7350b6eb03d2255662233b12195","src/thread.rs":"1f1deb1272525ab2af9a36aac4bce8f65b0e315adb1656641fd7075662f49222","src/token.rs":"aa7f0e20c3f84e88810ef3ff30f71722973fdeed5cf31ce617f18a5459c758f0","src/tt.rs":"a58303a95d08d6bf3f3e09715b9b70a57b91b54774cfc1f00f2848034d2ff5c7","src/ty.rs":"328ad8f8d9cdd898606461d28426143e0b12653ddcab75fad18343b43c42ac2a","src/verbatim.rs":"87cbe82a90f48efb57ffd09141042698b3e011a21d0d5412154d80324b0a5ef0","src/whitespace.rs":"9cdcbfe9045b259046329a795bc1105ab5a871471a6d3f7318d275ee53f7a825","tests/common/eq.rs":"b3b055518f7405ed3b782ad4a3f4a916cb635ad66cb506517c4eda7c217ed4d0","tests/common/mod.rs":"1f43ce65b273172c87640e87ee0775ecb6f19280fbf8f792570d019b61f9a32d","tests/common/parse.rs":"c173bd515ba1d53b3b676161849fa8df0ae3d5592445843cee65b6628b71ac32","tests/debug/gen.rs":"8d9d3c8809817055b2634f4ba8fa2c253856ee8b260f6efea3fe60cd0966dc93","tests/debug/mod.rs":"1259df940bbcaa968a837e402d6853f2efa38d2260e306d42f17f9e8ef74fae5","tests/macros/mod.rs":"c246b05fcca55d3880278754f36c802a8a006bb0a17d0c787989dd6716e76f37","tests/regression.rs":"e9565ea0efecb4136f099164ffcfa26e1996b0a27fb9c6659e90ad9bdd42e7b6","tests/regression/issue1108.rs":"f32db35244a674e22ff824ca9e5bbec2184e287b59f022db68c418b5878a2edc","tests/regression/issue1235.rs":"a2266b10c3f7c7af5734817ab0a3e8b309b51e7d177b63f26e67e6b744d280b0","tests/repo/mod.rs":"7d2c93eecb65204c8417db8ebe3e6875a56f1cd6975263ccca9440cf43832266","tests/repo/progress.rs":"c08d0314a7f3ecf760d471f27da3cd2a500aeb9f1c8331bffb2aa648f9fabf3f","tests/test_asyncness.rs":"aca499c3c120f35f56033493aa732079af9a85463cc39297ed46ad2397be1c6d","tests/test_attribute.rs":"48078187c20a257422e02042c47acea8bb9b3644696e5d6a1eb0962864b81691","tests/test_derive_input.rs":"e062007ef389c0b8490d9145f9cc5dec59acbf34927c92355a43f2a847070ac2","tests/test_expr.rs":"f33918ab66c64605890d835fd72d96ea7c9e8ec645518030b4c2f8c8fd569d85","tests/test_generics.rs":"73ed0bb52b75720911fb03977b8ec33b873c2eaab735114d7a5fb45531b0b3c4","tests/test_grouping.rs":"28084b1b922884b54dfa6dc573ffc19a58138e5b08e0b6e0a82120572983c81d","tests/test_ident.rs":"d5850e817720e774cd397a46dbc5298c57933823c18e20805e84503fc9387e8f","tests/test_item.rs":"7191698ea9ed6e94ac57dbcfc4b484623d0c31cf89b005d5935083431be725f3","tests/test_iterators.rs":"f1ab7d5504dc06dc79cc3ba09c0364b045d2da86deb06e60412e6b80208b7439","tests/test_lit.rs":"8ec75a817036f0ff918b350370e90b2fb3fdef0ed32587b0015ebc09f9456c10","tests/test_meta.rs":"fee43f1219dd23523766feded7609d7c7fc3a156ecd55e309b2c5b40f11e045a","tests/test_parse_buffer.rs":"0de6af13ba0345986b18d495063f9b75a1018e8569c34b277f9522c63a6c0941","tests/test_parse_quote.rs":"28c11ab23b374327f56b29cc5f424f4a22a5974b92f9077a8dd0b8dca08c8d5c","tests/test_parse_stream.rs":"b6b533432173123d6d01d8d2cb33714bc50b30b16ffbb6116f93937221ad4594","tests/test_pat.rs":"d70d701ab2b9bd4f632e926af44c829ac273cf6fdacbdc52df4ec7cefcc9e09c","tests/test_path.rs":"9529c461c38ac1ecca1c6b798392aba791e7d371228b7670cde4c9b34c8e9d68","tests/test_precedence.rs":"c9286e45cbf15355715be07d877e9d0aeb3500fa65ec19fc72cdaaca44f5fb4c","tests/test_receiver.rs":"d34a1c5cac8f78ff0ff41df3bd9631b02edacab4d50059e8a2ed3d13fe6ba4c5","tests/test_round_trip.rs":"9c00a071a98cad7ce730d9e78e75ac63852924d6c1eaa6b6e29d06f02d276560","tests/test_shebang.rs":"98f7ec66e2240391c8f48fe9a330737930740b6275fef22486555ebef113acad","tests/test_size.rs":"03efaf829b80b7db1f831474c1d3ce268914fc499d0e2a7eea03cad04a482974","tests/test_stmt.rs":"3cf4463864039483c1ee329e3796d690b47c18bc8255c407451d31b239440ffe","tests/test_token_trees.rs":"f0a57f4d46b5dd4dbdf601450f6eb4db5fb5622dce3e9d17d2f021021b37fd9d","tests/test_ty.rs":"839037e69f49cf702dea4b68527e08671f7c837e36f8e72c4ba32d6588e9f1f9","tests/test_unparenthesize.rs":"3e1eaf1025849db95d086a06735c6c564b30db87ee7abb3e4bb82f533e58c638","tests/test_visibility.rs":"f0ef86f7a89b8b78b841cad25d98420e96f59309d3d42f6930c6defad183edc7","tests/zzz_stable.rs":"2a862e59cb446235ed99aec0e6ada8e16d3ecc30229b29d825b7c0bbc2602989"},"package":"e6e185e337f816bc8da115b8afcb3324006ccc82eeaddf35113888d3bd8e44ac"} \ No newline at end of file diff --git a/.cargo-vendor/syn/Cargo.toml b/.cargo-vendor/syn/Cargo.toml index c913341857..80eb5800c0 100644 --- a/.cargo-vendor/syn/Cargo.toml +++ b/.cargo-vendor/syn/Cargo.toml @@ -13,7 +13,7 @@ edition = "2021" rust-version = "1.61" name = "syn" -version = "2.0.79" +version = "2.0.80" authors = ["David Tolnay "] build = false include = [ @@ -25,6 +25,7 @@ include = [ "/src/**", "/tests/**", ] +autolib = false autobins = false autoexamples = false autotests = false diff --git a/.cargo-vendor/syn/benches/file.rs b/.cargo-vendor/syn/benches/file.rs index b424723966..5754d20a67 100644 --- a/.cargo-vendor/syn/benches/file.rs +++ b/.cargo-vendor/syn/benches/file.rs @@ -8,6 +8,7 @@ clippy::match_like_matches_macro, clippy::missing_panics_doc, clippy::must_use_candidate, + clippy::needless_lifetimes, clippy::uninlined_format_args )] diff --git a/.cargo-vendor/syn/benches/rust.rs b/.cargo-vendor/syn/benches/rust.rs index 09917e7cbe..75a9f91010 100644 --- a/.cargo-vendor/syn/benches/rust.rs +++ b/.cargo-vendor/syn/benches/rust.rs @@ -11,6 +11,7 @@ clippy::let_underscore_untyped, clippy::manual_let_else, clippy::match_like_matches_macro, + clippy::needless_lifetimes, clippy::uninlined_format_args, clippy::unnecessary_wraps )] @@ -70,13 +71,13 @@ mod librustc_parse { impl Emitter for SilentEmitter { fn emit_diagnostic(&mut self, _diag: DiagInner) {} - fn source_map(&self) -> Option<&Lrc> { + fn source_map(&self) -> Option<&SourceMap> { None } } impl Translate for SilentEmitter { - fn fluent_bundle(&self) -> Option<&Lrc> { + fn fluent_bundle(&self) -> Option<&FluentBundle> { None } fn fallback_fluent_bundle(&self) -> &FluentBundle { diff --git a/.cargo-vendor/syn/src/classify.rs b/.cargo-vendor/syn/src/classify.rs index 42732e6d8d..c125fc2164 100644 --- a/.cargo-vendor/syn/src/classify.rs +++ b/.cargo-vendor/syn/src/classify.rs @@ -54,6 +54,7 @@ pub(crate) fn requires_comma_to_be_match_arm(expr: &Expr) -> bool { | Expr::Paren(_) | Expr::Path(_) | Expr::Range(_) + | Expr::RawAddr(_) | Expr::Reference(_) | Expr::Repeat(_) | Expr::Return(_) @@ -105,6 +106,7 @@ pub(crate) fn confusable_with_adjacent_block(mut expr: &Expr) -> bool { (None, None) => stack.pop(), } } + Expr::RawAddr(e) => Some(&e.expr), Expr::Reference(e) => Some(&e.expr), Expr::Return(e) => { if e.expr.is_none() && stack.is_empty() { @@ -246,6 +248,7 @@ pub(crate) fn expr_leading_label(mut expr: &Expr) -> bool { | Expr::Match(_) | Expr::Paren(_) | Expr::Path(_) + | Expr::RawAddr(_) | Expr::Reference(_) | Expr::Repeat(_) | Expr::Return(_) @@ -291,6 +294,7 @@ pub(crate) fn expr_trailing_brace(mut expr: &Expr) -> bool { Some(end) => expr = end, None => return false, }, + Expr::RawAddr(e) => expr = &e.expr, Expr::Reference(e) => expr = &e.expr, Expr::Return(e) => match &e.expr { Some(e) => expr = e, diff --git a/.cargo-vendor/syn/src/drops.rs b/.cargo-vendor/syn/src/drops.rs index 89b42d82ef..c54308f02c 100644 --- a/.cargo-vendor/syn/src/drops.rs +++ b/.cargo-vendor/syn/src/drops.rs @@ -32,10 +32,10 @@ impl DerefMut for NoDrop { pub(crate) trait TrivialDrop {} impl TrivialDrop for iter::Empty {} -impl<'a, T> TrivialDrop for slice::Iter<'a, T> {} -impl<'a, T> TrivialDrop for slice::IterMut<'a, T> {} -impl<'a, T> TrivialDrop for option::IntoIter<&'a T> {} -impl<'a, T> TrivialDrop for option::IntoIter<&'a mut T> {} +impl TrivialDrop for slice::Iter<'_, T> {} +impl TrivialDrop for slice::IterMut<'_, T> {} +impl TrivialDrop for option::IntoIter<&T> {} +impl TrivialDrop for option::IntoIter<&mut T> {} #[test] fn test_needs_drop() { diff --git a/.cargo-vendor/syn/src/expr.rs b/.cargo-vendor/syn/src/expr.rs index 409131b4f6..8b9f030acb 100644 --- a/.cargo-vendor/syn/src/expr.rs +++ b/.cargo-vendor/syn/src/expr.rs @@ -202,6 +202,9 @@ ast_enum_of_structs! { /// A range expression: `1..2`, `1..`, `..2`, `1..=2`, `..=2`. Range(ExprRange), + /// Address-of operation: `&raw const place` or `&raw mut place`. + RawAddr(ExprRawAddr), + /// A referencing operation: `&a` or `&mut a`. Reference(ExprReference), @@ -574,6 +577,18 @@ ast_struct! { } } +ast_struct! { + /// Address-of operation: `&raw const place` or `&raw mut place`. + #[cfg_attr(docsrs, doc(cfg(feature = "full")))] + pub struct ExprRawAddr #full { + pub attrs: Vec, + pub and_token: Token![&], + pub raw: Token![raw], + pub mutability: PointerMutability, + pub expr: Box, + } +} + ast_struct! { /// A referencing operation: `&a` or `&mut a`. #[cfg_attr(docsrs, doc(cfg(any(feature = "full", feature = "derive"))))] @@ -904,6 +919,7 @@ impl Expr { | Expr::Paren(ExprParen { attrs, .. }) | Expr::Path(ExprPath { attrs, .. }) | Expr::Range(ExprRange { attrs, .. }) + | Expr::RawAddr(ExprRawAddr { attrs, .. }) | Expr::Reference(ExprReference { attrs, .. }) | Expr::Repeat(ExprRepeat { attrs, .. }) | Expr::Return(ExprReturn { attrs, .. }) @@ -1099,6 +1115,17 @@ ast_enum! { } } +#[cfg(feature = "full")] +ast_enum! { + /// Mutability of a raw pointer (`*const T`, `*mut T`), in which non-mutable + /// isn't the implicit default. + #[cfg_attr(docsrs, doc(cfg(feature = "full")))] + pub enum PointerMutability { + Const(Token![const]), + Mut(Token![mut]), + } +} + #[cfg(feature = "parsing")] pub(crate) mod parsing { #[cfg(feature = "full")] @@ -1111,8 +1138,8 @@ pub(crate) mod parsing { use crate::expr::{ Arm, ExprArray, ExprAssign, ExprAsync, ExprAwait, ExprBlock, ExprBreak, ExprClosure, ExprConst, ExprContinue, ExprForLoop, ExprIf, ExprInfer, ExprLet, ExprLoop, ExprMatch, - ExprRange, ExprRepeat, ExprReturn, ExprTry, ExprTryBlock, ExprUnsafe, ExprWhile, ExprYield, - Label, RangeLimits, + ExprRange, ExprRawAddr, ExprRepeat, ExprReturn, ExprTry, ExprTryBlock, ExprUnsafe, + ExprWhile, ExprYield, Label, PointerMutability, RangeLimits, }; use crate::expr::{ Expr, ExprBinary, ExprCall, ExprCast, ExprField, ExprGroup, ExprIndex, ExprLit, ExprMacro, @@ -1151,7 +1178,6 @@ pub(crate) mod parsing { mod kw { crate::custom_keyword!(builtin); - crate::custom_keyword!(raw); } // When we're parsing expressions which occur before blocks, like in an if @@ -1468,7 +1494,7 @@ pub(crate) mod parsing { if input.peek(Token![&]) { let and_token: Token![&] = input.parse()?; - let raw: Option = if input.peek(kw::raw) + let raw: Option = if input.peek(Token![raw]) && (input.peek2(Token![mut]) || input.peek2(Token![const])) { Some(input.parse()?) @@ -1476,12 +1502,23 @@ pub(crate) mod parsing { None }; let mutability: Option = input.parse()?; - if raw.is_some() && mutability.is_none() { - input.parse::()?; - } + let const_token: Option = if raw.is_some() && mutability.is_none() { + Some(input.parse()?) + } else { + None + }; let expr = Box::new(unary_expr(input, allow_struct)?); - if raw.is_some() { - Ok(Expr::Verbatim(verbatim::between(&begin, input))) + if let Some(raw) = raw { + Ok(Expr::RawAddr(ExprRawAddr { + attrs, + and_token, + raw, + mutability: match mutability { + Some(mut_token) => PointerMutability::Mut(mut_token), + None => PointerMutability::Const(const_token.unwrap()), + }, + expr, + })) } else { Ok(Expr::Reference(ExprReference { attrs, @@ -2359,6 +2396,21 @@ pub(crate) mod parsing { } } + #[cfg(feature = "full")] + #[cfg_attr(docsrs, doc(cfg(feature = "parsing")))] + impl Parse for ExprRawAddr { + fn parse(input: ParseStream) -> Result { + let allow_struct = AllowStruct(true); + Ok(ExprRawAddr { + attrs: Vec::new(), + and_token: input.parse()?, + raw: input.parse()?, + mutability: input.parse()?, + expr: Box::new(unary_expr(input, allow_struct)?), + }) + } + } + #[cfg(feature = "full")] #[cfg_attr(docsrs, doc(cfg(feature = "parsing")))] impl Parse for ExprReference { @@ -2970,6 +3022,21 @@ pub(crate) mod parsing { } } + #[cfg(feature = "full")] + #[cfg_attr(docsrs, doc(cfg(feature = "parsing")))] + impl Parse for PointerMutability { + fn parse(input: ParseStream) -> Result { + let lookahead = input.lookahead1(); + if lookahead.peek(Token![const]) { + Ok(PointerMutability::Const(input.parse()?)) + } else if lookahead.peek(Token![mut]) { + Ok(PointerMutability::Mut(input.parse()?)) + } else { + Err(lookahead.error()) + } + } + } + fn check_cast(input: ParseStream) -> Result<()> { let kind = if input.peek(Token![.]) && !input.peek(Token![..]) { if input.peek2(Token![await]) { @@ -3004,8 +3071,8 @@ pub(crate) mod printing { use crate::expr::{ Arm, ExprArray, ExprAssign, ExprAsync, ExprAwait, ExprBlock, ExprBreak, ExprClosure, ExprConst, ExprContinue, ExprForLoop, ExprIf, ExprInfer, ExprLet, ExprLoop, ExprMatch, - ExprRange, ExprRepeat, ExprReturn, ExprTry, ExprTryBlock, ExprUnsafe, ExprWhile, ExprYield, - Label, RangeLimits, + ExprRange, ExprRawAddr, ExprRepeat, ExprReturn, ExprTry, ExprTryBlock, ExprUnsafe, + ExprWhile, ExprYield, Label, PointerMutability, RangeLimits, }; use crate::expr::{ Expr, ExprBinary, ExprCall, ExprCast, ExprField, ExprGroup, ExprIndex, ExprLit, ExprMacro, @@ -3131,6 +3198,8 @@ pub(crate) mod printing { Expr::Path(e) => e.to_tokens(tokens), #[cfg(feature = "full")] Expr::Range(e) => print_expr_range(e, tokens, fixup), + #[cfg(feature = "full")] + Expr::RawAddr(e) => print_expr_raw_addr(e, tokens, fixup), Expr::Reference(e) => print_expr_reference(e, tokens, fixup), #[cfg(feature = "full")] Expr::Repeat(e) => e.to_tokens(tokens), @@ -3689,6 +3758,28 @@ pub(crate) mod printing { } } + #[cfg(feature = "full")] + #[cfg_attr(docsrs, doc(cfg(feature = "printing")))] + impl ToTokens for ExprRawAddr { + fn to_tokens(&self, tokens: &mut TokenStream) { + print_expr_raw_addr(self, tokens, FixupContext::NONE); + } + } + + #[cfg(feature = "full")] + fn print_expr_raw_addr(e: &ExprRawAddr, tokens: &mut TokenStream, fixup: FixupContext) { + outer_attrs_to_tokens(&e.attrs, tokens); + e.and_token.to_tokens(tokens); + e.raw.to_tokens(tokens); + e.mutability.to_tokens(tokens); + print_subexpression( + &e.expr, + fixup.trailing_precedence(&e.expr) < Precedence::Prefix, + tokens, + fixup.subsequent_subexpression(), + ); + } + #[cfg_attr(docsrs, doc(cfg(feature = "printing")))] impl ToTokens for ExprReference { fn to_tokens(&self, tokens: &mut TokenStream) { @@ -3929,4 +4020,15 @@ pub(crate) mod printing { } } } + + #[cfg(feature = "full")] + #[cfg_attr(docsrs, doc(cfg(feature = "printing")))] + impl ToTokens for PointerMutability { + fn to_tokens(&self, tokens: &mut TokenStream) { + match self { + PointerMutability::Const(const_token) => const_token.to_tokens(tokens), + PointerMutability::Mut(mut_token) => mut_token.to_tokens(tokens), + } + } + } } diff --git a/.cargo-vendor/syn/src/gen/clone.rs b/.cargo-vendor/syn/src/gen/clone.rs index 9757561395..037da1bc35 100644 --- a/.cargo-vendor/syn/src/gen/clone.rs +++ b/.cargo-vendor/syn/src/gen/clone.rs @@ -270,6 +270,8 @@ impl Clone for crate::Expr { crate::Expr::Path(v0) => crate::Expr::Path(v0.clone()), #[cfg(feature = "full")] crate::Expr::Range(v0) => crate::Expr::Range(v0.clone()), + #[cfg(feature = "full")] + crate::Expr::RawAddr(v0) => crate::Expr::RawAddr(v0.clone()), crate::Expr::Reference(v0) => crate::Expr::Reference(v0.clone()), #[cfg(feature = "full")] crate::Expr::Repeat(v0) => crate::Expr::Repeat(v0.clone()), @@ -621,6 +623,19 @@ impl Clone for crate::ExprRange { } } } +#[cfg(feature = "full")] +#[cfg_attr(docsrs, doc(cfg(feature = "clone-impls")))] +impl Clone for crate::ExprRawAddr { + fn clone(&self) -> Self { + crate::ExprRawAddr { + attrs: self.attrs.clone(), + and_token: self.and_token.clone(), + raw: self.raw.clone(), + mutability: self.mutability.clone(), + expr: self.expr.clone(), + } + } +} #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(docsrs, doc(cfg(feature = "clone-impls")))] impl Clone for crate::ExprReference { @@ -1647,6 +1662,20 @@ impl Clone for crate::PathSegment { } } } +#[cfg(feature = "full")] +#[cfg_attr(docsrs, doc(cfg(feature = "clone-impls")))] +impl Clone for crate::PointerMutability { + fn clone(&self) -> Self { + match self { + crate::PointerMutability::Const(v0) => { + crate::PointerMutability::Const(v0.clone()) + } + crate::PointerMutability::Mut(v0) => { + crate::PointerMutability::Mut(v0.clone()) + } + } + } +} #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(docsrs, doc(cfg(feature = "clone-impls")))] impl Clone for crate::PredicateLifetime { diff --git a/.cargo-vendor/syn/src/gen/debug.rs b/.cargo-vendor/syn/src/gen/debug.rs index fe1179c9ff..54a12dba2a 100644 --- a/.cargo-vendor/syn/src/gen/debug.rs +++ b/.cargo-vendor/syn/src/gen/debug.rs @@ -441,6 +441,8 @@ impl Debug for crate::Expr { crate::Expr::Path(v0) => v0.debug(formatter, "Path"), #[cfg(feature = "full")] crate::Expr::Range(v0) => v0.debug(formatter, "Range"), + #[cfg(feature = "full")] + crate::Expr::RawAddr(v0) => v0.debug(formatter, "RawAddr"), crate::Expr::Reference(v0) => v0.debug(formatter, "Reference"), #[cfg(feature = "full")] crate::Expr::Repeat(v0) => v0.debug(formatter, "Repeat"), @@ -958,6 +960,25 @@ impl crate::ExprRange { formatter.finish() } } +#[cfg(feature = "full")] +#[cfg_attr(docsrs, doc(cfg(feature = "extra-traits")))] +impl Debug for crate::ExprRawAddr { + fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result { + self.debug(formatter, "ExprRawAddr") + } +} +#[cfg(feature = "full")] +impl crate::ExprRawAddr { + fn debug(&self, formatter: &mut fmt::Formatter, name: &str) -> fmt::Result { + let mut formatter = formatter.debug_struct(name); + formatter.field("attrs", &self.attrs); + formatter.field("and_token", &self.and_token); + formatter.field("raw", &self.raw); + formatter.field("mutability", &self.mutability); + formatter.field("expr", &self.expr); + formatter.finish() + } +} #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(docsrs, doc(cfg(feature = "extra-traits")))] impl Debug for crate::ExprReference { @@ -2385,6 +2406,25 @@ impl Debug for crate::PathSegment { formatter.finish() } } +#[cfg(feature = "full")] +#[cfg_attr(docsrs, doc(cfg(feature = "extra-traits")))] +impl Debug for crate::PointerMutability { + fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result { + formatter.write_str("PointerMutability::")?; + match self { + crate::PointerMutability::Const(v0) => { + let mut formatter = formatter.debug_tuple("Const"); + formatter.field(v0); + formatter.finish() + } + crate::PointerMutability::Mut(v0) => { + let mut formatter = formatter.debug_tuple("Mut"); + formatter.field(v0); + formatter.finish() + } + } + } +} #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(docsrs, doc(cfg(feature = "extra-traits")))] impl Debug for crate::PredicateLifetime { diff --git a/.cargo-vendor/syn/src/gen/eq.rs b/.cargo-vendor/syn/src/gen/eq.rs index 936293c39a..cffa5d296d 100644 --- a/.cargo-vendor/syn/src/gen/eq.rs +++ b/.cargo-vendor/syn/src/gen/eq.rs @@ -297,6 +297,10 @@ impl PartialEq for crate::Expr { (crate::Expr::Path(self0), crate::Expr::Path(other0)) => self0 == other0, #[cfg(feature = "full")] (crate::Expr::Range(self0), crate::Expr::Range(other0)) => self0 == other0, + #[cfg(feature = "full")] + (crate::Expr::RawAddr(self0), crate::Expr::RawAddr(other0)) => { + self0 == other0 + } (crate::Expr::Reference(self0), crate::Expr::Reference(other0)) => { self0 == other0 } @@ -610,6 +614,17 @@ impl PartialEq for crate::ExprRange { && self.limits == other.limits && self.end == other.end } } +#[cfg(feature = "full")] +#[cfg_attr(docsrs, doc(cfg(feature = "extra-traits")))] +impl Eq for crate::ExprRawAddr {} +#[cfg(feature = "full")] +#[cfg_attr(docsrs, doc(cfg(feature = "extra-traits")))] +impl PartialEq for crate::ExprRawAddr { + fn eq(&self, other: &Self) -> bool { + self.attrs == other.attrs && self.mutability == other.mutability + && self.expr == other.expr + } +} #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(docsrs, doc(cfg(feature = "extra-traits")))] impl Eq for crate::ExprReference {} @@ -1622,6 +1637,22 @@ impl PartialEq for crate::PathSegment { self.ident == other.ident && self.arguments == other.arguments } } +#[cfg(feature = "full")] +#[cfg_attr(docsrs, doc(cfg(feature = "extra-traits")))] +impl Eq for crate::PointerMutability {} +#[cfg(feature = "full")] +#[cfg_attr(docsrs, doc(cfg(feature = "extra-traits")))] +impl PartialEq for crate::PointerMutability { + fn eq(&self, other: &Self) -> bool { + match (self, other) { + (crate::PointerMutability::Const(_), crate::PointerMutability::Const(_)) => { + true + } + (crate::PointerMutability::Mut(_), crate::PointerMutability::Mut(_)) => true, + _ => false, + } + } +} #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(docsrs, doc(cfg(feature = "extra-traits")))] impl Eq for crate::PredicateLifetime {} diff --git a/.cargo-vendor/syn/src/gen/fold.rs b/.cargo-vendor/syn/src/gen/fold.rs index c3de096682..ab794056c8 100644 --- a/.cargo-vendor/syn/src/gen/fold.rs +++ b/.cargo-vendor/syn/src/gen/fold.rs @@ -269,6 +269,11 @@ pub trait Fold { fn fold_expr_range(&mut self, i: crate::ExprRange) -> crate::ExprRange { fold_expr_range(self, i) } + #[cfg(feature = "full")] + #[cfg_attr(docsrs, doc(cfg(feature = "full")))] + fn fold_expr_raw_addr(&mut self, i: crate::ExprRawAddr) -> crate::ExprRawAddr { + fold_expr_raw_addr(self, i) + } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(docsrs, doc(cfg(any(feature = "derive", feature = "full"))))] fn fold_expr_reference(&mut self, i: crate::ExprReference) -> crate::ExprReference { @@ -723,6 +728,14 @@ pub trait Fold { fn fold_path_segment(&mut self, i: crate::PathSegment) -> crate::PathSegment { fold_path_segment(self, i) } + #[cfg(feature = "full")] + #[cfg_attr(docsrs, doc(cfg(feature = "full")))] + fn fold_pointer_mutability( + &mut self, + i: crate::PointerMutability, + ) -> crate::PointerMutability { + fold_pointer_mutability(self, i) + } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(docsrs, doc(cfg(any(feature = "derive", feature = "full"))))] fn fold_predicate_lifetime( @@ -1339,6 +1352,9 @@ where crate::Expr::Range(_binding_0) => { crate::Expr::Range(full!(f.fold_expr_range(_binding_0))) } + crate::Expr::RawAddr(_binding_0) => { + crate::Expr::RawAddr(full!(f.fold_expr_raw_addr(_binding_0))) + } crate::Expr::Reference(_binding_0) => { crate::Expr::Reference(f.fold_expr_reference(_binding_0)) } @@ -1734,6 +1750,20 @@ where end: (node.end).map(|it| Box::new(f.fold_expr(*it))), } } +#[cfg(feature = "full")] +#[cfg_attr(docsrs, doc(cfg(feature = "full")))] +pub fn fold_expr_raw_addr(f: &mut F, node: crate::ExprRawAddr) -> crate::ExprRawAddr +where + F: Fold + ?Sized, +{ + crate::ExprRawAddr { + attrs: fold_vec(node.attrs, f, F::fold_attribute), + and_token: node.and_token, + raw: node.raw, + mutability: f.fold_pointer_mutability(node.mutability), + expr: Box::new(f.fold_expr(*node.expr)), + } +} #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(docsrs, doc(cfg(any(feature = "derive", feature = "full"))))] pub fn fold_expr_reference( @@ -3060,6 +3090,24 @@ where arguments: f.fold_path_arguments(node.arguments), } } +#[cfg(feature = "full")] +#[cfg_attr(docsrs, doc(cfg(feature = "full")))] +pub fn fold_pointer_mutability( + f: &mut F, + node: crate::PointerMutability, +) -> crate::PointerMutability +where + F: Fold + ?Sized, +{ + match node { + crate::PointerMutability::Const(_binding_0) => { + crate::PointerMutability::Const(_binding_0) + } + crate::PointerMutability::Mut(_binding_0) => { + crate::PointerMutability::Mut(_binding_0) + } + } +} #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(docsrs, doc(cfg(any(feature = "derive", feature = "full"))))] pub fn fold_predicate_lifetime( diff --git a/.cargo-vendor/syn/src/gen/hash.rs b/.cargo-vendor/syn/src/gen/hash.rs index 4dedba4a1f..51345eada3 100644 --- a/.cargo-vendor/syn/src/gen/hash.rs +++ b/.cargo-vendor/syn/src/gen/hash.rs @@ -456,59 +456,64 @@ impl Hash for crate::Expr { state.write_u8(26u8); v0.hash(state); } - crate::Expr::Reference(v0) => { + #[cfg(feature = "full")] + crate::Expr::RawAddr(v0) => { state.write_u8(27u8); v0.hash(state); } + crate::Expr::Reference(v0) => { + state.write_u8(28u8); + v0.hash(state); + } #[cfg(feature = "full")] crate::Expr::Repeat(v0) => { - state.write_u8(28u8); + state.write_u8(29u8); v0.hash(state); } #[cfg(feature = "full")] crate::Expr::Return(v0) => { - state.write_u8(29u8); + state.write_u8(30u8); v0.hash(state); } crate::Expr::Struct(v0) => { - state.write_u8(30u8); + state.write_u8(31u8); v0.hash(state); } #[cfg(feature = "full")] crate::Expr::Try(v0) => { - state.write_u8(31u8); + state.write_u8(32u8); v0.hash(state); } #[cfg(feature = "full")] crate::Expr::TryBlock(v0) => { - state.write_u8(32u8); + state.write_u8(33u8); v0.hash(state); } crate::Expr::Tuple(v0) => { - state.write_u8(33u8); + state.write_u8(34u8); v0.hash(state); } crate::Expr::Unary(v0) => { - state.write_u8(34u8); + state.write_u8(35u8); v0.hash(state); } #[cfg(feature = "full")] crate::Expr::Unsafe(v0) => { - state.write_u8(35u8); + state.write_u8(36u8); v0.hash(state); } crate::Expr::Verbatim(v0) => { - state.write_u8(36u8); + state.write_u8(37u8); TokenStreamHelper(v0).hash(state); } #[cfg(feature = "full")] crate::Expr::While(v0) => { - state.write_u8(37u8); + state.write_u8(38u8); v0.hash(state); } #[cfg(feature = "full")] crate::Expr::Yield(v0) => { - state.write_u8(38u8); + state.write_u8(39u8); v0.hash(state); } #[cfg(not(feature = "full"))] @@ -843,6 +848,18 @@ impl Hash for crate::ExprRange { self.end.hash(state); } } +#[cfg(feature = "full")] +#[cfg_attr(docsrs, doc(cfg(feature = "extra-traits")))] +impl Hash for crate::ExprRawAddr { + fn hash(&self, state: &mut H) + where + H: Hasher, + { + self.attrs.hash(state); + self.mutability.hash(state); + self.expr.hash(state); + } +} #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(docsrs, doc(cfg(feature = "extra-traits")))] impl Hash for crate::ExprReference { @@ -2086,6 +2103,23 @@ impl Hash for crate::PathSegment { self.arguments.hash(state); } } +#[cfg(feature = "full")] +#[cfg_attr(docsrs, doc(cfg(feature = "extra-traits")))] +impl Hash for crate::PointerMutability { + fn hash(&self, state: &mut H) + where + H: Hasher, + { + match self { + crate::PointerMutability::Const(_) => { + state.write_u8(0u8); + } + crate::PointerMutability::Mut(_) => { + state.write_u8(1u8); + } + } + } +} #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(docsrs, doc(cfg(feature = "extra-traits")))] impl Hash for crate::PredicateLifetime { diff --git a/.cargo-vendor/syn/src/gen/visit.rs b/.cargo-vendor/syn/src/gen/visit.rs index 6c96a3f31d..419fb5930c 100644 --- a/.cargo-vendor/syn/src/gen/visit.rs +++ b/.cargo-vendor/syn/src/gen/visit.rs @@ -264,6 +264,11 @@ pub trait Visit<'ast> { fn visit_expr_range(&mut self, i: &'ast crate::ExprRange) { visit_expr_range(self, i); } + #[cfg(feature = "full")] + #[cfg_attr(docsrs, doc(cfg(feature = "full")))] + fn visit_expr_raw_addr(&mut self, i: &'ast crate::ExprRawAddr) { + visit_expr_raw_addr(self, i); + } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(docsrs, doc(cfg(any(feature = "derive", feature = "full"))))] fn visit_expr_reference(&mut self, i: &'ast crate::ExprReference) { @@ -685,6 +690,11 @@ pub trait Visit<'ast> { fn visit_path_segment(&mut self, i: &'ast crate::PathSegment) { visit_path_segment(self, i); } + #[cfg(feature = "full")] + #[cfg_attr(docsrs, doc(cfg(feature = "full")))] + fn visit_pointer_mutability(&mut self, i: &'ast crate::PointerMutability) { + visit_pointer_mutability(self, i); + } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(docsrs, doc(cfg(any(feature = "derive", feature = "full"))))] fn visit_predicate_lifetime(&mut self, i: &'ast crate::PredicateLifetime) { @@ -1355,6 +1365,9 @@ where crate::Expr::Range(_binding_0) => { full!(v.visit_expr_range(_binding_0)); } + crate::Expr::RawAddr(_binding_0) => { + full!(v.visit_expr_raw_addr(_binding_0)); + } crate::Expr::Reference(_binding_0) => { v.visit_expr_reference(_binding_0); } @@ -1786,6 +1799,20 @@ where v.visit_expr(&**it); } } +#[cfg(feature = "full")] +#[cfg_attr(docsrs, doc(cfg(feature = "full")))] +pub fn visit_expr_raw_addr<'ast, V>(v: &mut V, node: &'ast crate::ExprRawAddr) +where + V: Visit<'ast> + ?Sized, +{ + for it in &node.attrs { + v.visit_attribute(it); + } + skip!(node.and_token); + skip!(node.raw); + v.visit_pointer_mutability(&node.mutability); + v.visit_expr(&*node.expr); +} #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(docsrs, doc(cfg(any(feature = "derive", feature = "full"))))] pub fn visit_expr_reference<'ast, V>(v: &mut V, node: &'ast crate::ExprReference) @@ -3142,6 +3169,21 @@ where v.visit_ident(&node.ident); v.visit_path_arguments(&node.arguments); } +#[cfg(feature = "full")] +#[cfg_attr(docsrs, doc(cfg(feature = "full")))] +pub fn visit_pointer_mutability<'ast, V>(v: &mut V, node: &'ast crate::PointerMutability) +where + V: Visit<'ast> + ?Sized, +{ + match node { + crate::PointerMutability::Const(_binding_0) => { + skip!(_binding_0); + } + crate::PointerMutability::Mut(_binding_0) => { + skip!(_binding_0); + } + } +} #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(docsrs, doc(cfg(any(feature = "derive", feature = "full"))))] pub fn visit_predicate_lifetime<'ast, V>(v: &mut V, node: &'ast crate::PredicateLifetime) diff --git a/.cargo-vendor/syn/src/gen/visit_mut.rs b/.cargo-vendor/syn/src/gen/visit_mut.rs index b70a4227ec..997ef266bf 100644 --- a/.cargo-vendor/syn/src/gen/visit_mut.rs +++ b/.cargo-vendor/syn/src/gen/visit_mut.rs @@ -265,6 +265,11 @@ pub trait VisitMut { fn visit_expr_range_mut(&mut self, i: &mut crate::ExprRange) { visit_expr_range_mut(self, i); } + #[cfg(feature = "full")] + #[cfg_attr(docsrs, doc(cfg(feature = "full")))] + fn visit_expr_raw_addr_mut(&mut self, i: &mut crate::ExprRawAddr) { + visit_expr_raw_addr_mut(self, i); + } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(docsrs, doc(cfg(any(feature = "derive", feature = "full"))))] fn visit_expr_reference_mut(&mut self, i: &mut crate::ExprReference) { @@ -686,6 +691,11 @@ pub trait VisitMut { fn visit_path_segment_mut(&mut self, i: &mut crate::PathSegment) { visit_path_segment_mut(self, i); } + #[cfg(feature = "full")] + #[cfg_attr(docsrs, doc(cfg(feature = "full")))] + fn visit_pointer_mutability_mut(&mut self, i: &mut crate::PointerMutability) { + visit_pointer_mutability_mut(self, i); + } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(docsrs, doc(cfg(any(feature = "derive", feature = "full"))))] fn visit_predicate_lifetime_mut(&mut self, i: &mut crate::PredicateLifetime) { @@ -1356,6 +1366,9 @@ where crate::Expr::Range(_binding_0) => { full!(v.visit_expr_range_mut(_binding_0)); } + crate::Expr::RawAddr(_binding_0) => { + full!(v.visit_expr_raw_addr_mut(_binding_0)); + } crate::Expr::Reference(_binding_0) => { v.visit_expr_reference_mut(_binding_0); } @@ -1787,6 +1800,20 @@ where v.visit_expr_mut(&mut **it); } } +#[cfg(feature = "full")] +#[cfg_attr(docsrs, doc(cfg(feature = "full")))] +pub fn visit_expr_raw_addr_mut(v: &mut V, node: &mut crate::ExprRawAddr) +where + V: VisitMut + ?Sized, +{ + for it in &mut node.attrs { + v.visit_attribute_mut(it); + } + skip!(node.and_token); + skip!(node.raw); + v.visit_pointer_mutability_mut(&mut node.mutability); + v.visit_expr_mut(&mut *node.expr); +} #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(docsrs, doc(cfg(any(feature = "derive", feature = "full"))))] pub fn visit_expr_reference_mut(v: &mut V, node: &mut crate::ExprReference) @@ -3142,6 +3169,21 @@ where v.visit_ident_mut(&mut node.ident); v.visit_path_arguments_mut(&mut node.arguments); } +#[cfg(feature = "full")] +#[cfg_attr(docsrs, doc(cfg(feature = "full")))] +pub fn visit_pointer_mutability_mut(v: &mut V, node: &mut crate::PointerMutability) +where + V: VisitMut + ?Sized, +{ + match node { + crate::PointerMutability::Const(_binding_0) => { + skip!(_binding_0); + } + crate::PointerMutability::Mut(_binding_0) => { + skip!(_binding_0); + } + } +} #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(docsrs, doc(cfg(any(feature = "derive", feature = "full"))))] pub fn visit_predicate_lifetime_mut(v: &mut V, node: &mut crate::PredicateLifetime) diff --git a/.cargo-vendor/syn/src/generics.rs b/.cargo-vendor/syn/src/generics.rs index 692ad53001..5b26af7e57 100644 --- a/.cargo-vendor/syn/src/generics.rs +++ b/.cargo-vendor/syn/src/generics.rs @@ -509,7 +509,7 @@ ast_struct! { #[cfg(feature = "parsing")] pub(crate) mod parsing { use crate::attr::Attribute; - use crate::error::Result; + use crate::error::{self, Result}; use crate::ext::IdentExt as _; use crate::generics::{ BoundLifetimes, ConstParam, GenericParam, Generics, LifetimeParam, PredicateLifetime, @@ -706,8 +706,15 @@ pub(crate) mod parsing { if input.peek(Token![,]) || input.peek(Token![>]) || input.peek(Token![=]) { break; } - let value: TypeParamBound = input.parse()?; - bounds.push_value(value); + bounds.push_value({ + let allow_precise_capture = false; + let allow_tilde_const = true; + TypeParamBound::parse_single( + input, + allow_precise_capture, + allow_tilde_const, + )? + }); if !input.peek(Token![+]) { break; } @@ -737,6 +744,18 @@ pub(crate) mod parsing { #[cfg_attr(docsrs, doc(cfg(feature = "parsing")))] impl Parse for TypeParamBound { fn parse(input: ParseStream) -> Result { + let allow_precise_capture = true; + let allow_tilde_const = true; + Self::parse_single(input, allow_precise_capture, allow_tilde_const) + } + } + + impl TypeParamBound { + pub(crate) fn parse_single( + input: ParseStream, + allow_precise_capture: bool, + allow_tilde_const: bool, + ) -> Result { if input.peek(Lifetime) { return input.parse().map(TypeParamBound::Lifetime); } @@ -744,7 +763,7 @@ pub(crate) mod parsing { let begin = input.fork(); if cfg!(feature = "full") && input.peek(Token![use]) { - input.parse::()?; + let use_token: Token![use] = input.parse()?; input.parse::()?; loop { let lookahead = input.lookahead1(); @@ -766,8 +785,13 @@ pub(crate) mod parsing { return Err(lookahead.error()); } } - input.parse::]>()?; - return Ok(TypeParamBound::Verbatim(verbatim::between(&begin, input))); + let gt_token: Token![>] = input.parse()?; + return if allow_precise_capture { + Ok(TypeParamBound::Verbatim(verbatim::between(&begin, input))) + } else { + let msg = "`use<...>` precise capturing syntax is not allowed here"; + Err(error::new2(use_token.span, gt_token.span, msg)) + }; } let content; @@ -780,8 +804,12 @@ pub(crate) mod parsing { let is_tilde_const = cfg!(feature = "full") && content.peek(Token![~]) && content.peek2(Token![const]); if is_tilde_const { - content.parse::()?; - content.parse::()?; + let tilde_token: Token![~] = content.parse()?; + let const_token: Token![const] = content.parse()?; + if !allow_tilde_const { + let msg = "`~const` is not allowed here"; + return Err(error::new2(tilde_token.span, const_token.span, msg)); + } } let mut bound: TraitBound = content.parse()?; @@ -793,16 +821,17 @@ pub(crate) mod parsing { Ok(TypeParamBound::Trait(bound)) } } - } - impl TypeParamBound { pub(crate) fn parse_multiple( input: ParseStream, allow_plus: bool, + allow_precise_capture: bool, + allow_tilde_const: bool, ) -> Result> { let mut bounds = Punctuated::new(); loop { - bounds.push_value(input.parse()?); + let bound = Self::parse_single(input, allow_precise_capture, allow_tilde_const)?; + bounds.push_value(bound); if !(allow_plus && input.peek(Token![+])) { break; } @@ -970,8 +999,15 @@ pub(crate) mod parsing { { break; } - let value = input.parse()?; - bounds.push_value(value); + bounds.push_value({ + let allow_precise_capture = false; + let allow_tilde_const = true; + TypeParamBound::parse_single( + input, + allow_precise_capture, + allow_tilde_const, + )? + }); if !input.peek(Token![+]) { break; } diff --git a/.cargo-vendor/syn/src/item.rs b/.cargo-vendor/syn/src/item.rs index 819f0fbdac..eb32d4f70b 100644 --- a/.cargo-vendor/syn/src/item.rs +++ b/.cargo-vendor/syn/src/item.rs @@ -1205,7 +1205,15 @@ pub(crate) mod parsing { if input.peek(Token![where]) || input.peek(Token![=]) || input.peek(Token![;]) { break; } - bounds.push_value(input.parse::()?); + bounds.push_value({ + let allow_precise_capture = false; + let allow_tilde_const = true; + TypeParamBound::parse_single( + input, + allow_precise_capture, + allow_tilde_const, + )? + }); if input.peek(Token![where]) || input.peek(Token![=]) || input.peek(Token![;]) { break; } @@ -2184,7 +2192,11 @@ pub(crate) mod parsing { if input.peek(Token![where]) || input.peek(token::Brace) { break; } - supertraits.push_value(input.parse()?); + supertraits.push_value({ + let allow_precise_capture = false; + let allow_tilde_const = true; + TypeParamBound::parse_single(input, allow_precise_capture, allow_tilde_const)? + }); if input.peek(Token![where]) || input.peek(token::Brace) { break; } @@ -2252,7 +2264,11 @@ pub(crate) mod parsing { if input.peek(Token![where]) || input.peek(Token![;]) { break; } - bounds.push_value(input.parse()?); + bounds.push_value({ + let allow_precise_capture = false; + let allow_tilde_const = false; + TypeParamBound::parse_single(input, allow_precise_capture, allow_tilde_const)? + }); if input.peek(Token![where]) || input.peek(Token![;]) { break; } diff --git a/.cargo-vendor/syn/src/lib.rs b/.cargo-vendor/syn/src/lib.rs index abc2bd01a4..5bb751abdb 100644 --- a/.cargo-vendor/syn/src/lib.rs +++ b/.cargo-vendor/syn/src/lib.rs @@ -249,7 +249,7 @@ //! dynamic library libproc_macro from rustc toolchain. // Syn types in rustdoc of other crates get linked to here. -#![doc(html_root_url = "https://docs.rs/syn/2.0.79")] +#![doc(html_root_url = "https://docs.rs/syn/2.0.80")] #![cfg_attr(docsrs, feature(doc_cfg))] #![deny(unsafe_op_in_unsafe_fn)] #![allow(non_camel_case_types)] @@ -284,11 +284,13 @@ clippy::module_name_repetitions, clippy::must_use_candidate, clippy::needless_doctest_main, + clippy::needless_lifetimes, clippy::needless_pass_by_value, clippy::needless_update, clippy::never_loop, clippy::range_plus_one, clippy::redundant_else, + clippy::ref_option, clippy::return_self_not_must_use, clippy::similar_names, clippy::single_match_else, @@ -361,7 +363,7 @@ pub use crate::error::{Error, Result}; mod expr; #[cfg(feature = "full")] #[cfg_attr(docsrs, doc(cfg(feature = "full")))] -pub use crate::expr::{Arm, Label, RangeLimits}; +pub use crate::expr::{Arm, Label, PointerMutability, RangeLimits}; #[cfg(any(feature = "full", feature = "derive"))] #[cfg_attr(docsrs, doc(cfg(any(feature = "full", feature = "derive"))))] pub use crate::expr::{ @@ -373,8 +375,8 @@ pub use crate::expr::{ pub use crate::expr::{ ExprArray, ExprAssign, ExprAsync, ExprAwait, ExprBlock, ExprBreak, ExprClosure, ExprConst, ExprContinue, ExprForLoop, ExprGroup, ExprIf, ExprInfer, ExprLet, ExprLoop, ExprMatch, - ExprRange, ExprRepeat, ExprReturn, ExprTry, ExprTryBlock, ExprTuple, ExprUnsafe, ExprWhile, - ExprYield, + ExprRange, ExprRawAddr, ExprRepeat, ExprReturn, ExprTry, ExprTryBlock, ExprTuple, ExprUnsafe, + ExprWhile, ExprYield, }; #[cfg(feature = "parsing")] diff --git a/.cargo-vendor/syn/src/path.rs b/.cargo-vendor/syn/src/path.rs index aaea57591b..ce38eff313 100644 --- a/.cargo-vendor/syn/src/path.rs +++ b/.cargo-vendor/syn/src/path.rs @@ -377,8 +377,15 @@ pub(crate) mod parsing { if input.peek(Token![,]) || input.peek(Token![>]) { break; } - let value: TypeParamBound = input.parse()?; - bounds.push_value(value); + bounds.push_value({ + let allow_precise_capture = false; + let allow_tilde_const = true; + TypeParamBound::parse_single( + input, + allow_precise_capture, + allow_tilde_const, + )? + }); if !input.peek(Token![+]) { break; } diff --git a/.cargo-vendor/syn/src/precedence.rs b/.cargo-vendor/syn/src/precedence.rs index 1a26f195db..936a0c51d2 100644 --- a/.cargo-vendor/syn/src/precedence.rs +++ b/.cargo-vendor/syn/src/precedence.rs @@ -102,7 +102,7 @@ impl Precedence { Expr::Binary(e) => Precedence::of_binop(&e.op), Expr::Let(_) => Precedence::Let, Expr::Cast(_) => Precedence::Cast, - Expr::Reference(_) | Expr::Unary(_) => Precedence::Prefix, + Expr::RawAddr(_) | Expr::Reference(_) | Expr::Unary(_) => Precedence::Prefix, Expr::Array(_) | Expr::Async(_) diff --git a/.cargo-vendor/syn/src/stmt.rs b/.cargo-vendor/syn/src/stmt.rs index 51d000581a..ac8238a98a 100644 --- a/.cargo-vendor/syn/src/stmt.rs +++ b/.cargo-vendor/syn/src/stmt.rs @@ -367,6 +367,7 @@ pub(crate) mod parsing { | Expr::Paren(_) | Expr::Path(_) | Expr::Range(_) + | Expr::RawAddr(_) | Expr::Reference(_) | Expr::Repeat(_) | Expr::Return(_) diff --git a/.cargo-vendor/syn/src/token.rs b/.cargo-vendor/syn/src/token.rs index 061e8806ca..6462713254 100644 --- a/.cargo-vendor/syn/src/token.rs +++ b/.cargo-vendor/syn/src/token.rs @@ -721,6 +721,7 @@ define_keywords! { "override" pub struct Override "priv" pub struct Priv "pub" pub struct Pub + "raw" pub struct Raw "ref" pub struct Ref "return" pub struct Return "Self" pub struct SelfType @@ -899,6 +900,7 @@ macro_rules! Token { [override] => { $crate::token::Override }; [priv] => { $crate::token::Priv }; [pub] => { $crate::token::Pub }; + [raw] => { $crate::token::Raw }; [ref] => { $crate::token::Ref }; [return] => { $crate::token::Return }; [Self] => { $crate::token::SelfType }; diff --git a/.cargo-vendor/syn/src/ty.rs b/.cargo-vendor/syn/src/ty.rs index 77ce616d1f..be514f0b0a 100644 --- a/.cargo-vendor/syn/src/ty.rs +++ b/.cargo-vendor/syn/src/ty.rs @@ -290,7 +290,7 @@ pub(crate) mod parsing { TypeReference, TypeSlice, TypeTraitObject, TypeTuple, }; use crate::verbatim; - use proc_macro2::Span; + use proc_macro2::{Span, TokenTree}; #[cfg_attr(docsrs, doc(cfg(feature = "parsing")))] impl Parse for Type { @@ -402,7 +402,15 @@ pub(crate) mod parsing { })); while let Some(plus) = input.parse()? { bounds.push_punct(plus); - bounds.push_value(input.parse()?); + bounds.push_value({ + let allow_precise_capture = false; + let allow_tilde_const = false; + TypeParamBound::parse_single( + input, + allow_precise_capture, + allow_tilde_const, + )? + }); } bounds }, @@ -469,7 +477,15 @@ pub(crate) mod parsing { bounds.push_value(first); while let Some(plus) = input.parse()? { bounds.push_punct(plus); - bounds.push_value(input.parse()?); + bounds.push_value({ + let allow_precise_capture = false; + let allow_tilde_const = false; + TypeParamBound::parse_single( + input, + allow_precise_capture, + allow_tilde_const, + )? + }); } bounds }, @@ -532,7 +548,15 @@ pub(crate) mod parsing { { break; } - bounds.push_value(input.parse()?); + bounds.push_value({ + let allow_precise_capture = false; + let allow_tilde_const = false; + TypeParamBound::parse_single( + input, + allow_precise_capture, + allow_tilde_const, + )? + }); } } return Ok(Type::TraitObject(TypeTraitObject { @@ -823,18 +847,26 @@ pub(crate) mod parsing { input: ParseStream, allow_plus: bool, ) -> Result> { - let bounds = TypeParamBound::parse_multiple(input, allow_plus)?; + let allow_precise_capture = false; + let allow_tilde_const = false; + let bounds = TypeParamBound::parse_multiple( + input, + allow_plus, + allow_precise_capture, + allow_tilde_const, + )?; let mut last_lifetime_span = None; let mut at_least_one_trait = false; for bound in &bounds { match bound { - TypeParamBound::Trait(_) | TypeParamBound::Verbatim(_) => { + TypeParamBound::Trait(_) => { at_least_one_trait = true; break; } TypeParamBound::Lifetime(lifetime) => { last_lifetime_span = Some(lifetime.ident.span()); } + TypeParamBound::Verbatim(_) => unreachable!(), } } // Just lifetimes like `'a + 'b` is not a TraitObject. @@ -863,17 +895,37 @@ pub(crate) mod parsing { pub(crate) fn parse(input: ParseStream, allow_plus: bool) -> Result { let impl_token: Token![impl] = input.parse()?; - let bounds = TypeParamBound::parse_multiple(input, allow_plus)?; - let mut last_lifetime_span = None; + let allow_precise_capture = true; + let allow_tilde_const = false; + let bounds = TypeParamBound::parse_multiple( + input, + allow_plus, + allow_precise_capture, + allow_tilde_const, + )?; + let mut last_nontrait_span = None; let mut at_least_one_trait = false; for bound in &bounds { match bound { - TypeParamBound::Trait(_) | TypeParamBound::Verbatim(_) => { + TypeParamBound::Trait(_) => { at_least_one_trait = true; break; } TypeParamBound::Lifetime(lifetime) => { - last_lifetime_span = Some(lifetime.ident.span()); + last_nontrait_span = Some(lifetime.ident.span()); + } + TypeParamBound::Verbatim(verbatim) => { + let mut tokens = verbatim.clone().into_iter(); + match tokens.next().unwrap() { + TokenTree::Ident(ident) if ident == "use" => { + last_nontrait_span = Some(tokens.last().unwrap().span()); + } + _ => { + // ~const Trait + at_least_one_trait = true; + break; + } + } } } } @@ -881,7 +933,7 @@ pub(crate) mod parsing { let msg = "at least one trait must be specified"; return Err(error::new2( impl_token.span, - last_lifetime_span.unwrap(), + last_nontrait_span.unwrap(), msg, )); } diff --git a/.cargo-vendor/syn/tests/common/eq.rs b/.cargo-vendor/syn/tests/common/eq.rs index 7fbd2fd52d..bf09494b4d 100644 --- a/.cargo-vendor/syn/tests/common/eq.rs +++ b/.cargo-vendor/syn/tests/common/eq.rs @@ -104,6 +104,7 @@ use rustc_ast::ast::MacStmtStyle; use rustc_ast::ast::MacroDef; use rustc_ast::ast::MatchKind; use rustc_ast::ast::MetaItem; +use rustc_ast::ast::MetaItemInner; use rustc_ast::ast::MetaItemKind; use rustc_ast::ast::MetaItemLit; use rustc_ast::ast::MethodCall; @@ -112,7 +113,6 @@ use rustc_ast::ast::ModSpans; use rustc_ast::ast::Movability; use rustc_ast::ast::MutTy; use rustc_ast::ast::Mutability; -use rustc_ast::ast::NestedMetaItem; use rustc_ast::ast::NodeId; use rustc_ast::ast::NormalAttr; use rustc_ast::ast::Param; @@ -528,7 +528,7 @@ spanless_eq_struct!(Pat; id kind span tokens); spanless_eq_struct!(PatField; ident pat is_shorthand attrs id span is_placeholder); spanless_eq_struct!(Path; span segments tokens); spanless_eq_struct!(PathSegment; ident id args); -spanless_eq_struct!(PolyTraitRef; bound_generic_params trait_ref span); +spanless_eq_struct!(PolyTraitRef; bound_generic_params modifiers trait_ref span); spanless_eq_struct!(QSelf; ty path_span position); spanless_eq_struct!(StaticItem; ty safety mutability expr); spanless_eq_struct!(Stmt; id kind span); @@ -584,7 +584,7 @@ spanless_eq_enum!(FormatTrait; Display Debug LowerExp UpperExp Octal Pointer Bin spanless_eq_enum!(GenBlockKind; Async Gen AsyncGen); spanless_eq_enum!(GenericArg; Lifetime(0) Type(0) Const(0)); spanless_eq_enum!(GenericArgs; AngleBracketed(0) Parenthesized(0) ParenthesizedElided(0)); -spanless_eq_enum!(GenericBound; Trait(0 1) Outlives(0) Use(0 1)); +spanless_eq_enum!(GenericBound; Trait(0) Outlives(0) Use(0 1)); spanless_eq_enum!(GenericParamKind; Lifetime Type(default) Const(ty kw_span default)); spanless_eq_enum!(ImplPolarity; Positive Negative(0)); spanless_eq_enum!(Inline; Yes No); @@ -598,10 +598,10 @@ spanless_eq_enum!(LocalKind; Decl Init(0) InitElse(0 1)); spanless_eq_enum!(MacStmtStyle; Semicolon Braces NoBraces); spanless_eq_enum!(MatchKind; Prefix Postfix); spanless_eq_enum!(MetaItemKind; Word List(0) NameValue(0)); +spanless_eq_enum!(MetaItemInner; MetaItem(0) Lit(0)); spanless_eq_enum!(ModKind; Loaded(0 1 2) Unloaded); spanless_eq_enum!(Movability; Static Movable); spanless_eq_enum!(Mutability; Mut Not); -spanless_eq_enum!(NestedMetaItem; MetaItem(0) Lit(0)); spanless_eq_enum!(PatFieldsRest; Rest None); spanless_eq_enum!(PreciseCapturingArg; Lifetime(0) Arg(0 1)); spanless_eq_enum!(RangeEnd; Included(0) Excluded); @@ -644,10 +644,9 @@ spanless_eq_enum!(LitKind; Str(0 1) ByteStr(0 1) CStr(0 1) Byte(0) Char(0) spanless_eq_enum!(PatKind; Wild Ident(0 1 2) Struct(0 1 2 3) TupleStruct(0 1 2) Or(0) Path(0 1) Tuple(0) Box(0) Deref(0) Ref(0 1) Lit(0) Range(0 1 2) Slice(0) Rest Never Paren(0) MacCall(0) Err(0)); -spanless_eq_enum!(TyKind; Slice(0) Array(0 1) Ptr(0) Ref(0 1) BareFn(0) Never - Tup(0) AnonStruct(0 1) AnonUnion(0 1) Path(0 1) TraitObject(0 1) - ImplTrait(0 1) Paren(0) Typeof(0) Infer ImplicitSelf MacCall(0) CVarArgs - Pat(0 1) Dummy Err(0)); +spanless_eq_enum!(TyKind; Slice(0) Array(0 1) Ptr(0) Ref(0 1) PinnedRef(0 1) + BareFn(0) Never Tup(0) Path(0 1) TraitObject(0 1) ImplTrait(0 1) Paren(0) + Typeof(0) Infer ImplicitSelf MacCall(0) CVarArgs Pat(0 1) Dummy Err(0)); impl SpanlessEq for Ident { fn eq(&self, other: &Self) -> bool { diff --git a/.cargo-vendor/syn/tests/debug/gen.rs b/.cargo-vendor/syn/tests/debug/gen.rs index 9f726683a2..d900ece2b1 100644 --- a/.cargo-vendor/syn/tests/debug/gen.rs +++ b/.cargo-vendor/syn/tests/debug/gen.rs @@ -856,6 +856,15 @@ impl Debug for Lite { } formatter.finish() } + syn::Expr::RawAddr(_val) => { + let mut formatter = formatter.debug_struct("Expr::RawAddr"); + if !_val.attrs.is_empty() { + formatter.field("attrs", Lite(&_val.attrs)); + } + formatter.field("mutability", Lite(&_val.mutability)); + formatter.field("expr", Lite(&_val.expr)); + formatter.finish() + } syn::Expr::Reference(_val) => { let mut formatter = formatter.debug_struct("Expr::Reference"); if !_val.attrs.is_empty() { @@ -1513,6 +1522,17 @@ impl Debug for Lite { formatter.finish() } } +impl Debug for Lite { + fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result { + let mut formatter = formatter.debug_struct("ExprRawAddr"); + if !self.value.attrs.is_empty() { + formatter.field("attrs", Lite(&self.value.attrs)); + } + formatter.field("mutability", Lite(&self.value.mutability)); + formatter.field("expr", Lite(&self.value.expr)); + formatter.finish() + } +} impl Debug for Lite { fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result { let mut formatter = formatter.debug_struct("ExprReference"); @@ -3532,6 +3552,20 @@ impl Debug for Lite { formatter.finish() } } +impl Debug for Lite { + fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result { + match &self.value { + syn::PointerMutability::Const(_val) => { + formatter.write_str("PointerMutability::Const")?; + Ok(()) + } + syn::PointerMutability::Mut(_val) => { + formatter.write_str("PointerMutability::Mut")?; + Ok(()) + } + } + } +} impl Debug for Lite { fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result { let mut formatter = formatter.debug_struct("PredicateLifetime"); @@ -5011,6 +5045,11 @@ impl Debug for Lite { formatter.write_str("Token![->]") } } +impl Debug for Lite { + fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result { + formatter.write_str("Token![raw]") + } +} impl Debug for Lite { fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result { formatter.write_str("Token![ref]") diff --git a/.cargo-vendor/syn/tests/debug/mod.rs b/.cargo-vendor/syn/tests/debug/mod.rs index c9925a6d5c..7ab2b795d5 100644 --- a/.cargo-vendor/syn/tests/debug/mod.rs +++ b/.cargo-vendor/syn/tests/debug/mod.rs @@ -82,7 +82,7 @@ impl Debug for Lite { } } -impl<'a, T> Debug for Lite<&'a T> +impl Debug for Lite<&T> where Lite: Debug, { diff --git a/.cargo-vendor/syn/tests/macros/mod.rs b/.cargo-vendor/syn/tests/macros/mod.rs index 1c1bacf459..024075c046 100644 --- a/.cargo-vendor/syn/tests/macros/mod.rs +++ b/.cargo-vendor/syn/tests/macros/mod.rs @@ -79,7 +79,7 @@ pub trait TryIntoTokens { fn try_into_tokens(self) -> Result; } -impl<'a> TryIntoTokens for &'a str { +impl TryIntoTokens for &str { fn try_into_tokens(self) -> Result { let tokens = proc_macro2::TokenStream::from_str(self)?; Ok(tokens) diff --git a/.cargo-vendor/syn/tests/test_asyncness.rs b/.cargo-vendor/syn/tests/test_asyncness.rs index 9968934490..e409bc9c36 100644 --- a/.cargo-vendor/syn/tests/test_asyncness.rs +++ b/.cargo-vendor/syn/tests/test_asyncness.rs @@ -1,4 +1,4 @@ -#![allow(clippy::uninlined_format_args)] +#![allow(clippy::needless_lifetimes, clippy::uninlined_format_args)] #[macro_use] mod macros; @@ -9,7 +9,7 @@ use syn::{Expr, Item}; fn test_async_fn() { let input = "async fn process() {}"; - snapshot!(input as Item, @r###" + snapshot!(input as Item, @r#" Item::Fn { vis: Visibility::Inherited, sig: Signature { @@ -22,14 +22,14 @@ fn test_async_fn() { stmts: [], }, } - "###); + "#); } #[test] fn test_async_closure() { let input = "async || {}"; - snapshot!(input as Expr, @r###" + snapshot!(input as Expr, @r#" Expr::Closure { asyncness: Some, output: ReturnType::Default, @@ -39,5 +39,5 @@ fn test_async_closure() { }, }, } - "###); + "#); } diff --git a/.cargo-vendor/syn/tests/test_attribute.rs b/.cargo-vendor/syn/tests/test_attribute.rs index 597ae3adc8..739b894d1a 100644 --- a/.cargo-vendor/syn/tests/test_attribute.rs +++ b/.cargo-vendor/syn/tests/test_attribute.rs @@ -1,4 +1,4 @@ -#![allow(clippy::uninlined_format_args)] +#![allow(clippy::needless_lifetimes, clippy::uninlined_format_args)] #[macro_use] mod macros; @@ -10,7 +10,7 @@ use syn::{Attribute, Meta}; fn test_meta_item_word() { let meta = test("#[foo]"); - snapshot!(meta, @r###" + snapshot!(meta, @r#" Meta::Path { segments: [ PathSegment { @@ -18,14 +18,14 @@ fn test_meta_item_word() { }, ], } - "###); + "#); } #[test] fn test_meta_item_name_value() { let meta = test("#[foo = 5]"); - snapshot!(meta, @r###" + snapshot!(meta, @r#" Meta::NameValue { path: Path { segments: [ @@ -38,14 +38,14 @@ fn test_meta_item_name_value() { lit: 5, }, } - "###); + "#); } #[test] fn test_meta_item_bool_value() { let meta = test("#[foo = true]"); - snapshot!(meta, @r###" + snapshot!(meta, @r#" Meta::NameValue { path: Path { segments: [ @@ -60,11 +60,11 @@ fn test_meta_item_bool_value() { }, }, } - "###); + "#); let meta = test("#[foo = false]"); - snapshot!(meta, @r###" + snapshot!(meta, @r#" Meta::NameValue { path: Path { segments: [ @@ -79,14 +79,14 @@ fn test_meta_item_bool_value() { }, }, } - "###); + "#); } #[test] fn test_meta_item_list_lit() { let meta = test("#[foo(5)]"); - snapshot!(meta, @r###" + snapshot!(meta, @r#" Meta::List { path: Path { segments: [ @@ -98,14 +98,14 @@ fn test_meta_item_list_lit() { delimiter: MacroDelimiter::Paren, tokens: TokenStream(`5`), } - "###); + "#); } #[test] fn test_meta_item_list_word() { let meta = test("#[foo(bar)]"); - snapshot!(meta, @r###" + snapshot!(meta, @r#" Meta::List { path: Path { segments: [ @@ -117,14 +117,14 @@ fn test_meta_item_list_word() { delimiter: MacroDelimiter::Paren, tokens: TokenStream(`bar`), } - "###); + "#); } #[test] fn test_meta_item_list_name_value() { let meta = test("#[foo(bar = 5)]"); - snapshot!(meta, @r###" + snapshot!(meta, @r#" Meta::List { path: Path { segments: [ @@ -136,14 +136,14 @@ fn test_meta_item_list_name_value() { delimiter: MacroDelimiter::Paren, tokens: TokenStream(`bar = 5`), } - "###); + "#); } #[test] fn test_meta_item_list_bool_value() { let meta = test("#[foo(bar = true)]"); - snapshot!(meta, @r###" + snapshot!(meta, @r#" Meta::List { path: Path { segments: [ @@ -155,14 +155,14 @@ fn test_meta_item_list_bool_value() { delimiter: MacroDelimiter::Paren, tokens: TokenStream(`bar = true`), } - "###); + "#); } #[test] fn test_meta_item_multiple() { let meta = test("#[foo(word, name = 5, list(name2 = 6), word2)]"); - snapshot!(meta, @r###" + snapshot!(meta, @r#" Meta::List { path: Path { segments: [ @@ -174,14 +174,14 @@ fn test_meta_item_multiple() { delimiter: MacroDelimiter::Paren, tokens: TokenStream(`word , name = 5 , list (name2 = 6) , word2`), } - "###); + "#); } #[test] fn test_bool_lit() { let meta = test("#[foo(true)]"); - snapshot!(meta, @r###" + snapshot!(meta, @r#" Meta::List { path: Path { segments: [ @@ -193,14 +193,14 @@ fn test_bool_lit() { delimiter: MacroDelimiter::Paren, tokens: TokenStream(`true`), } - "###); + "#); } #[test] fn test_negative_lit() { let meta = test("#[form(min = -1, max = 200)]"); - snapshot!(meta, @r###" + snapshot!(meta, @r#" Meta::List { path: Path { segments: [ @@ -212,7 +212,7 @@ fn test_negative_lit() { delimiter: MacroDelimiter::Paren, tokens: TokenStream(`min = - 1 , max = 200`), } - "###); + "#); } fn test(input: &str) -> Meta { diff --git a/.cargo-vendor/syn/tests/test_derive_input.rs b/.cargo-vendor/syn/tests/test_derive_input.rs index c3d31eb0e9..9cf1e11e24 100644 --- a/.cargo-vendor/syn/tests/test_derive_input.rs +++ b/.cargo-vendor/syn/tests/test_derive_input.rs @@ -1,6 +1,7 @@ #![allow( clippy::assertions_on_result_states, clippy::manual_let_else, + clippy::needless_lifetimes, clippy::too_many_lines, clippy::uninlined_format_args )] @@ -17,7 +18,7 @@ fn test_unit() { struct Unit; }; - snapshot!(input as DeriveInput, @r###" + snapshot!(input as DeriveInput, @r#" DeriveInput { vis: Visibility::Inherited, ident: "Unit", @@ -27,7 +28,7 @@ fn test_unit() { semi_token: Some, }, } - "###); + "#); } #[test] @@ -40,7 +41,7 @@ fn test_struct() { } }; - snapshot!(input as DeriveInput, @r###" + snapshot!(input as DeriveInput, @r#" DeriveInput { attrs: [ Attribute { @@ -110,9 +111,9 @@ fn test_struct() { }, }, } - "###); + "#); - snapshot!(&input.attrs[0].meta, @r###" + snapshot!(&input.attrs[0].meta, @r#" Meta::List { path: Path { segments: [ @@ -124,7 +125,7 @@ fn test_struct() { delimiter: MacroDelimiter::Paren, tokens: TokenStream(`Debug , Clone`), } - "###); + "#); } #[test] @@ -136,7 +137,7 @@ fn test_union() { } }; - snapshot!(input as DeriveInput, @r###" + snapshot!(input as DeriveInput, @r#" DeriveInput { vis: Visibility::Inherited, ident: "MaybeUninit", @@ -177,7 +178,7 @@ fn test_union() { }, }, } - "###); + "#); } #[test] @@ -197,7 +198,7 @@ fn test_enum() { } }; - snapshot!(input as DeriveInput, @r###" + snapshot!(input as DeriveInput, @r#" DeriveInput { attrs: [ Attribute { @@ -314,11 +315,11 @@ fn test_enum() { ], }, } - "###); + "#); let meta_items: Vec<_> = input.attrs.into_iter().map(|attr| attr.meta).collect(); - snapshot!(meta_items, @r###" + snapshot!(meta_items, @r#" [ Meta::NameValue { path: Path { @@ -340,7 +341,7 @@ fn test_enum() { ], }, ] - "###); + "#); } #[test] @@ -360,7 +361,7 @@ fn test_attr_with_mod_style_path_with_self() { struct S; }; - snapshot!(input as DeriveInput, @r###" + snapshot!(input as DeriveInput, @r#" DeriveInput { attrs: [ Attribute { @@ -386,9 +387,9 @@ fn test_attr_with_mod_style_path_with_self() { semi_token: Some, }, } - "###); + "#); - snapshot!(&input.attrs[0].meta, @r###" + snapshot!(&input.attrs[0].meta, @r#" Meta::Path { segments: [ PathSegment { @@ -400,7 +401,7 @@ fn test_attr_with_mod_style_path_with_self() { }, ], } - "###); + "#); } #[test] @@ -410,7 +411,7 @@ fn test_pub_restricted() { pub(in m) struct Z(pub(in m::n) u8); }; - snapshot!(input as DeriveInput, @r###" + snapshot!(input as DeriveInput, @r#" DeriveInput { vis: Visibility::Restricted { in_token: Some, @@ -457,7 +458,7 @@ fn test_pub_restricted() { semi_token: Some, }, } - "###); + "#); } #[test] @@ -466,7 +467,7 @@ fn test_pub_restricted_crate() { pub(crate) struct S; }; - snapshot!(input as DeriveInput, @r###" + snapshot!(input as DeriveInput, @r#" DeriveInput { vis: Visibility::Restricted { path: Path { @@ -484,7 +485,7 @@ fn test_pub_restricted_crate() { semi_token: Some, }, } - "###); + "#); } #[test] @@ -493,7 +494,7 @@ fn test_pub_restricted_super() { pub(super) struct S; }; - snapshot!(input as DeriveInput, @r###" + snapshot!(input as DeriveInput, @r#" DeriveInput { vis: Visibility::Restricted { path: Path { @@ -511,7 +512,7 @@ fn test_pub_restricted_super() { semi_token: Some, }, } - "###); + "#); } #[test] @@ -520,7 +521,7 @@ fn test_pub_restricted_in_super() { pub(in super) struct S; }; - snapshot!(input as DeriveInput, @r###" + snapshot!(input as DeriveInput, @r#" DeriveInput { vis: Visibility::Restricted { in_token: Some, @@ -539,7 +540,7 @@ fn test_pub_restricted_in_super() { semi_token: Some, }, } - "###); + "#); } #[test] @@ -548,7 +549,7 @@ fn test_fields_on_unit_struct() { struct S; }; - snapshot!(input as DeriveInput, @r###" + snapshot!(input as DeriveInput, @r#" DeriveInput { vis: Visibility::Inherited, ident: "S", @@ -558,7 +559,7 @@ fn test_fields_on_unit_struct() { semi_token: Some, }, } - "###); + "#); let data = match input.data { Data::Struct(data) => data, @@ -577,7 +578,7 @@ fn test_fields_on_named_struct() { } }; - snapshot!(input as DeriveInput, @r###" + snapshot!(input as DeriveInput, @r#" DeriveInput { vis: Visibility::Inherited, ident: "S", @@ -619,14 +620,14 @@ fn test_fields_on_named_struct() { }, }, } - "###); + "#); let data = match input.data { Data::Struct(data) => data, _ => panic!("expected a struct"), }; - snapshot!(data.fields.into_iter().collect::>(), @r###" + snapshot!(data.fields.into_iter().collect::>(), @r#" [ Field { vis: Visibility::Inherited, @@ -657,7 +658,7 @@ fn test_fields_on_named_struct() { }, }, ] - "###); + "#); } #[test] @@ -666,7 +667,7 @@ fn test_fields_on_tuple_struct() { struct S(i32, pub String); }; - snapshot!(input as DeriveInput, @r###" + snapshot!(input as DeriveInput, @r#" DeriveInput { vis: Visibility::Inherited, ident: "S", @@ -704,14 +705,14 @@ fn test_fields_on_tuple_struct() { semi_token: Some, }, } - "###); + "#); let data = match input.data { Data::Struct(data) => data, _ => panic!("expected a struct"), }; - snapshot!(data.fields.iter().collect::>(), @r###" + snapshot!(data.fields.iter().collect::>(), @r#" [ Field { vis: Visibility::Inherited, @@ -738,7 +739,7 @@ fn test_fields_on_tuple_struct() { }, }, ] - "###); + "#); } #[test] @@ -748,7 +749,7 @@ fn test_ambiguous_crate() { struct S(crate::X); }; - snapshot!(input as DeriveInput, @r###" + snapshot!(input as DeriveInput, @r#" DeriveInput { vis: Visibility::Inherited, ident: "S", @@ -777,5 +778,5 @@ fn test_ambiguous_crate() { semi_token: Some, }, } - "###); + "#); } diff --git a/.cargo-vendor/syn/tests/test_expr.rs b/.cargo-vendor/syn/tests/test_expr.rs index 24d36aeb28..f01fcb8ce2 100644 --- a/.cargo-vendor/syn/tests/test_expr.rs +++ b/.cargo-vendor/syn/tests/test_expr.rs @@ -1,4 +1,8 @@ -#![allow(clippy::single_element_loop, clippy::uninlined_format_args)] +#![allow( + clippy::needless_lifetimes, + clippy::single_element_loop, + clippy::uninlined_format_args +)] #[macro_use] mod macros; @@ -13,24 +17,24 @@ use syn::{parse_quote, token, Expr, ExprRange, ExprTuple, Stmt, Token}; #[test] fn test_expr_parse() { let tokens = quote!(..100u32); - snapshot!(tokens as Expr, @r###" + snapshot!(tokens as Expr, @r#" Expr::Range { limits: RangeLimits::HalfOpen, end: Some(Expr::Lit { lit: 100u32, }), } - "###); + "#); let tokens = quote!(..100u32); - snapshot!(tokens as ExprRange, @r###" + snapshot!(tokens as ExprRange, @r#" ExprRange { limits: RangeLimits::HalfOpen, end: Some(Expr::Lit { lit: 100u32, }), } - "###); + "#); } #[test] @@ -38,7 +42,7 @@ fn test_await() { // Must not parse as Expr::Field. let tokens = quote!(fut.await); - snapshot!(tokens as Expr, @r###" + snapshot!(tokens as Expr, @r#" Expr::Await { base: Expr::Path { path: Path { @@ -50,13 +54,13 @@ fn test_await() { }, }, } - "###); + "#); } #[rustfmt::skip] #[test] fn test_tuple_multi_index() { - let expected = snapshot!("tuple.0.0" as Expr, @r###" + let expected = snapshot!("tuple.0.0" as Expr, @r#" Expr::Field { base: Expr::Field { base: Expr::Path { @@ -76,7 +80,7 @@ fn test_tuple_multi_index() { index: 0, }), } - "###); + "#); for &input in &[ "tuple .0.0", @@ -106,7 +110,7 @@ fn test_macro_variable_func() { let path = Group::new(Delimiter::None, quote!(f)); let tokens = quote!(#path()); - snapshot!(tokens as Expr, @r###" + snapshot!(tokens as Expr, @r#" Expr::Call { func: Expr::Group { expr: Expr::Path { @@ -120,12 +124,12 @@ fn test_macro_variable_func() { }, }, } - "###); + "#); let path = Group::new(Delimiter::None, quote! { #[inside] f }); let tokens = quote!(#[outside] #path()); - snapshot!(tokens as Expr, @r###" + snapshot!(tokens as Expr, @r#" Expr::Call { attrs: [ Attribute { @@ -163,7 +167,7 @@ fn test_macro_variable_func() { }, }, } - "###); + "#); } #[test] @@ -172,7 +176,7 @@ fn test_macro_variable_macro() { let mac = Group::new(Delimiter::None, quote!(m)); let tokens = quote!(#mac!()); - snapshot!(tokens as Expr, @r###" + snapshot!(tokens as Expr, @r#" Expr::Macro { mac: Macro { path: Path { @@ -186,7 +190,7 @@ fn test_macro_variable_macro() { tokens: TokenStream(``), }, } - "###); + "#); } #[test] @@ -195,7 +199,7 @@ fn test_macro_variable_struct() { let s = Group::new(Delimiter::None, quote! { S }); let tokens = quote!(#s {}); - snapshot!(tokens as Expr, @r###" + snapshot!(tokens as Expr, @r#" Expr::Struct { path: Path { segments: [ @@ -205,7 +209,7 @@ fn test_macro_variable_struct() { ], }, } - "###); + "#); } #[test] @@ -213,7 +217,7 @@ fn test_macro_variable_unary() { // mimics the token stream corresponding to `$expr.method()` where expr is `&self` let inner = Group::new(Delimiter::None, quote!(&self)); let tokens = quote!(#inner.method()); - snapshot!(tokens as Expr, @r###" + snapshot!(tokens as Expr, @r#" Expr::MethodCall { receiver: Expr::Group { expr: Expr::Reference { @@ -230,7 +234,7 @@ fn test_macro_variable_unary() { }, method: "method", } - "###); + "#); } #[test] @@ -238,7 +242,7 @@ fn test_macro_variable_match_arm() { // mimics the token stream corresponding to `match v { _ => $expr }` let expr = Group::new(Delimiter::None, quote! { #[a] () }); let tokens = quote!(match v { _ => #expr }); - snapshot!(tokens as Expr, @r###" + snapshot!(tokens as Expr, @r#" Expr::Match { expr: Expr::Path { path: Path { @@ -271,11 +275,11 @@ fn test_macro_variable_match_arm() { }, ], } - "###); + "#); let expr = Group::new(Delimiter::None, quote!(loop {} + 1)); let tokens = quote!(match v { _ => #expr }); - snapshot!(tokens as Expr, @r###" + snapshot!(tokens as Expr, @r#" Expr::Match { expr: Expr::Path { path: Path { @@ -305,7 +309,7 @@ fn test_macro_variable_match_arm() { }, ], } - "###); + "#); } // https://github.com/dtolnay/syn/issues/1019 @@ -313,7 +317,7 @@ fn test_macro_variable_match_arm() { fn test_closure_vs_rangefull() { #[rustfmt::skip] // rustfmt bug: https://github.com/rust-lang/rustfmt/issues/4808 let tokens = quote!(|| .. .method()); - snapshot!(tokens as Expr, @r###" + snapshot!(tokens as Expr, @r#" Expr::MethodCall { receiver: Expr::Closure { output: ReturnType::Default, @@ -323,7 +327,7 @@ fn test_closure_vs_rangefull() { }, method: "method", } - "###); + "#); } #[test] @@ -352,16 +356,16 @@ fn test_range_kinds() { #[test] fn test_range_precedence() { - snapshot!(".. .." as Expr, @r###" + snapshot!(".. .." as Expr, @r#" Expr::Range { limits: RangeLimits::HalfOpen, end: Some(Expr::Range { limits: RangeLimits::HalfOpen, }), } - "###); + "#); - snapshot!(".. .. ()" as Expr, @r###" + snapshot!(".. .. ()" as Expr, @r#" Expr::Range { limits: RangeLimits::HalfOpen, end: Some(Expr::Range { @@ -369,9 +373,9 @@ fn test_range_precedence() { end: Some(Expr::Tuple), }), } - "###); + "#); - snapshot!("() .. .." as Expr, @r###" + snapshot!("() .. .." as Expr, @r#" Expr::Range { start: Some(Expr::Tuple), limits: RangeLimits::HalfOpen, @@ -379,7 +383,7 @@ fn test_range_precedence() { limits: RangeLimits::HalfOpen, }), } - "###); + "#); // A range with a lower bound cannot be the upper bound of another range, // and a range with an upper bound cannot be the lower bound of another @@ -422,7 +426,7 @@ fn test_extended_interpolated_path() { let path = Group::new(Delimiter::None, quote!(a::b)); let tokens = quote!(if #path {}); - snapshot!(tokens as Expr, @r###" + snapshot!(tokens as Expr, @r#" Expr::If { cond: Expr::Group { expr: Expr::Path { @@ -443,10 +447,10 @@ fn test_extended_interpolated_path() { stmts: [], }, } - "###); + "#); let tokens = quote!(#path {}); - snapshot!(tokens as Expr, @r###" + snapshot!(tokens as Expr, @r#" Expr::Struct { path: Path { segments: [ @@ -460,10 +464,10 @@ fn test_extended_interpolated_path() { ], }, } - "###); + "#); let tokens = quote!(#path :: c); - snapshot!(tokens as Expr, @r###" + snapshot!(tokens as Expr, @r#" Expr::Path { path: Path { segments: [ @@ -481,11 +485,11 @@ fn test_extended_interpolated_path() { ], }, } - "###); + "#); let nested = Group::new(Delimiter::None, quote!(a::b || true)); let tokens = quote!(if #nested && false {}); - snapshot!(tokens as Expr, @r###" + snapshot!(tokens as Expr, @r#" Expr::If { cond: Expr::Binary { left: Expr::Group { @@ -522,7 +526,7 @@ fn test_extended_interpolated_path() { stmts: [], }, } - "###); + "#); } #[test] @@ -536,27 +540,27 @@ fn test_tuple_comma() { expr.elems.push_value(parse_quote!(continue)); // Must not parse to Expr::Paren - snapshot!(expr.to_token_stream() as Expr, @r###" + snapshot!(expr.to_token_stream() as Expr, @r#" Expr::Tuple { elems: [ Expr::Continue, Token![,], ], } - "###); + "#); expr.elems.push_punct(::default()); - snapshot!(expr.to_token_stream() as Expr, @r###" + snapshot!(expr.to_token_stream() as Expr, @r#" Expr::Tuple { elems: [ Expr::Continue, Token![,], ], } - "###); + "#); expr.elems.push_value(parse_quote!(continue)); - snapshot!(expr.to_token_stream() as Expr, @r###" + snapshot!(expr.to_token_stream() as Expr, @r#" Expr::Tuple { elems: [ Expr::Continue, @@ -564,10 +568,10 @@ fn test_tuple_comma() { Expr::Continue, ], } - "###); + "#); expr.elems.push_punct(::default()); - snapshot!(expr.to_token_stream() as Expr, @r###" + snapshot!(expr.to_token_stream() as Expr, @r#" Expr::Tuple { elems: [ Expr::Continue, @@ -576,13 +580,13 @@ fn test_tuple_comma() { Token![,], ], } - "###); + "#); } #[test] fn test_binop_associativity() { // Left to right. - snapshot!("() + () + ()" as Expr, @r###" + snapshot!("() + () + ()" as Expr, @r#" Expr::Binary { left: Expr::Binary { left: Expr::Tuple, @@ -592,10 +596,10 @@ fn test_binop_associativity() { op: BinOp::Add, right: Expr::Tuple, } - "###); + "#); // Right to left. - snapshot!("() += () += ()" as Expr, @r###" + snapshot!("() += () += ()" as Expr, @r#" Expr::Binary { left: Expr::Tuple, op: BinOp::AddAssign, @@ -605,7 +609,7 @@ fn test_binop_associativity() { right: Expr::Tuple, }, } - "###); + "#); // Parenthesization is required. syn::parse_str::("() == () == ()").unwrap_err(); @@ -615,7 +619,7 @@ fn test_binop_associativity() { fn test_assign_range_precedence() { // Range has higher precedence as the right-hand of an assignment, but // ambiguous precedence as the left-hand of an assignment. - snapshot!("() = () .. ()" as Expr, @r###" + snapshot!("() = () .. ()" as Expr, @r#" Expr::Assign { left: Expr::Tuple, right: Expr::Range { @@ -624,9 +628,9 @@ fn test_assign_range_precedence() { end: Some(Expr::Tuple), }, } - "###); + "#); - snapshot!("() += () .. ()" as Expr, @r###" + snapshot!("() += () .. ()" as Expr, @r#" Expr::Binary { left: Expr::Tuple, op: BinOp::AddAssign, @@ -636,7 +640,7 @@ fn test_assign_range_precedence() { end: Some(Expr::Tuple), }, } - "###); + "#); syn::parse_str::("() .. () = ()").unwrap_err(); syn::parse_str::("() .. () += ()").unwrap_err(); diff --git a/.cargo-vendor/syn/tests/test_generics.rs b/.cargo-vendor/syn/tests/test_generics.rs index 3faf0dba59..9f405e733b 100644 --- a/.cargo-vendor/syn/tests/test_generics.rs +++ b/.cargo-vendor/syn/tests/test_generics.rs @@ -1,5 +1,6 @@ #![allow( clippy::manual_let_else, + clippy::needless_lifetimes, clippy::too_many_lines, clippy::uninlined_format_args )] @@ -16,7 +17,7 @@ fn test_split_for_impl() { struct S<'a, 'b: 'a, #[may_dangle] T: 'a = ()> where T: Debug; }; - snapshot!(input as DeriveInput, @r###" + snapshot!(input as DeriveInput, @r#" DeriveInput { vis: Visibility::Inherited, ident: "S", @@ -98,7 +99,7 @@ fn test_split_for_impl() { semi_token: Some, }, } - "###); + "#); let generics = input.generics; let (impl_generics, ty_generics, where_clause) = generics.split_for_impl(); @@ -128,21 +129,21 @@ fn test_split_for_impl() { #[test] fn test_ty_param_bound() { let tokens = quote!('a); - snapshot!(tokens as TypeParamBound, @r###" + snapshot!(tokens as TypeParamBound, @r#" TypeParamBound::Lifetime { ident: "a", } - "###); + "#); let tokens = quote!('_); - snapshot!(tokens as TypeParamBound, @r###" + snapshot!(tokens as TypeParamBound, @r#" TypeParamBound::Lifetime { ident: "_", } - "###); + "#); let tokens = quote!(Debug); - snapshot!(tokens as TypeParamBound, @r###" + snapshot!(tokens as TypeParamBound, @r#" TypeParamBound::Trait(TraitBound { path: Path { segments: [ @@ -152,10 +153,10 @@ fn test_ty_param_bound() { ], }, }) - "###); + "#); let tokens = quote!(?Sized); - snapshot!(tokens as TypeParamBound, @r###" + snapshot!(tokens as TypeParamBound, @r#" TypeParamBound::Trait(TraitBound { modifier: TraitBoundModifier::Maybe, path: Path { @@ -166,7 +167,7 @@ fn test_ty_param_bound() { ], }, }) - "###); + "#); } #[test] @@ -181,7 +182,7 @@ fn test_fn_precedence_in_where_clause() { } }; - snapshot!(input as ItemFn, @r###" + snapshot!(input as ItemFn, @r#" ItemFn { vis: Visibility::Inherited, sig: Signature { @@ -251,7 +252,7 @@ fn test_fn_precedence_in_where_clause() { stmts: [], }, } - "###); + "#); let where_clause = input.sig.generics.where_clause.as_ref().unwrap(); assert_eq!(where_clause.predicates.len(), 1); diff --git a/.cargo-vendor/syn/tests/test_grouping.rs b/.cargo-vendor/syn/tests/test_grouping.rs index 326909feb5..9809db0711 100644 --- a/.cargo-vendor/syn/tests/test_grouping.rs +++ b/.cargo-vendor/syn/tests/test_grouping.rs @@ -1,4 +1,4 @@ -#![allow(clippy::uninlined_format_args)] +#![allow(clippy::needless_lifetimes, clippy::uninlined_format_args)] #[macro_use] mod macros; @@ -25,7 +25,7 @@ fn test_grouping() { assert_eq!(tokens.to_string(), "1i32 + 2i32 + 3i32 * 4i32"); - snapshot!(tokens as Expr, @r###" + snapshot!(tokens as Expr, @r#" Expr::Binary { left: Expr::Lit { lit: 1i32, @@ -49,5 +49,5 @@ fn test_grouping() { }, }, } - "###); + "#); } diff --git a/.cargo-vendor/syn/tests/test_item.rs b/.cargo-vendor/syn/tests/test_item.rs index 5c088bbe60..51a5ba915e 100644 --- a/.cargo-vendor/syn/tests/test_item.rs +++ b/.cargo-vendor/syn/tests/test_item.rs @@ -1,4 +1,4 @@ -#![allow(clippy::uninlined_format_args)] +#![allow(clippy::needless_lifetimes, clippy::uninlined_format_args)] #[macro_use] mod macros; @@ -18,7 +18,7 @@ fn test_macro_variable_attr() { TokenTree::Group(Group::new(Delimiter::Brace, TokenStream::new())), ]); - snapshot!(tokens as Item, @r###" + snapshot!(tokens as Item, @r#" Item::Fn { attrs: [ Attribute { @@ -42,7 +42,7 @@ fn test_macro_variable_attr() { stmts: [], }, } - "###); + "#); } #[test] @@ -54,12 +54,12 @@ fn test_negative_impl() { let tokens = quote! { impl ! {} }; - snapshot!(tokens as Item, @r###" + snapshot!(tokens as Item, @r#" Item::Impl { generics: Generics, self_ty: Type::Never, } - "###); + "#); #[cfg(any())] #[rustfmt::skip] @@ -67,19 +67,19 @@ fn test_negative_impl() { let tokens = quote! { impl !Trait {} }; - snapshot!(tokens as Item, @r###" + snapshot!(tokens as Item, @r#" Item::Impl { generics: Generics, self_ty: Type::Verbatim(`! Trait`), } - "###); + "#); #[cfg(any())] impl !Trait for T {} let tokens = quote! { impl !Trait for T {} }; - snapshot!(tokens as Item, @r###" + snapshot!(tokens as Item, @r#" Item::Impl { generics: Generics, trait_: Some(( @@ -102,7 +102,7 @@ fn test_negative_impl() { }, }, } - "###); + "#); #[cfg(any())] #[rustfmt::skip] @@ -110,12 +110,12 @@ fn test_negative_impl() { let tokens = quote! { impl !! {} }; - snapshot!(tokens as Item, @r###" + snapshot!(tokens as Item, @r#" Item::Impl { generics: Generics, self_ty: Type::Verbatim(`! !`), } - "###); + "#); } #[test] @@ -129,7 +129,7 @@ fn test_macro_variable_impl() { TokenTree::Group(Group::new(Delimiter::Brace, TokenStream::new())), ]); - snapshot!(tokens as Item, @r###" + snapshot!(tokens as Item, @r#" Item::Impl { generics: Generics, trait_: Some(( @@ -154,7 +154,7 @@ fn test_macro_variable_impl() { }, }, } - "###); + "#); } #[test] @@ -163,7 +163,7 @@ fn test_supertraits() { #[rustfmt::skip] let tokens = quote!(trait Trait where {}); - snapshot!(tokens as ItemTrait, @r###" + snapshot!(tokens as ItemTrait, @r#" ItemTrait { vis: Visibility::Inherited, ident: "Trait", @@ -171,11 +171,11 @@ fn test_supertraits() { where_clause: Some(WhereClause), }, } - "###); + "#); #[rustfmt::skip] let tokens = quote!(trait Trait: where {}); - snapshot!(tokens as ItemTrait, @r###" + snapshot!(tokens as ItemTrait, @r#" ItemTrait { vis: Visibility::Inherited, ident: "Trait", @@ -184,11 +184,11 @@ fn test_supertraits() { }, colon_token: Some, } - "###); + "#); #[rustfmt::skip] let tokens = quote!(trait Trait: Sized where {}); - snapshot!(tokens as ItemTrait, @r###" + snapshot!(tokens as ItemTrait, @r#" ItemTrait { vis: Visibility::Inherited, ident: "Trait", @@ -208,11 +208,11 @@ fn test_supertraits() { }), ], } - "###); + "#); #[rustfmt::skip] let tokens = quote!(trait Trait: Sized + where {}); - snapshot!(tokens as ItemTrait, @r###" + snapshot!(tokens as ItemTrait, @r#" ItemTrait { vis: Visibility::Inherited, ident: "Trait", @@ -233,7 +233,7 @@ fn test_supertraits() { Token![+], ], } - "###); + "#); } #[test] @@ -245,7 +245,7 @@ fn test_type_empty_bounds() { } }; - snapshot!(tokens as ItemTrait, @r###" + snapshot!(tokens as ItemTrait, @r#" ItemTrait { vis: Visibility::Inherited, ident: "Foo", @@ -258,7 +258,7 @@ fn test_type_empty_bounds() { }, ], } - "###); + "#); } #[test] @@ -277,7 +277,7 @@ fn test_impl_type_parameter_defaults() { let tokens = quote! { impl () {} }; - snapshot!(tokens as Item, @r###" + snapshot!(tokens as Item, @r#" Item::Impl { generics: Generics { lt_token: Some, @@ -292,7 +292,7 @@ fn test_impl_type_parameter_defaults() { }, self_ty: Type::Tuple, } - "###); + "#); } #[test] @@ -301,7 +301,7 @@ fn test_impl_trait_trailing_plus() { fn f() -> impl Sized + {} }; - snapshot!(tokens as Item, @r###" + snapshot!(tokens as Item, @r#" Item::Fn { vis: Visibility::Inherited, sig: Signature { @@ -328,5 +328,5 @@ fn test_impl_trait_trailing_plus() { stmts: [], }, } - "###); + "#); } diff --git a/.cargo-vendor/syn/tests/test_iterators.rs b/.cargo-vendor/syn/tests/test_iterators.rs index 4090bcc8e8..3f0637ceb8 100644 --- a/.cargo-vendor/syn/tests/test_iterators.rs +++ b/.cargo-vendor/syn/tests/test_iterators.rs @@ -1,4 +1,8 @@ -#![allow(clippy::map_unwrap_or, clippy::uninlined_format_args)] +#![allow( + clippy::map_unwrap_or, + clippy::needless_lifetimes, + clippy::uninlined_format_args +)] use syn::punctuated::{Pair, Punctuated}; use syn::{parse_quote, GenericParam, Generics, Lifetime, LifetimeParam, Token}; diff --git a/.cargo-vendor/syn/tests/test_lit.rs b/.cargo-vendor/syn/tests/test_lit.rs index 0d5ecdcef5..a7194ab8e8 100644 --- a/.cargo-vendor/syn/tests/test_lit.rs +++ b/.cargo-vendor/syn/tests/test_lit.rs @@ -1,5 +1,6 @@ #![allow( clippy::float_cmp, + clippy::needless_lifetimes, clippy::needless_raw_string_hashes, clippy::non_ascii_literal, clippy::single_match_else, diff --git a/.cargo-vendor/syn/tests/test_meta.rs b/.cargo-vendor/syn/tests/test_meta.rs index ea6093115a..abb842be3d 100644 --- a/.cargo-vendor/syn/tests/test_meta.rs +++ b/.cargo-vendor/syn/tests/test_meta.rs @@ -1,4 +1,5 @@ #![allow( + clippy::needless_lifetimes, clippy::shadow_unrelated, clippy::too_many_lines, clippy::uninlined_format_args @@ -13,7 +14,7 @@ use syn::{Meta, MetaList, MetaNameValue}; fn test_parse_meta_item_word() { let input = "hello"; - snapshot!(input as Meta, @r###" + snapshot!(input as Meta, @r#" Meta::Path { segments: [ PathSegment { @@ -21,7 +22,7 @@ fn test_parse_meta_item_word() { }, ], } - "###); + "#); } #[test] @@ -29,7 +30,7 @@ fn test_parse_meta_name_value() { let input = "foo = 5"; let (inner, meta) = (input, input); - snapshot!(inner as MetaNameValue, @r###" + snapshot!(inner as MetaNameValue, @r#" MetaNameValue { path: Path { segments: [ @@ -42,9 +43,9 @@ fn test_parse_meta_name_value() { lit: 5, }, } - "###); + "#); - snapshot!(meta as Meta, @r###" + snapshot!(meta as Meta, @r#" Meta::NameValue { path: Path { segments: [ @@ -57,7 +58,7 @@ fn test_parse_meta_name_value() { lit: 5, }, } - "###); + "#); assert_eq!(meta, Meta::NameValue(inner)); } @@ -67,7 +68,7 @@ fn test_parse_meta_item_list_lit() { let input = "foo(5)"; let (inner, meta) = (input, input); - snapshot!(inner as MetaList, @r###" + snapshot!(inner as MetaList, @r#" MetaList { path: Path { segments: [ @@ -79,9 +80,9 @@ fn test_parse_meta_item_list_lit() { delimiter: MacroDelimiter::Paren, tokens: TokenStream(`5`), } - "###); + "#); - snapshot!(meta as Meta, @r###" + snapshot!(meta as Meta, @r#" Meta::List { path: Path { segments: [ @@ -93,7 +94,7 @@ fn test_parse_meta_item_list_lit() { delimiter: MacroDelimiter::Paren, tokens: TokenStream(`5`), } - "###); + "#); assert_eq!(meta, Meta::List(inner)); } @@ -103,7 +104,7 @@ fn test_parse_meta_item_multiple() { let input = "foo(word, name = 5, list(name2 = 6), word2)"; let (inner, meta) = (input, input); - snapshot!(inner as MetaList, @r###" + snapshot!(inner as MetaList, @r#" MetaList { path: Path { segments: [ @@ -115,9 +116,9 @@ fn test_parse_meta_item_multiple() { delimiter: MacroDelimiter::Paren, tokens: TokenStream(`word , name = 5 , list (name2 = 6) , word2`), } - "###); + "#); - snapshot!(meta as Meta, @r###" + snapshot!(meta as Meta, @r#" Meta::List { path: Path { segments: [ @@ -129,7 +130,7 @@ fn test_parse_meta_item_multiple() { delimiter: MacroDelimiter::Paren, tokens: TokenStream(`word , name = 5 , list (name2 = 6) , word2`), } - "###); + "#); assert_eq!(meta, Meta::List(inner)); } @@ -137,7 +138,7 @@ fn test_parse_meta_item_multiple() { #[test] fn test_parse_path() { let input = "::serde::Serialize"; - snapshot!(input as Meta, @r###" + snapshot!(input as Meta, @r#" Meta::Path { leading_colon: Some, segments: [ @@ -150,5 +151,5 @@ fn test_parse_path() { }, ], } - "###); + "#); } diff --git a/.cargo-vendor/syn/tests/test_parse_quote.rs b/.cargo-vendor/syn/tests/test_parse_quote.rs index c0e753260a..c3a9004a12 100644 --- a/.cargo-vendor/syn/tests/test_parse_quote.rs +++ b/.cargo-vendor/syn/tests/test_parse_quote.rs @@ -1,4 +1,4 @@ -#![allow(clippy::uninlined_format_args)] +#![allow(clippy::needless_lifetimes, clippy::uninlined_format_args)] #[macro_use] mod macros; @@ -9,7 +9,7 @@ use syn::{parse_quote, Attribute, Field, Lit, Pat, Stmt, Token}; #[test] fn test_attribute() { let attr: Attribute = parse_quote!(#[test]); - snapshot!(attr, @r###" + snapshot!(attr, @r#" Attribute { style: AttrStyle::Outer, meta: Meta::Path { @@ -20,10 +20,10 @@ fn test_attribute() { ], }, } - "###); + "#); let attr: Attribute = parse_quote!(#![no_std]); - snapshot!(attr, @r###" + snapshot!(attr, @r#" Attribute { style: AttrStyle::Inner, meta: Meta::Path { @@ -34,13 +34,13 @@ fn test_attribute() { ], }, } - "###); + "#); } #[test] fn test_field() { let field: Field = parse_quote!(pub enabled: bool); - snapshot!(field, @r###" + snapshot!(field, @r#" Field { vis: Visibility::Public, ident: Some("enabled"), @@ -55,10 +55,10 @@ fn test_field() { }, }, } - "###); + "#); let field: Field = parse_quote!(primitive::bool); - snapshot!(field, @r###" + snapshot!(field, @r#" Field { vis: Visibility::Inherited, ty: Type::Path { @@ -75,13 +75,13 @@ fn test_field() { }, }, } - "###); + "#); } #[test] fn test_pat() { let pat: Pat = parse_quote!(Some(false) | None); - snapshot!(&pat, @r###" + snapshot!(&pat, @r#" Pat::Or { cases: [ Pat::TupleStruct { @@ -106,7 +106,7 @@ fn test_pat() { }, ], } - "###); + "#); let boxed_pat: Box = parse_quote!(Some(false) | None); assert_eq!(*boxed_pat, pat); @@ -115,7 +115,7 @@ fn test_pat() { #[test] fn test_punctuated() { let punctuated: Punctuated = parse_quote!(true | true); - snapshot!(punctuated, @r###" + snapshot!(punctuated, @r#" [ Lit::Bool { value: true, @@ -125,10 +125,10 @@ fn test_punctuated() { value: true, }, ] - "###); + "#); let punctuated: Punctuated = parse_quote!(true | true |); - snapshot!(punctuated, @r###" + snapshot!(punctuated, @r#" [ Lit::Bool { value: true, @@ -139,7 +139,7 @@ fn test_punctuated() { }, Token![|], ] - "###); + "#); } #[test] @@ -148,7 +148,7 @@ fn test_vec_stmt() { let _; true }; - snapshot!(stmts, @r###" + snapshot!(stmts, @r#" [ Stmt::Local { pat: Pat::Wild, @@ -162,5 +162,5 @@ fn test_vec_stmt() { None, ), ] - "###); + "#); } diff --git a/.cargo-vendor/syn/tests/test_pat.rs b/.cargo-vendor/syn/tests/test_pat.rs index 3d13385fd9..eabba407be 100644 --- a/.cargo-vendor/syn/tests/test_pat.rs +++ b/.cargo-vendor/syn/tests/test_pat.rs @@ -1,4 +1,4 @@ -#![allow(clippy::uninlined_format_args)] +#![allow(clippy::needless_lifetimes, clippy::uninlined_format_args)] #[macro_use] mod macros; @@ -51,7 +51,7 @@ fn test_group() { let tokens = TokenStream::from_iter([TokenTree::Group(group)]); let pat = Pat::parse_single.parse2(tokens).unwrap(); - snapshot!(pat, @r###" + snapshot!(pat, @r#" Pat::TupleStruct { path: Path { segments: [ @@ -64,7 +64,7 @@ fn test_group() { Pat::Wild, ], } - "###); + "#); } #[test] @@ -108,27 +108,27 @@ fn test_tuple_comma() { expr.elems.push_value(parse_quote!(_)); // Must not parse to Pat::Paren - snapshot!(expr.to_token_stream() as Pat, @r###" + snapshot!(expr.to_token_stream() as Pat, @r#" Pat::Tuple { elems: [ Pat::Wild, Token![,], ], } - "###); + "#); expr.elems.push_punct(::default()); - snapshot!(expr.to_token_stream() as Pat, @r###" + snapshot!(expr.to_token_stream() as Pat, @r#" Pat::Tuple { elems: [ Pat::Wild, Token![,], ], } - "###); + "#); expr.elems.push_value(parse_quote!(_)); - snapshot!(expr.to_token_stream() as Pat, @r###" + snapshot!(expr.to_token_stream() as Pat, @r#" Pat::Tuple { elems: [ Pat::Wild, @@ -136,10 +136,10 @@ fn test_tuple_comma() { Pat::Wild, ], } - "###); + "#); expr.elems.push_punct(::default()); - snapshot!(expr.to_token_stream() as Pat, @r###" + snapshot!(expr.to_token_stream() as Pat, @r#" Pat::Tuple { elems: [ Pat::Wild, @@ -148,5 +148,5 @@ fn test_tuple_comma() { Token![,], ], } - "###); + "#); } diff --git a/.cargo-vendor/syn/tests/test_path.rs b/.cargo-vendor/syn/tests/test_path.rs index 628b9f853a..bdb2749ff9 100644 --- a/.cargo-vendor/syn/tests/test_path.rs +++ b/.cargo-vendor/syn/tests/test_path.rs @@ -1,4 +1,4 @@ -#![allow(clippy::uninlined_format_args)] +#![allow(clippy::needless_lifetimes, clippy::uninlined_format_args)] #[macro_use] mod macros; @@ -17,7 +17,7 @@ fn parse_interpolated_leading_component() { TokenTree::Ident(Ident::new("rest", Span::call_site())), ]); - snapshot!(tokens.clone() as Expr, @r###" + snapshot!(tokens.clone() as Expr, @r#" Expr::Path { path: Path { segments: [ @@ -31,9 +31,9 @@ fn parse_interpolated_leading_component() { ], }, } - "###); + "#); - snapshot!(tokens as Type, @r###" + snapshot!(tokens as Type, @r#" Type::Path { path: Path { segments: [ @@ -47,58 +47,38 @@ fn parse_interpolated_leading_component() { ], }, } - "###); + "#); } #[test] fn print_incomplete_qpath() { // qpath with `as` token let mut ty: TypePath = parse_quote!(::Q); - snapshot!(ty.to_token_stream(), @r###" - TokenStream(`< Self as A > :: Q`) - "###); + snapshot!(ty.to_token_stream(), @"TokenStream(`< Self as A > :: Q`)"); assert!(ty.path.segments.pop().is_some()); - snapshot!(ty.to_token_stream(), @r###" - TokenStream(`< Self as A > ::`) - "###); + snapshot!(ty.to_token_stream(), @"TokenStream(`< Self as A > ::`)"); assert!(ty.path.segments.pop().is_some()); - snapshot!(ty.to_token_stream(), @r###" - TokenStream(`< Self >`) - "###); + snapshot!(ty.to_token_stream(), @"TokenStream(`< Self >`)"); assert!(ty.path.segments.pop().is_none()); // qpath without `as` token let mut ty: TypePath = parse_quote!(::A::B); - snapshot!(ty.to_token_stream(), @r###" - TokenStream(`< Self > :: A :: B`) - "###); + snapshot!(ty.to_token_stream(), @"TokenStream(`< Self > :: A :: B`)"); assert!(ty.path.segments.pop().is_some()); - snapshot!(ty.to_token_stream(), @r###" - TokenStream(`< Self > :: A ::`) - "###); + snapshot!(ty.to_token_stream(), @"TokenStream(`< Self > :: A ::`)"); assert!(ty.path.segments.pop().is_some()); - snapshot!(ty.to_token_stream(), @r###" - TokenStream(`< Self > ::`) - "###); + snapshot!(ty.to_token_stream(), @"TokenStream(`< Self > ::`)"); assert!(ty.path.segments.pop().is_none()); // normal path let mut ty: TypePath = parse_quote!(Self::A::B); - snapshot!(ty.to_token_stream(), @r###" - TokenStream(`Self :: A :: B`) - "###); + snapshot!(ty.to_token_stream(), @"TokenStream(`Self :: A :: B`)"); assert!(ty.path.segments.pop().is_some()); - snapshot!(ty.to_token_stream(), @r###" - TokenStream(`Self :: A ::`) - "###); + snapshot!(ty.to_token_stream(), @"TokenStream(`Self :: A ::`)"); assert!(ty.path.segments.pop().is_some()); - snapshot!(ty.to_token_stream(), @r###" - TokenStream(`Self ::`) - "###); + snapshot!(ty.to_token_stream(), @"TokenStream(`Self ::`)"); assert!(ty.path.segments.pop().is_some()); - snapshot!(ty.to_token_stream(), @r###" - TokenStream(``) - "###); + snapshot!(ty.to_token_stream(), @"TokenStream(``)"); assert!(ty.path.segments.pop().is_none()); } @@ -106,7 +86,7 @@ fn print_incomplete_qpath() { fn parse_parenthesized_path_arguments_with_disambiguator() { #[rustfmt::skip] let tokens = quote!(dyn FnOnce::() -> !); - snapshot!(tokens as Type, @r###" + snapshot!(tokens as Type, @r#" Type::TraitObject { dyn_token: Some, bounds: [ @@ -126,5 +106,5 @@ fn parse_parenthesized_path_arguments_with_disambiguator() { }), ], } - "###); + "#); } diff --git a/.cargo-vendor/syn/tests/test_precedence.rs b/.cargo-vendor/syn/tests/test_precedence.rs index bee0c759e3..7231bd6409 100644 --- a/.cargo-vendor/syn/tests/test_precedence.rs +++ b/.cargo-vendor/syn/tests/test_precedence.rs @@ -25,6 +25,7 @@ clippy::manual_let_else, clippy::match_like_matches_macro, clippy::match_wildcard_for_single_variants, + clippy::needless_lifetimes, clippy::too_many_lines, clippy::uninlined_format_args )] @@ -185,8 +186,8 @@ fn librustc_parse_and_rewrite(input: &str) -> Option> { fn librustc_parenthesize(mut librustc_expr: P) -> P { use rustc_ast::ast::{ - AssocItem, AssocItemKind, Attribute, BinOpKind, Block, BorrowKind, BoundConstness, Expr, - ExprField, ExprKind, GenericArg, GenericBound, Local, LocalKind, Pat, Stmt, StmtKind, + AssocItem, AssocItemKind, Attribute, BinOpKind, Block, BoundConstness, Expr, ExprField, + ExprKind, GenericArg, GenericBound, Local, LocalKind, Pat, PolyTraitRef, Stmt, StmtKind, StructExpr, StructRest, TraitBoundModifiers, Ty, }; use rustc_ast::mut_visit::{walk_flat_map_item, MutVisitor}; @@ -239,7 +240,7 @@ fn librustc_parenthesize(mut librustc_expr: P) -> P { fn noop_visit_expr(e: &mut Expr, vis: &mut T) { match &mut e.kind { - ExprKind::AddrOf(BorrowKind::Raw, ..) | ExprKind::Become(..) => {} + ExprKind::Become(..) => {} ExprKind::Struct(expr) => { let StructExpr { qself, @@ -295,16 +296,17 @@ fn librustc_parenthesize(mut librustc_expr: P) -> P { fn visit_param_bound(&mut self, bound: &mut GenericBound, _ctxt: BoundKind) { match bound { - GenericBound::Trait( - _, - TraitBoundModifiers { - constness: BoundConstness::Maybe(_), - .. - }, - ) + GenericBound::Trait(PolyTraitRef { + modifiers: + TraitBoundModifiers { + constness: BoundConstness::Maybe(_), + .. + }, + .. + }) | GenericBound::Outlives(..) | GenericBound::Use(..) => {} - GenericBound::Trait(ty, _modifier) => self.visit_poly_trait_ref(ty), + GenericBound::Trait(ty) => self.visit_poly_trait_ref(ty), } } diff --git a/.cargo-vendor/syn/tests/test_receiver.rs b/.cargo-vendor/syn/tests/test_receiver.rs index 8decb555c5..c4a63176f1 100644 --- a/.cargo-vendor/syn/tests/test_receiver.rs +++ b/.cargo-vendor/syn/tests/test_receiver.rs @@ -1,4 +1,4 @@ -#![allow(clippy::uninlined_format_args)] +#![allow(clippy::needless_lifetimes, clippy::uninlined_format_args)] #[macro_use] mod macros; @@ -10,7 +10,7 @@ fn test_by_value() { let TraitItemFn { sig, .. } = parse_quote! { fn by_value(self: Self); }; - snapshot!(&sig.inputs[0], @r###" + snapshot!(&sig.inputs[0], @r#" FnArg::Receiver(Receiver { colon_token: Some, ty: Type::Path { @@ -23,7 +23,7 @@ fn test_by_value() { }, }, }) - "###); + "#); } #[test] @@ -31,7 +31,7 @@ fn test_by_mut_value() { let TraitItemFn { sig, .. } = parse_quote! { fn by_mut(mut self: Self); }; - snapshot!(&sig.inputs[0], @r###" + snapshot!(&sig.inputs[0], @r#" FnArg::Receiver(Receiver { mutability: Some, colon_token: Some, @@ -45,7 +45,7 @@ fn test_by_mut_value() { }, }, }) - "###); + "#); } #[test] @@ -53,7 +53,7 @@ fn test_by_ref() { let TraitItemFn { sig, .. } = parse_quote! { fn by_ref(self: &Self); }; - snapshot!(&sig.inputs[0], @r###" + snapshot!(&sig.inputs[0], @r#" FnArg::Receiver(Receiver { colon_token: Some, ty: Type::Reference { @@ -68,7 +68,7 @@ fn test_by_ref() { }, }, }) - "###); + "#); } #[test] @@ -76,7 +76,7 @@ fn test_by_box() { let TraitItemFn { sig, .. } = parse_quote! { fn by_box(self: Box); }; - snapshot!(&sig.inputs[0], @r###" + snapshot!(&sig.inputs[0], @r#" FnArg::Receiver(Receiver { colon_token: Some, ty: Type::Path { @@ -102,7 +102,7 @@ fn test_by_box() { }, }, }) - "###); + "#); } #[test] @@ -110,7 +110,7 @@ fn test_by_pin() { let TraitItemFn { sig, .. } = parse_quote! { fn by_pin(self: Pin); }; - snapshot!(&sig.inputs[0], @r###" + snapshot!(&sig.inputs[0], @r#" FnArg::Receiver(Receiver { colon_token: Some, ty: Type::Path { @@ -136,7 +136,7 @@ fn test_by_pin() { }, }, }) - "###); + "#); } #[test] @@ -144,7 +144,7 @@ fn test_explicit_type() { let TraitItemFn { sig, .. } = parse_quote! { fn explicit_type(self: Pin); }; - snapshot!(&sig.inputs[0], @r###" + snapshot!(&sig.inputs[0], @r#" FnArg::Receiver(Receiver { colon_token: Some, ty: Type::Path { @@ -170,7 +170,7 @@ fn test_explicit_type() { }, }, }) - "###); + "#); } #[test] @@ -178,7 +178,7 @@ fn test_value_shorthand() { let TraitItemFn { sig, .. } = parse_quote! { fn value_shorthand(self); }; - snapshot!(&sig.inputs[0], @r###" + snapshot!(&sig.inputs[0], @r#" FnArg::Receiver(Receiver { ty: Type::Path { path: Path { @@ -190,7 +190,7 @@ fn test_value_shorthand() { }, }, }) - "###); + "#); } #[test] @@ -198,7 +198,7 @@ fn test_mut_value_shorthand() { let TraitItemFn { sig, .. } = parse_quote! { fn mut_value_shorthand(mut self); }; - snapshot!(&sig.inputs[0], @r###" + snapshot!(&sig.inputs[0], @r#" FnArg::Receiver(Receiver { mutability: Some, ty: Type::Path { @@ -211,7 +211,7 @@ fn test_mut_value_shorthand() { }, }, }) - "###); + "#); } #[test] @@ -219,7 +219,7 @@ fn test_ref_shorthand() { let TraitItemFn { sig, .. } = parse_quote! { fn ref_shorthand(&self); }; - snapshot!(&sig.inputs[0], @r###" + snapshot!(&sig.inputs[0], @r#" FnArg::Receiver(Receiver { reference: Some(None), ty: Type::Reference { @@ -234,7 +234,7 @@ fn test_ref_shorthand() { }, }, }) - "###); + "#); } #[test] @@ -242,7 +242,7 @@ fn test_ref_shorthand_with_lifetime() { let TraitItemFn { sig, .. } = parse_quote! { fn ref_shorthand(&'a self); }; - snapshot!(&sig.inputs[0], @r###" + snapshot!(&sig.inputs[0], @r#" FnArg::Receiver(Receiver { reference: Some(Some(Lifetime { ident: "a", @@ -262,7 +262,7 @@ fn test_ref_shorthand_with_lifetime() { }, }, }) - "###); + "#); } #[test] @@ -270,7 +270,7 @@ fn test_ref_mut_shorthand() { let TraitItemFn { sig, .. } = parse_quote! { fn ref_mut_shorthand(&mut self); }; - snapshot!(&sig.inputs[0], @r###" + snapshot!(&sig.inputs[0], @r#" FnArg::Receiver(Receiver { reference: Some(None), mutability: Some, @@ -287,7 +287,7 @@ fn test_ref_mut_shorthand() { }, }, }) - "###); + "#); } #[test] @@ -295,7 +295,7 @@ fn test_ref_mut_shorthand_with_lifetime() { let TraitItemFn { sig, .. } = parse_quote! { fn ref_mut_shorthand(&'a mut self); }; - snapshot!(&sig.inputs[0], @r###" + snapshot!(&sig.inputs[0], @r#" FnArg::Receiver(Receiver { reference: Some(Some(Lifetime { ident: "a", @@ -317,5 +317,5 @@ fn test_ref_mut_shorthand_with_lifetime() { }, }, }) - "###); + "#); } diff --git a/.cargo-vendor/syn/tests/test_round_trip.rs b/.cargo-vendor/syn/tests/test_round_trip.rs index 9d459d9e1f..197552f801 100644 --- a/.cargo-vendor/syn/tests/test_round_trip.rs +++ b/.cargo-vendor/syn/tests/test_round_trip.rs @@ -7,6 +7,7 @@ clippy::manual_assert, clippy::manual_let_else, clippy::match_like_matches_macro, + clippy::needless_lifetimes, clippy::uninlined_format_args )] diff --git a/.cargo-vendor/syn/tests/test_shebang.rs b/.cargo-vendor/syn/tests/test_shebang.rs index 843916180f..994ab1c44e 100644 --- a/.cargo-vendor/syn/tests/test_shebang.rs +++ b/.cargo-vendor/syn/tests/test_shebang.rs @@ -1,4 +1,4 @@ -#![allow(clippy::uninlined_format_args)] +#![allow(clippy::needless_lifetimes, clippy::uninlined_format_args)] #[macro_use] mod macros; @@ -7,7 +7,7 @@ mod macros; fn test_basic() { let content = "#!/usr/bin/env rustx\nfn main() {}"; let file = syn::parse_file(content).unwrap(); - snapshot!(file, @r###" + snapshot!(file, @r##" File { shebang: Some("#!/usr/bin/env rustx"), items: [ @@ -24,14 +24,14 @@ fn test_basic() { }, ], } - "###); + "##); } #[test] fn test_comment() { let content = "#!//am/i/a/comment\n[allow(dead_code)] fn main() {}"; let file = syn::parse_file(content).unwrap(); - snapshot!(file, @r###" + snapshot!(file, @r#" File { attrs: [ Attribute { @@ -63,5 +63,5 @@ fn test_comment() { }, ], } - "###); + "#); } diff --git a/.cargo-vendor/syn/tests/test_stmt.rs b/.cargo-vendor/syn/tests/test_stmt.rs index 318e18b069..b2a49b0532 100644 --- a/.cargo-vendor/syn/tests/test_stmt.rs +++ b/.cargo-vendor/syn/tests/test_stmt.rs @@ -1,5 +1,6 @@ #![allow( clippy::assertions_on_result_states, + clippy::needless_lifetimes, clippy::non_ascii_literal, clippy::uninlined_format_args )] @@ -16,21 +17,32 @@ use syn::{Block, Stmt}; fn test_raw_operator() { let stmt = syn::parse_str::("let _ = &raw const x;").unwrap(); - snapshot!(stmt, @r###" + snapshot!(stmt, @r#" Stmt::Local { pat: Pat::Wild, init: Some(LocalInit { - expr: Expr::Verbatim(`& raw const x`), + expr: Expr::RawAddr { + mutability: PointerMutability::Const, + expr: Expr::Path { + path: Path { + segments: [ + PathSegment { + ident: "x", + }, + ], + }, + }, + }, }), } - "###); + "#); } #[test] fn test_raw_variable() { let stmt = syn::parse_str::("let _ = &raw;").unwrap(); - snapshot!(stmt, @r###" + snapshot!(stmt, @r#" Stmt::Local { pat: Pat::Wild, init: Some(LocalInit { @@ -47,7 +59,7 @@ fn test_raw_variable() { }, }), } - "###); + "#); } #[test] @@ -68,7 +80,7 @@ fn test_none_group() { TokenTree::Group(Group::new(Delimiter::Brace, TokenStream::new())), ]), ))]); - snapshot!(tokens as Stmt, @r###" + snapshot!(tokens as Stmt, @r#" Stmt::Item(Item::Fn { vis: Visibility::Inherited, sig: Signature { @@ -81,11 +93,11 @@ fn test_none_group() { stmts: [], }, }) - "###); + "#); let tokens = Group::new(Delimiter::None, quote!(let None = None)).to_token_stream(); let stmts = Block::parse_within.parse2(tokens).unwrap(); - snapshot!(stmts, @r###" + snapshot!(stmts, @r#" [ Stmt::Expr( Expr::Group { @@ -107,7 +119,7 @@ fn test_none_group() { None, ), ] - "###); + "#); } #[test] @@ -116,7 +128,7 @@ fn test_let_dot_dot() { let .. = 10; }; - snapshot!(tokens as Stmt, @r###" + snapshot!(tokens as Stmt, @r#" Stmt::Local { pat: Pat::Rest, init: Some(LocalInit { @@ -125,7 +137,7 @@ fn test_let_dot_dot() { }, }), } - "###); + "#); } #[test] @@ -134,7 +146,7 @@ fn test_let_else() { let Some(x) = None else { return 0; }; }; - snapshot!(tokens as Stmt, @r###" + snapshot!(tokens as Stmt, @r#" Stmt::Local { pat: Pat::TupleStruct { path: Path { @@ -176,7 +188,7 @@ fn test_let_else() { }), }), } - "###); + "#); } #[test] @@ -190,7 +202,7 @@ fn test_macros() { } }; - snapshot!(tokens as Stmt, @r###" + snapshot!(tokens as Stmt, @r#" Stmt::Item(Item::Fn { vis: Visibility::Inherited, sig: Signature { @@ -260,7 +272,7 @@ fn test_macros() { ], }, }) - "###); + "#); } #[test] @@ -274,7 +286,7 @@ fn test_early_parse_loop() { let stmts = Block::parse_within.parse2(tokens).unwrap(); - snapshot!(stmts, @r###" + snapshot!(stmts, @r#" [ Stmt::Expr( Expr::Loop { @@ -289,7 +301,7 @@ fn test_early_parse_loop() { None, ), ] - "###); + "#); let tokens = quote! { 'a: loop {} @@ -298,7 +310,7 @@ fn test_early_parse_loop() { let stmts = Block::parse_within.parse2(tokens).unwrap(); - snapshot!(stmts, @r###" + snapshot!(stmts, @r#" [ Stmt::Expr( Expr::Loop { @@ -318,5 +330,5 @@ fn test_early_parse_loop() { None, ), ] - "###); + "#); } diff --git a/.cargo-vendor/syn/tests/test_token_trees.rs b/.cargo-vendor/syn/tests/test_token_trees.rs index f5a067fd23..9bd73b165e 100644 --- a/.cargo-vendor/syn/tests/test_token_trees.rs +++ b/.cargo-vendor/syn/tests/test_token_trees.rs @@ -1,4 +1,4 @@ -#![allow(clippy::uninlined_format_args)] +#![allow(clippy::needless_lifetimes, clippy::uninlined_format_args)] #[macro_use] mod macros; @@ -17,11 +17,11 @@ fn test_struct() { } "; - snapshot!(input as TokenStream, @r###" + snapshot!(input as TokenStream, @r##" TokenStream( `# [derive (Debug , Clone)] pub struct Item { pub ident : Ident , pub attrs : Vec < Attribute >, }`, ) - "###); + "##); } #[test] diff --git a/.cargo-vendor/syn/tests/test_ty.rs b/.cargo-vendor/syn/tests/test_ty.rs index d85479de45..e54d7cbc31 100644 --- a/.cargo-vendor/syn/tests/test_ty.rs +++ b/.cargo-vendor/syn/tests/test_ty.rs @@ -1,4 +1,4 @@ -#![allow(clippy::uninlined_format_args)] +#![allow(clippy::needless_lifetimes, clippy::uninlined_format_args)] #[macro_use] mod macros; @@ -28,7 +28,7 @@ fn test_macro_variable_type() { TokenTree::Punct(Punct::new('>', Spacing::Alone)), ]); - snapshot!(tokens as Type, @r###" + snapshot!(tokens as Type, @r#" Type::Path { path: Path { segments: [ @@ -51,7 +51,7 @@ fn test_macro_variable_type() { ], }, } - "###); + "#); // mimics the token stream corresponding to `$ty::` let tokens = TokenStream::from_iter([ @@ -63,7 +63,7 @@ fn test_macro_variable_type() { TokenTree::Punct(Punct::new('>', Spacing::Alone)), ]); - snapshot!(tokens as Type, @r###" + snapshot!(tokens as Type, @r#" Type::Path { path: Path { segments: [ @@ -87,7 +87,7 @@ fn test_macro_variable_type() { ], }, } - "###); + "#); } #[test] @@ -100,7 +100,7 @@ fn test_group_angle_brackets() { TokenTree::Punct(Punct::new('>', Spacing::Alone)), ]); - snapshot!(tokens as Type, @r###" + snapshot!(tokens as Type, @r#" Type::Path { path: Path { segments: [ @@ -138,7 +138,7 @@ fn test_group_angle_brackets() { ], }, } - "###); + "#); } #[test] @@ -151,7 +151,7 @@ fn test_group_colons() { TokenTree::Ident(Ident::new("Item", Span::call_site())), ]); - snapshot!(tokens as Type, @r###" + snapshot!(tokens as Type, @r#" Type::Path { path: Path { segments: [ @@ -178,7 +178,7 @@ fn test_group_colons() { ], }, } - "###); + "#); let tokens = TokenStream::from_iter([ TokenTree::Group(Group::new(Delimiter::None, quote! { [T] })), @@ -187,7 +187,7 @@ fn test_group_colons() { TokenTree::Ident(Ident::new("Element", Span::call_site())), ]); - snapshot!(tokens as Type, @r###" + snapshot!(tokens as Type, @r#" Type::Path { qself: Some(QSelf { ty: Type::Slice { @@ -212,13 +212,13 @@ fn test_group_colons() { ], }, } - "###); + "#); } #[test] fn test_trait_object() { let tokens = quote!(dyn for<'a> Trait<'a> + 'static); - snapshot!(tokens as Type, @r###" + snapshot!(tokens as Type, @r#" Type::TraitObject { dyn_token: Some, bounds: [ @@ -253,10 +253,10 @@ fn test_trait_object() { }, ], } - "###); + "#); let tokens = quote!(dyn 'a + Trait); - snapshot!(tokens as Type, @r###" + snapshot!(tokens as Type, @r#" Type::TraitObject { dyn_token: Some, bounds: [ @@ -275,7 +275,7 @@ fn test_trait_object() { }), ], } - "###); + "#); // None of the following are valid Rust types. syn::parse_str::("for<'a> dyn Trait<'a>").unwrap_err(); @@ -286,7 +286,7 @@ fn test_trait_object() { fn test_trailing_plus() { #[rustfmt::skip] let tokens = quote!(impl Trait +); - snapshot!(tokens as Type, @r###" + snapshot!(tokens as Type, @r#" Type::ImplTrait { bounds: [ TypeParamBound::Trait(TraitBound { @@ -301,11 +301,11 @@ fn test_trailing_plus() { Token![+], ], } - "###); + "#); #[rustfmt::skip] let tokens = quote!(dyn Trait +); - snapshot!(tokens as Type, @r###" + snapshot!(tokens as Type, @r#" Type::TraitObject { dyn_token: Some, bounds: [ @@ -321,11 +321,11 @@ fn test_trailing_plus() { Token![+], ], } - "###); + "#); #[rustfmt::skip] let tokens = quote!(Trait +); - snapshot!(tokens as Type, @r###" + snapshot!(tokens as Type, @r#" Type::TraitObject { bounds: [ TypeParamBound::Trait(TraitBound { @@ -340,7 +340,7 @@ fn test_trailing_plus() { Token![+], ], } - "###); + "#); } #[test] @@ -353,27 +353,27 @@ fn test_tuple_comma() { expr.elems.push_value(parse_quote!(_)); // Must not parse to Type::Paren - snapshot!(expr.to_token_stream() as Type, @r###" + snapshot!(expr.to_token_stream() as Type, @r#" Type::Tuple { elems: [ Type::Infer, Token![,], ], } - "###); + "#); expr.elems.push_punct(::default()); - snapshot!(expr.to_token_stream() as Type, @r###" + snapshot!(expr.to_token_stream() as Type, @r#" Type::Tuple { elems: [ Type::Infer, Token![,], ], } - "###); + "#); expr.elems.push_value(parse_quote!(_)); - snapshot!(expr.to_token_stream() as Type, @r###" + snapshot!(expr.to_token_stream() as Type, @r#" Type::Tuple { elems: [ Type::Infer, @@ -381,10 +381,10 @@ fn test_tuple_comma() { Type::Infer, ], } - "###); + "#); expr.elems.push_punct(::default()); - snapshot!(expr.to_token_stream() as Type, @r###" + snapshot!(expr.to_token_stream() as Type, @r#" Type::Tuple { elems: [ Type::Infer, @@ -393,7 +393,7 @@ fn test_tuple_comma() { Token![,], ], } - "###); + "#); } #[test] @@ -402,7 +402,7 @@ fn test_impl_trait_use() { impl Sized + use<'_, 'a, A, Test> }; - snapshot!(tokens as Type, @r###" + snapshot!(tokens as Type, @r#" Type::ImplTrait { bounds: [ TypeParamBound::Trait(TraitBound { @@ -418,13 +418,13 @@ fn test_impl_trait_use() { TypeParamBound::Verbatim(`use < '_ , 'a , A , Test >`), ], } - "###); + "#); let trailing = quote! { impl Sized + use<'_,> }; - snapshot!(trailing as Type, @r###" + snapshot!(trailing as Type, @r#" Type::ImplTrait { bounds: [ TypeParamBound::Trait(TraitBound { @@ -440,5 +440,5 @@ fn test_impl_trait_use() { TypeParamBound::Verbatim(`use < '_ , >`), ], } - "###); + "#); } diff --git a/.cargo-vendor/syn/tests/test_unparenthesize.rs b/.cargo-vendor/syn/tests/test_unparenthesize.rs index 69166aca20..5db2e57a52 100644 --- a/.cargo-vendor/syn/tests/test_unparenthesize.rs +++ b/.cargo-vendor/syn/tests/test_unparenthesize.rs @@ -1,5 +1,9 @@ #![cfg(not(miri))] -#![allow(clippy::manual_assert, clippy::uninlined_format_args)] +#![allow( + clippy::manual_assert, + clippy::needless_lifetimes, + clippy::uninlined_format_args +)] use quote::ToTokens as _; use std::fs; diff --git a/.cargo-vendor/syn/tests/test_visibility.rs b/.cargo-vendor/syn/tests/test_visibility.rs index e6e8bd7291..6c065d0c56 100644 --- a/.cargo-vendor/syn/tests/test_visibility.rs +++ b/.cargo-vendor/syn/tests/test_visibility.rs @@ -1,4 +1,4 @@ -#![allow(clippy::uninlined_format_args)] +#![allow(clippy::needless_lifetimes, clippy::uninlined_format_args)] #[macro_use] mod macros; @@ -117,7 +117,7 @@ fn test_inherited_vis_named_field() { )), ]); - snapshot!(tokens as DeriveInput, @r###" + snapshot!(tokens as DeriveInput, @r#" DeriveInput { vis: Visibility::Inherited, ident: "S", @@ -135,7 +135,7 @@ fn test_inherited_vis_named_field() { }, }, } - "###); + "#); } #[test] @@ -154,7 +154,7 @@ fn test_inherited_vis_unnamed_field() { TokenTree::Punct(Punct::new(';', Spacing::Alone)), ]); - snapshot!(tokens as DeriveInput, @r###" + snapshot!(tokens as DeriveInput, @r#" DeriveInput { vis: Visibility::Inherited, ident: "S", @@ -181,5 +181,5 @@ fn test_inherited_vis_unnamed_field() { semi_token: Some, }, } - "###); + "#); } diff --git a/.cargo-vendor/uuid-macro-internal/.cargo-checksum.json b/.cargo-vendor/uuid-macro-internal/.cargo-checksum.json index 1563f9b787..4501c8e7e9 100644 --- a/.cargo-vendor/uuid-macro-internal/.cargo-checksum.json +++ b/.cargo-vendor/uuid-macro-internal/.cargo-checksum.json @@ -1 +1 @@ -{"files":{"COPYRIGHT":"31f8893b380dae25578b3ddac5432d270d59c040d92f745129f17430d0283964","Cargo.toml":"0055e37b8f35fe0baa727d5f349ac87e4adf4f7c97c307e3db4919ae15de287f","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"a891f58effc48bd0f632a3125818849f13fa7e64608fb2487b0b8139ca54e457","src/error.rs":"59eeb9428964c7e200bacb2e691abcc0952ca11a9c65b99796b42e20ae40453a","src/lib.rs":"3fc2c07f3494d05988c1e3e6c9e61a3f2f96da2fd1fc2d1c45cf1dbab223b5f3","src/parser.rs":"741f79491dce33cbc5e6c75f7fe1ac248c507fe13903e3e85bd64c50cf21024d"},"package":"ee1cd046f83ea2c4e920d6ee9f7c3537ef928d75dce5d84a87c2c5d6b3999a3a"} \ No newline at end of file +{"files":{"COPYRIGHT":"31f8893b380dae25578b3ddac5432d270d59c040d92f745129f17430d0283964","Cargo.toml":"3381ef85cc15ff65bd42b943b289997b23689ae52c9a450b3fa06e6b5cda0c29","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"a891f58effc48bd0f632a3125818849f13fa7e64608fb2487b0b8139ca54e457","src/error.rs":"59eeb9428964c7e200bacb2e691abcc0952ca11a9c65b99796b42e20ae40453a","src/lib.rs":"3fc2c07f3494d05988c1e3e6c9e61a3f2f96da2fd1fc2d1c45cf1dbab223b5f3","src/parser.rs":"741f79491dce33cbc5e6c75f7fe1ac248c507fe13903e3e85bd64c50cf21024d"},"package":"6b91f57fe13a38d0ce9e28a03463d8d3c2468ed03d75375110ec71d93b449a08"} \ No newline at end of file diff --git a/.cargo-vendor/uuid-macro-internal/Cargo.toml b/.cargo-vendor/uuid-macro-internal/Cargo.toml index e6d14d12bd..8150a88950 100644 --- a/.cargo-vendor/uuid-macro-internal/Cargo.toml +++ b/.cargo-vendor/uuid-macro-internal/Cargo.toml @@ -12,10 +12,16 @@ [package] edition = "2018" name = "uuid-macro-internal" -version = "1.10.0" +version = "1.11.0" authors = ["QnnOkabayashi"] +build = false +autobins = false +autoexamples = false +autotests = false +autobenches = false description = "Private implementation details of the uuid! macro." documentation = "https://docs.rs/uuid" +readme = false categories = [ "data-structures", "no-std", @@ -26,6 +32,8 @@ license = "Apache-2.0 OR MIT" repository = "https://github.com/uuid-rs/uuid" [lib] +name = "uuid_macro_internal" +path = "src/lib.rs" proc-macro = true [dependencies.proc-macro2] diff --git a/.cargo-vendor/uuid/.cargo-checksum.json b/.cargo-vendor/uuid/.cargo-checksum.json index f65b018083..3c67d65a55 100644 --- a/.cargo-vendor/uuid/.cargo-checksum.json +++ b/.cargo-vendor/uuid/.cargo-checksum.json @@ -1 +1 @@ -{"files":{"Cargo.toml":"fb2cb93d5f54be7cc16b401c4a30b498626ff33e0b0398f676916b77e0a4b7f1","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"436bc5a105d8e57dcd8778730f3754f7bf39c14d2f530e4cde4bd2d17a83ec3d","README.md":"2cb43321c6719c7e102c9e9fa148c3b8fd1ecc58bd050af3f94923e03b056255","src/builder.rs":"855c402ff7d6ac920ddc89fd75d365818187529970fdea17e3af32f255ea8b4e","src/error.rs":"6a402cde971f7d186be3a184953bc6c89e8b8039fa95cd351e1e158fbe7378cb","src/external.rs":"a0640bdb98de1c24fcc9851a438a5abe6f7e3acb195885c817a64fac25521b9d","src/external/arbitrary_support.rs":"7e7fbcc4b8af5878b71858a1f5fa31e85d84fc2fd159614f8d450ba1fe06ac28","src/external/borsh_support.rs":"b49d82a59653445ba26db46a1515294b1ab480c0671dbe5499dfd1fb02588b3b","src/external/serde_support.rs":"b818f54e784143677146666a6737597bf95523d0de73fedc90b22d9c949b0997","src/external/slog_support.rs":"4fe1cc136b1eb5e27d8b308801bcd72872c129fd20ced1f2415af6760a83751b","src/fmt.rs":"3bf88d68d838bef81380a1e669a86eee46f24a8113effbd7b4e92da714ec97c7","src/lib.rs":"17e77c45f7b4d714d852c94657ee353f73bb5eefe096c460d71899d5e49d62c2","src/macros.rs":"dff4a00bcbc37912d38d58edc3edfb8552ba8bb936403b8b33fe7dc3c2041908","src/md5.rs":"316d65b760ffa58beb6aa678be24359eb21a744e9e143bc99c11fe1907659245","src/parser.rs":"838e4a5af613a1d9b9dd6ca4b3c13a42e65fdea35fc02c93c34a416387dbdb7c","src/rng.rs":"d9cdd08ca225f28c103276c985db0540bb8db877a4bcb5348cb4a2648b29883e","src/sha1.rs":"e1a9657e11f1ed1ede33c0655f9c2641059b7c24f17be4ac425c930cc216e019","src/timestamp.rs":"06a9cd5e077d43b3b099bcc931d1f73ac3475473826764e5e6dc2d82ca8f8a99","src/v1.rs":"9c8254742e58a1d75b8374260108516fc914e2641f83e3a8ada75f05a62a62d1","src/v3.rs":"287860f5376e35d5292959d65948bdb0bbdb4605e3d2e463742c5400075bbe76","src/v4.rs":"c2f2844791cdb2c9e0c90bf7d9d155b96572f1f77aa9586104ddb77d44a5aeea","src/v5.rs":"70799f332c043b3d3ddf4aee791aa448296a5e05122be434945076f9cb29517c","src/v6.rs":"7bd0a52aa316e145ad55b99b0ad46ad3234b0936ab61a4935300f053f2030a56","src/v7.rs":"5e38bf0068606c797f45bb0ad72133a18fc2a879ce595b4b205e75a66266d5e3","src/v8.rs":"15a4c3b81afcca4ec406192f2099fac0ad43d734e12672b02a693ddcc38b6684"},"package":"81dfa00651efa65069b0b6b651f4aaa31ba9e3c3ce0137aaad053604ee7e0314"} \ No newline at end of file +{"files":{"Cargo.toml":"2a7f9c6958b513e041d63dfa988f4f0b48f6634d654f6fd3241ee1fd9e680aa3","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"436bc5a105d8e57dcd8778730f3754f7bf39c14d2f530e4cde4bd2d17a83ec3d","README.md":"4e2fe3e90f75b929f05775e599470f4987e41c0423a7bcd6a7ee526c29354e9c","src/builder.rs":"aa0aaa943858ceea12b06025556c1332f3b57996f5c000545a5ce84c25aaa0ae","src/error.rs":"6a402cde971f7d186be3a184953bc6c89e8b8039fa95cd351e1e158fbe7378cb","src/external.rs":"a0640bdb98de1c24fcc9851a438a5abe6f7e3acb195885c817a64fac25521b9d","src/external/arbitrary_support.rs":"7e7fbcc4b8af5878b71858a1f5fa31e85d84fc2fd159614f8d450ba1fe06ac28","src/external/borsh_support.rs":"b49d82a59653445ba26db46a1515294b1ab480c0671dbe5499dfd1fb02588b3b","src/external/serde_support.rs":"b818f54e784143677146666a6737597bf95523d0de73fedc90b22d9c949b0997","src/external/slog_support.rs":"4fe1cc136b1eb5e27d8b308801bcd72872c129fd20ced1f2415af6760a83751b","src/fmt.rs":"3bf88d68d838bef81380a1e669a86eee46f24a8113effbd7b4e92da714ec97c7","src/lib.rs":"50eb1bd0151dea8bdc61a75f52c9144ddf7df6064dde50d0554af33921d37ebe","src/macros.rs":"dff4a00bcbc37912d38d58edc3edfb8552ba8bb936403b8b33fe7dc3c2041908","src/md5.rs":"316d65b760ffa58beb6aa678be24359eb21a744e9e143bc99c11fe1907659245","src/parser.rs":"838e4a5af613a1d9b9dd6ca4b3c13a42e65fdea35fc02c93c34a416387dbdb7c","src/rng.rs":"d9cdd08ca225f28c103276c985db0540bb8db877a4bcb5348cb4a2648b29883e","src/sha1.rs":"e1a9657e11f1ed1ede33c0655f9c2641059b7c24f17be4ac425c930cc216e019","src/timestamp.rs":"3e282b309e0e7f93518e8ac034e9c3a8e5edda6a6bc9bf3fb6105a8c5a50ff22","src/v1.rs":"9c8254742e58a1d75b8374260108516fc914e2641f83e3a8ada75f05a62a62d1","src/v3.rs":"287860f5376e35d5292959d65948bdb0bbdb4605e3d2e463742c5400075bbe76","src/v4.rs":"c2f2844791cdb2c9e0c90bf7d9d155b96572f1f77aa9586104ddb77d44a5aeea","src/v5.rs":"70799f332c043b3d3ddf4aee791aa448296a5e05122be434945076f9cb29517c","src/v6.rs":"7bd0a52aa316e145ad55b99b0ad46ad3234b0936ab61a4935300f053f2030a56","src/v7.rs":"5e38bf0068606c797f45bb0ad72133a18fc2a879ce595b4b205e75a66266d5e3","src/v8.rs":"15a4c3b81afcca4ec406192f2099fac0ad43d734e12672b02a693ddcc38b6684"},"package":"f8c5f0a0af699448548ad1a2fbf920fb4bee257eae39953ba95cb84891a0446a"} \ No newline at end of file diff --git a/.cargo-vendor/uuid/Cargo.toml b/.cargo-vendor/uuid/Cargo.toml index dd443e44b4..4355c0b552 100644 --- a/.cargo-vendor/uuid/Cargo.toml +++ b/.cargo-vendor/uuid/Cargo.toml @@ -13,18 +13,23 @@ edition = "2018" rust-version = "1.60.0" name = "uuid" -version = "1.10.0" +version = "1.11.0" authors = [ "Ashley Mannix", "Dylan DPC", "Hunar Roop Kahlon", ] +build = false include = [ "src", "README.md", "LICENSE-APACHE", "LICENSE-MIT", ] +autobins = false +autoexamples = false +autotests = false +autobenches = false description = "A library to generate and parse UUIDs." homepage = "https://github.com/uuid-rs/uuid" documentation = "https://docs.rs/uuid" @@ -79,6 +84,10 @@ features = [ "v8", ] +[lib] +name = "uuid" +path = "src/lib.rs" + [dependencies.arbitrary] version = "1.1.3" optional = true @@ -131,11 +140,11 @@ version = "2" optional = true [dependencies.uuid-macro-internal] -version = "1.10.0" +version = "1.11.0" optional = true [dependencies.zerocopy] -version = "0.7" +version = "0.8" features = ["derive"] optional = true @@ -185,14 +194,14 @@ v6 = ["atomic"] v7 = ["rng"] v8 = [] -[target."cfg(all(target_arch = \"wasm32\", target_vendor = \"unknown\", target_os = \"unknown\"))".dependencies.wasm-bindgen] +[target.'cfg(all(target_arch = "wasm32", target_vendor = "unknown", target_os = "unknown"))'.dependencies.wasm-bindgen] version = "0.2" optional = true -[target."cfg(all(target_arch = \"wasm32\", target_vendor = \"unknown\", target_os = \"unknown\"))".dev-dependencies.wasm-bindgen-test] +[target.'cfg(all(target_arch = "wasm32", target_vendor = "unknown", target_os = "unknown"))'.dev-dependencies.wasm-bindgen-test] version = "0.3" -[target."cfg(target = \"wasm32-unknown-unknown\")".dev-dependencies.wasm-bindgen] +[target.'cfg(target = "wasm32-unknown-unknown")'.dev-dependencies.wasm-bindgen] version = "0.2" [badges.is-it-maintained-issue-resolution] @@ -207,3 +216,4 @@ status = "actively-developed" [lints.rust.unexpected_cfgs] level = "allow" priority = 0 +check-cfg = ["cfg(uuid_unstable)"] diff --git a/.cargo-vendor/uuid/README.md b/.cargo-vendor/uuid/README.md index f827e8d1cf..feff9cfd46 100644 --- a/.cargo-vendor/uuid/README.md +++ b/.cargo-vendor/uuid/README.md @@ -28,7 +28,7 @@ Add the following to your `Cargo.toml`: ```toml [dependencies.uuid] -version = "1.10.0" +version = "1.11.0" features = [ "v4", # Lets you generate random UUIDs "fast-rng", # Use a faster (but still sufficiently random) RNG @@ -65,11 +65,11 @@ assert_eq!(Some(Version::Random), my_uuid.get_version()); If you'd like to parse UUIDs _really_ fast, check out the [`uuid-simd`](https://github.com/nugine/uuid-simd) library. -For more details on using `uuid`, [see the library documentation](https://docs.rs/uuid/1.10.0/uuid). +For more details on using `uuid`, [see the library documentation](https://docs.rs/uuid/1.11.0/uuid). ## References -* [`uuid` library docs](https://docs.rs/uuid/1.10.0/uuid). +* [`uuid` library docs](https://docs.rs/uuid/1.11.0/uuid). * [Wikipedia: Universally Unique Identifier](http://en.wikipedia.org/wiki/Universally_unique_identifier). * [RFC 9562: Universally Unique IDentifiers (UUID)](https://www.ietf.org/rfc/rfc9562.html). diff --git a/.cargo-vendor/uuid/src/builder.rs b/.cargo-vendor/uuid/src/builder.rs index 6a07a30396..e59cb432e4 100644 --- a/.cargo-vendor/uuid/src/builder.rs +++ b/.cargo-vendor/uuid/src/builder.rs @@ -909,7 +909,7 @@ impl Builder { #[doc(hidden)] impl Builder { #[deprecated( - since = "1.10.0", + since = "1.11.0", note = "use `Builder::from_gregorian_timestamp(ticks, counter, node_id)`" )] pub const fn from_rfc4122_timestamp(ticks: u64, counter: u16, node_id: &[u8; 6]) -> Self { @@ -917,7 +917,7 @@ impl Builder { } #[deprecated( - since = "1.10.0", + since = "1.11.0", note = "use `Builder::from_sorted_gregorian_timestamp(ticks, counter, node_id)`" )] pub const fn from_sorted_rfc4122_timestamp( diff --git a/.cargo-vendor/uuid/src/lib.rs b/.cargo-vendor/uuid/src/lib.rs index eb93294e48..1316d62cbe 100644 --- a/.cargo-vendor/uuid/src/lib.rs +++ b/.cargo-vendor/uuid/src/lib.rs @@ -38,7 +38,7 @@ //! //! ```toml //! [dependencies.uuid] -//! version = "1.10.0" +//! version = "1.11.0" //! features = [ //! "v4", # Lets you generate random UUIDs //! "fast-rng", # Use a faster (but still sufficiently random) RNG @@ -138,7 +138,7 @@ //! //! ```toml //! [dependencies.uuid] -//! version = "1.10.0" +//! version = "1.11.0" //! features = [ //! "v4", //! "v7", @@ -153,7 +153,7 @@ //! //! ```toml //! [dependencies.uuid] -//! version = "1.10.0" +//! version = "1.11.0" //! default-features = false //! ``` //! @@ -211,7 +211,7 @@ #![doc( html_logo_url = "https://www.rust-lang.org/logos/rust-logo-128x128-blk-v2.png", html_favicon_url = "https://www.rust-lang.org/favicon.ico", - html_root_url = "https://docs.rs/uuid/1.10.0" + html_root_url = "https://docs.rs/uuid/1.11.0" )] #[cfg(any(feature = "std", test))] @@ -223,7 +223,7 @@ extern crate std; extern crate core as std; #[cfg(all(uuid_unstable, feature = "zerocopy"))] -use zerocopy::{AsBytes, FromBytes, FromZeroes, Unaligned}; +use zerocopy::{IntoBytes, FromBytes, Immutable, KnownLayout, Unaligned}; mod builder; mod error; @@ -438,7 +438,7 @@ pub enum Variant { #[derive(Clone, Copy, Eq, Hash, Ord, PartialEq, PartialOrd)] #[cfg_attr( all(uuid_unstable, feature = "zerocopy"), - derive(AsBytes, FromBytes, FromZeroes, Unaligned) + derive(IntoBytes, FromBytes, KnownLayout, Immutable, Unaligned) )] #[cfg_attr( feature = "borsh", diff --git a/.cargo-vendor/uuid/src/timestamp.rs b/.cargo-vendor/uuid/src/timestamp.rs index a17aedc0d8..d147199c55 100644 --- a/.cargo-vendor/uuid/src/timestamp.rs +++ b/.cargo-vendor/uuid/src/timestamp.rs @@ -165,12 +165,12 @@ impl Timestamp { #[doc(hidden)] impl Timestamp { - #[deprecated(since = "1.10.0", note = "use `Timestamp::from_gregorian(ticks, counter)`")] + #[deprecated(since = "1.11.0", note = "use `Timestamp::from_gregorian(ticks, counter)`")] pub const fn from_rfc4122(ticks: u64, counter: u16) -> Self { Timestamp::from_gregorian(ticks, counter) } - #[deprecated(since = "1.10.0", note = "use `Timestamp::to_gregorian()`")] + #[deprecated(since = "1.11.0", note = "use `Timestamp::to_gregorian()`")] pub const fn to_rfc4122(&self) -> (u64, u16) { self.to_gregorian() } diff --git a/Cargo.lock b/Cargo.lock index 8d3fcaf9a5..2e65f2a820 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -86,9 +86,9 @@ dependencies = [ [[package]] name = "anyhow" -version = "1.0.89" +version = "1.0.90" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "86fdf8605db99b54d3cd748a44c6d04df638eb5dafb219b135d0149bd0db01f6" +checksum = "37bf3594c4c988a53154954629820791dde498571819ae4ca50ca811e060cc95" [[package]] name = "async-stream" @@ -236,9 +236,9 @@ checksum = "8318a53db07bb3f8dca91a600466bdb3f2eaadeedfdbcf02e1accbad9271ba50" [[package]] name = "capnp" -version = "0.19.7" +version = "0.19.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ff5e468996c73ea6d3d2bffc2b738782487f878286615b7f76e11af15a9ada3f" +checksum = "4e985a566bdaae9a428a957d12b10c318d41b2afddb54cfbb764878059df636e" dependencies = [ "embedded-io", ] @@ -1072,9 +1072,9 @@ checksum = "bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe" [[package]] name = "libc" -version = "0.2.159" +version = "0.2.161" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "561d97a539a36e26a9a5fad1ea11a3039a67714694aaa379433e580854bc3dc5" +checksum = "8e9489c2807c139ffd9c1794f4af0ebe86a828db53ecdc7fea2111d0fed085d1" [[package]] name = "libgit2-sys" @@ -1483,12 +1483,11 @@ checksum = "d231b230927b5e4ad203db57bbcbee2802f6bce620b1e4a9024a07d94e2907ec" [[package]] name = "ppv-lite86" -version = "0.2.19" +version = "0.2.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2288c0e17cc8d342c712bb43a257a80ebffce59cdb33d5000d8348f3ec02528b" +checksum = "77957b295656769bb8ad2b6a6b09d897d94f05c41b069aede1fcdaa675eaea04" dependencies = [ "zerocopy", - "zerocopy-derive", ] [[package]] @@ -1551,9 +1550,9 @@ dependencies = [ [[package]] name = "proc-macro2" -version = "1.0.86" +version = "1.0.88" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5e719e8df665df0d1c8fbfd238015744736151d4445ec0836b8e628aae103b77" +checksum = "7c3a7fc5db1e57d5a779a352c8cdb57b29aa4c40cc69c3a68a7fedc815fbf2f9" dependencies = [ "unicode-ident", ] @@ -1759,9 +1758,9 @@ dependencies = [ [[package]] name = "serde_json" -version = "1.0.128" +version = "1.0.132" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ff5456707a1de34e7e37f2a6fd3d3f808c318259cbd01ab6377795054b483d8" +checksum = "d726bfaff4b320266d395898905d0eba0345aae23b54aee3a737e260fd46db03" dependencies = [ "itoa", "memchr", @@ -1882,9 +1881,9 @@ checksum = "13c2bddecc57b384dee18652358fb23172facb8a2c51ccc10d74c157bdea3292" [[package]] name = "syn" -version = "2.0.79" +version = "2.0.80" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "89132cd0bf050864e1d38dc3bbc07a0eb8e7530af26344d3d2bbbef83499f590" +checksum = "e6e185e337f816bc8da115b8afcb3324006ccc82eeaddf35113888d3bd8e44ac" dependencies = [ "proc-macro2", "quote", @@ -2319,9 +2318,9 @@ checksum = "06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821" [[package]] name = "uuid" -version = "1.10.0" +version = "1.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "81dfa00651efa65069b0b6b651f4aaa31ba9e3c3ce0137aaad053604ee7e0314" +checksum = "f8c5f0a0af699448548ad1a2fbf920fb4bee257eae39953ba95cb84891a0446a" dependencies = [ "getrandom", "rand", @@ -2331,9 +2330,9 @@ dependencies = [ [[package]] name = "uuid-macro-internal" -version = "1.10.0" +version = "1.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ee1cd046f83ea2c4e920d6ee9f7c3537ef928d75dce5d84a87c2c5d6b3999a3a" +checksum = "6b91f57fe13a38d0ce9e28a03463d8d3c2468ed03d75375110ec71d93b449a08" dependencies = [ "proc-macro2", "quote", diff --git a/conmon-rs/client/Cargo.toml b/conmon-rs/client/Cargo.toml index 291eac0bb5..faf0e785a4 100644 --- a/conmon-rs/client/Cargo.toml +++ b/conmon-rs/client/Cargo.toml @@ -4,7 +4,7 @@ version = "0.6.6" edition = "2021" [dependencies] -capnp = "0.19.7" +capnp = "0.19.8" capnp-rpc = "0.19.5" conmon-common = { path = "../common" } futures = "0.3.31" diff --git a/conmon-rs/common/Cargo.toml b/conmon-rs/common/Cargo.toml index 7e4c593025..01d32c567c 100644 --- a/conmon-rs/common/Cargo.toml +++ b/conmon-rs/common/Cargo.toml @@ -5,8 +5,8 @@ version = "0.6.6" edition = "2021" [dependencies] -capnp = "0.19.7" +capnp = "0.19.8" [build-dependencies] -capnp = "0.19.7" +capnp = "0.19.8" capnpc = "0.19.0" diff --git a/conmon-rs/server/Cargo.toml b/conmon-rs/server/Cargo.toml index 438833a0b1..55610fd27a 100644 --- a/conmon-rs/server/Cargo.toml +++ b/conmon-rs/server/Cargo.toml @@ -8,8 +8,8 @@ name = "conmonrs" path = "src/main.rs" [dependencies] -anyhow = "1.0.89" -capnp = "0.19.7" +anyhow = "1.0.90" +capnp = "0.19.8" capnp-rpc = "0.19.5" clap = { version = "4.3.24", features = ["color", "cargo", "deprecated", "derive", "deprecated", "env", "string", "unicode", "wrap_help"] } command-fds = { version = "0.3.0", features = ["tokio"] } @@ -17,7 +17,7 @@ conmon-common = { path = "../common" } futures = "0.3.31" getset = "0.1.3" lazy_static = "1.5.0" -libc = "0.2.159" +libc = "0.2.161" libsystemd = "0.7.0" memchr = "2.7.4" multimap = "0.10.0" @@ -32,7 +32,7 @@ prctl = "1.0.0" regex = "1.11.0" sendfd = { version = "0.4.3", features = ["tokio"] } serde = { version = "1.0.210", features = ["derive"] } -serde_json = "1.0.128" +serde_json = "1.0.132" shadow-rs = "0.31.1" signal-hook = "0.3.17" strum = { version = "0.26.3", features = ["derive"] } @@ -45,7 +45,7 @@ tracing = "0.1.40" tracing-opentelemetry = "0.24.0" tracing-subscriber = "0.3.18" tz-rs = "0.6.14" -uuid = { version = "1.10.0", features = ["v4", "fast-rng", "macro-diagnostics"] } +uuid = { version = "1.11.0", features = ["v4", "fast-rng", "macro-diagnostics"] } [build-dependencies] shadow-rs = "0.31.1"