SafeManuallyDrop 1.0.3

A safe version of ManuallyDrop with various features and options to track undefined behavior when working with ManuallyDrop.
Documentation
Build #2239751 2025-06-19 02:47:28

# rustc version rustc 1.89.0-nightly (c68340350 2025-06-18)

# docs.rs version docsrs 0.6.0 (0a8149e8 2025-06-15)

# build log [INFO] running `Command { std: "docker" "create" "-v" "/home/cratesfyi/workspace-builder/builds/SafeManuallyDrop-1.0.3/target:/opt/rustwide/target:rw,Z" "-v" "/home/cratesfyi/workspace-builder/builds/SafeManuallyDrop-1.0.3/source:/opt/rustwide/workdir:ro,Z" "-v" "/home/cratesfyi/workspace-builder/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/home/cratesfyi/workspace-builder/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "DOCS_RS=1" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "6442450944" "--cpus" "6" "--user" "1001:1001" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+nightly" "rustdoc" "--lib" "-Zrustdoc-map" "--all-features" "--config" "build.rustdocflags=[\"--cfg\", \"docsrs\", \"--cfg\", \"docsrs\", \"-Z\", \"unstable-options\", \"--emit=invocation-specific\", \"--resource-suffix\", \"-20250618-1.89.0-nightly-c68340350\", \"--static-root-path\", \"/-/rustdoc.static/\", \"--cap-lints\", \"warn\", \"--extern-html-root-takes-precedence\"]" "--offline" "-Zunstable-options" "--config=doc.extern-map.registries.crates-io=\"https://docs.rs/{pkg_name}/{version}/x86_64-unknown-linux-gnu\"" "-Zrustdoc-scrape-examples" "-j6" "--target" "x86_64-unknown-linux-gnu", kill_on_drop: false }` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] 2fc8ee2d601754aa53bf6bdcfe5f18b90292381eb7309e0d8d4596b8123edeb3 [INFO] running `Command { std: "docker" "start" "-a" "2fc8ee2d601754aa53bf6bdcfe5f18b90292381eb7309e0d8d4596b8123edeb3", kill_on_drop: false }` [INFO] [stderr] Scraping SafeManuallyDrop v1.0.3 (/opt/rustwide/workdir) [INFO] [stderr] Documenting SafeManuallyDrop v1.0.3 (/opt/rustwide/workdir) [INFO] [stderr] warning: unclosed HTML tag `T` [INFO] [stderr] --> src/macro_codegen.rs:254:47 [INFO] [stderr] | [INFO] [stderr] 254 | /// Takes the value from the ManuallyDrop<T> container out. [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] ::: src/beh/unsafe.rs:15:1 [INFO] [stderr] | [INFO] [stderr] 15 | / crate::__codegen! { [INFO] [stderr] 16 | | @use; [INFO] [stderr] 17 | | @impl UnsafeManuallyDrop { [INFO] [stderr] 18 | | is_safe: false, [INFO] [stderr] ... | [INFO] [stderr] 51 | | } [INFO] [stderr] | |_- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(rustdoc::invalid_html_tags)]` on by default [INFO] [stderr] = note: this warning originates in the macro `$crate::__codegen` which comes from the expansion of the macro `crate::__codegen` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] help: try marking as source code [INFO] [stderr] | [INFO] [stderr] 254 | /// Takes the value from the `ManuallyDrop<T>` container out. [INFO] [stderr] | + + [INFO] [stderr] [INFO] [stderr] warning: unclosed HTML tag `T` [INFO] [stderr] --> src/macro_codegen.rs:254:47 [INFO] [stderr] | [INFO] [stderr] 254 | /// Takes the value from the ManuallyDrop<T> container out. [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] ::: src/beh/safe.rs:17:1 [INFO] [stderr] | [INFO] [stderr] 17 | / crate::__codegen! { [INFO] [stderr] 18 | | @use; [INFO] [stderr] 19 | | @impl SafeManuallyDrop { [INFO] [stderr] 20 | | is_safe: true, [INFO] [stderr] ... | [INFO] [stderr] 54 | | } [INFO] [stderr] | |_- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `$crate::__codegen` which comes from the expansion of the macro `crate::__codegen` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] help: try marking as source code [INFO] [stderr] | [INFO] [stderr] 254 | /// Takes the value from the `ManuallyDrop<T>` container out. [INFO] [stderr] | + + [INFO] [stderr] [INFO] [stderr] warning: `SafeManuallyDrop` (lib doc) generated 2 warnings [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.83s [INFO] [stderr] Generated /opt/rustwide/target/x86_64-unknown-linux-gnu/doc/SafeManuallyDrop/index.html [INFO] running `Command { std: "docker" "inspect" "2fc8ee2d601754aa53bf6bdcfe5f18b90292381eb7309e0d8d4596b8123edeb3", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "2fc8ee2d601754aa53bf6bdcfe5f18b90292381eb7309e0d8d4596b8123edeb3", kill_on_drop: false }` [INFO] [stdout] 2fc8ee2d601754aa53bf6bdcfe5f18b90292381eb7309e0d8d4596b8123edeb3