vec-dimension-shift 1.0.1

N-Dimension shift features for Vec<T>
Documentation

Build #2444609 2025-08-25 18:26:29

# rustc version rustc 1.91.0-nightly (809200ec9 2025-08-24)

# docs.rs version docsrs 0.6.0 (8bbaf878 2025-08-22)

# build log [INFO] running `Command { std: "docker" "create" "-v" "/home/cratesfyi/workspace/builds/vec-dimension-shift-1.0.1/target:/opt/rustwide/target:rw,Z" "-v" "/home/cratesfyi/workspace/builds/vec-dimension-shift-1.0.1/source:/opt/rustwide/workdir:ro,Z" "-v" "/home/cratesfyi/workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/home/cratesfyi/workspace/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:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+nightly" "rustdoc" "--lib" "-Zrustdoc-map" "--config" "build.rustdocflags=[\"--cfg\", \"docsrs\", \"-Z\", \"unstable-options\", \"--emit=invocation-specific\", \"--resource-suffix\", \"-20250824-1.91.0-nightly-809200ec9\", \"--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] 27529ce933a9418a7835618a1c22cfd0e14b831faed79cf94e2fc9936c5eb363 [INFO] running `Command { std: "docker" "start" "-a" "27529ce933a9418a7835618a1c22cfd0e14b831faed79cf94e2fc9936c5eb363", kill_on_drop: false }` [INFO] [stderr] warning: transmuting an integer to a pointer creates a pointer without provenance [INFO] [stderr] --> src/lib.rs:201:42 [INFO] [stderr] | [INFO] [stderr] 123 | make_vec_dimension_shift_n_dimension! { VecDimensionShift2D, VecDimensionShift2DFlatten, as_2d_array_no_check, to_2d_array_no_check, as_2d_array, to_2d_array, as_2d_array_truncate, to_2d_array_truncate, as_2d_array_padding, to_2d_array_padding, 2 } [INFO] [stderr] | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- in this macro invocation [INFO] [stderr] ... [INFO] [stderr] 201 | let r_len_ptr: *mut usize = unsafe { std::mem::transmute(r_len_ptr) }; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this is dangerous because dereferencing the resulting pointer is undefined behavior [INFO] [stderr] = note: exposed provenance semantics can be used to create a pointer based on some previously exposed provenance [INFO] [stderr] = help: if you truly mean to create a pointer without provenance, use `std::ptr::without_provenance_mut` [INFO] [stderr] = help: for more information about transmute, see <https://doc.rust-lang.org/std/mem/fn.transmute.html#transmutation-between-pointers-and-integers> [INFO] [stderr] = help: for more information about exposed provenance, see <https://doc.rust-lang.org/std/ptr/index.html#exposed-provenance> [INFO] [stderr] = note: `#[warn(integer_to_ptr_transmutes)]` on by default [INFO] [stderr] = note: this warning originates in the macro `make_vec_dimension_shift_n_dimension` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] help: use `std::ptr::with_exposed_provenance_mut` instead to use a previously exposed provenance [INFO] [stderr] | [INFO] [stderr] 201 - let r_len_ptr: *mut usize = unsafe { std::mem::transmute(r_len_ptr) }; [INFO] [stderr] 201 + let r_len_ptr: *mut usize = unsafe { std::ptr::with_exposed_provenance_mut::<usize>(r_len_ptr) }; [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: transmuting an integer to a pointer creates a pointer without provenance [INFO] [stderr] --> src/lib.rs:201:42 [INFO] [stderr] | [INFO] [stderr] 125 | make_vec_dimension_shift_n_dimension! { VecDimensionShift3D, VecDimensionShift3DFlatten, as_3d_array_no_check, to_3d_array_no_check, as_3d_array, to_3d_array, as_3d_array_truncate, to_3d_array_truncate, as_3d_array_padding, to_3d_array_padding, 3 } [INFO] [stderr] | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- in this macro invocation [INFO] [stderr] ... [INFO] [stderr] 201 | let r_len_ptr: *mut usize = unsafe { std::mem::transmute(r_len_ptr) }; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this is dangerous because dereferencing the resulting pointer is undefined behavior [INFO] [stderr] = note: exposed provenance semantics can be used to create a pointer based on some previously exposed provenance [INFO] [stderr] = help: if you truly mean to create a pointer without provenance, use `std::ptr::without_provenance_mut` [INFO] [stderr] = help: for more information about transmute, see <https://doc.rust-lang.org/std/mem/fn.transmute.html#transmutation-between-pointers-and-integers> [INFO] [stderr] = help: for more information about exposed provenance, see <https://doc.rust-lang.org/std/ptr/index.html#exposed-provenance> [INFO] [stderr] = note: this warning originates in the macro `make_vec_dimension_shift_n_dimension` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] help: use `std::ptr::with_exposed_provenance_mut` instead to use a previously exposed provenance [INFO] [stderr] | [INFO] [stderr] 201 - let r_len_ptr: *mut usize = unsafe { std::mem::transmute(r_len_ptr) }; [INFO] [stderr] 201 + let r_len_ptr: *mut usize = unsafe { std::ptr::with_exposed_provenance_mut::<usize>(r_len_ptr) }; [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: transmuting an integer to a pointer creates a pointer without provenance [INFO] [stderr] --> src/lib.rs:201:42 [INFO] [stderr] | [INFO] [stderr] 127 | make_vec_dimension_shift_n_dimension! { VecDimensionShift4D, VecDimensionShift4DFlatten, as_4d_array_no_check, to_4d_array_no_check, as_4d_array, to_4d_array, as_4d_array_truncate, to_4d_array_truncate, as_4d_array_padding, to_4d_array_padding, 4 } [INFO] [stderr] | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- in this macro invocation [INFO] [stderr] ... [INFO] [stderr] 201 | let r_len_ptr: *mut usize = unsafe { std::mem::transmute(r_len_ptr) }; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this is dangerous because dereferencing the resulting pointer is undefined behavior [INFO] [stderr] = note: exposed provenance semantics can be used to create a pointer based on some previously exposed provenance [INFO] [stderr] = help: if you truly mean to create a pointer without provenance, use `std::ptr::without_provenance_mut` [INFO] [stderr] = help: for more information about transmute, see <https://doc.rust-lang.org/std/mem/fn.transmute.html#transmutation-between-pointers-and-integers> [INFO] [stderr] = help: for more information about exposed provenance, see <https://doc.rust-lang.org/std/ptr/index.html#exposed-provenance> [INFO] [stderr] = note: this warning originates in the macro `make_vec_dimension_shift_n_dimension` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] help: use `std::ptr::with_exposed_provenance_mut` instead to use a previously exposed provenance [INFO] [stderr] | [INFO] [stderr] 201 - let r_len_ptr: *mut usize = unsafe { std::mem::transmute(r_len_ptr) }; [INFO] [stderr] 201 + let r_len_ptr: *mut usize = unsafe { std::ptr::with_exposed_provenance_mut::<usize>(r_len_ptr) }; [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: `vec-dimension-shift` (lib) generated 3 warnings (run `cargo fix --lib -p vec-dimension-shift` to apply 3 suggestions) [INFO] [stderr] Scraping vec-dimension-shift v1.0.1 (/opt/rustwide/workdir) [INFO] [stderr] Documenting vec-dimension-shift v1.0.1 (/opt/rustwide/workdir) [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.66s [INFO] [stderr] Generated /opt/rustwide/target/x86_64-unknown-linux-gnu/doc/vec_dimension_shift/index.html [INFO] running `Command { std: "docker" "inspect" "27529ce933a9418a7835618a1c22cfd0e14b831faed79cf94e2fc9936c5eb363", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "27529ce933a9418a7835618a1c22cfd0e14b831faed79cf94e2fc9936c5eb363", kill_on_drop: false }` [INFO] [stdout] 27529ce933a9418a7835618a1c22cfd0e14b831faed79cf94e2fc9936c5eb363