byte-array-ops 0.1.0

A no_std-compatible library for ergonomic byte array operations with optional security hardening. Supports multiple input formats (hex, binary, UTF-8), bitwise operations, and comprehensive type conversions with minimal dependencies.
Documentation
Build #2694108 2025-11-28 20:00:13
# rustc version
rustc 1.93.0-nightly (c86564c41 2025-11-27)# docs.rs version
docsrs 0.6.0 (6d5049f1 2025-11-27 )# build log
[INFO] running `Command { std: "docker" "create" "-v" "/home/cratesfyi/workspace/builds/byte-array-ops-0.1.0/target:/opt/rustwide/target:rw,Z" "-v" "/home/cratesfyi/workspace/builds/byte-array-ops-0.1.0/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:94a0c148923f5b2b52a63ef0eeb1882ad339ab61bce784c8077cbe41c61feb6c" "/opt/rustwide/cargo-home/bin/cargo" "+nightly" "rustdoc" "--lib" "-Zrustdoc-map" "--config" "build.rustdocflags=[\"--cfg\", \"docsrs\", \"-Z\", \"unstable-options\", \"--emit=invocation-specific\", \"--resource-suffix\", \"-20251127-1.93.0-nightly-c86564c41\", \"--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] 79de90813f30985ccb7a0aa97ca8c90a276536563ad35783d6dafdb91b58d69a
[INFO] running `Command { std: "docker" "start" "-a" "79de90813f30985ccb7a0aa97ca8c90a276536563ad35783d6dafdb91b58d69a", kill_on_drop: false }`
[INFO] [stderr] warning: target filter specified, but no targets matched; this is a no-op
[INFO] [stderr]  Documenting byte-array-ops v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr] warning: unresolved link to `LICENSE`
[INFO] [stderr]    --> src/lib.rs:1:1
[INFO] [stderr]     |
[INFO] [stderr]   1 | / //! Welcome to the ByteArrayOps Library
[INFO] [stderr]   2 | | //!
[INFO] [stderr]   3 | | //! # Introduction
[INFO] [stderr]   4 | | //! This is a `no_std`-compatible library designed to provide an ergonomic and easy way to conduct operations on byte arrays.
[INFO] [stderr] ...   |
[INFO] [stderr] 178 | | //! (`sec_harden_zeroize`, `sec_harden_const_time_ops`, etc.) in `#[cfg]` attributes. Tiers (`sec_basic_hardening`,
[INFO] [stderr] 179 | | //! `sec_enhanced_hardening`, `sec_maximum_hardening`) are convenience bundles for users to activate multiple features at once.
[INFO] [stderr]     | |_______________________________________________________________________________________________________________________________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: the link appears in this line:
[INFO] [stderr]             
[INFO] [stderr]             Licensed under the Apache License, Version 2.0. See [LICENSE](LICENSE) for details.
[INFO] [stderr]                                                                           ^^^^^^^
[INFO] [stderr]     = note: no item named `LICENSE` in scope
[INFO] [stderr]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stderr]     = note: `#[warn(rustdoc::broken_intra_doc_links)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unresolved link to `crate::core::model`
[INFO] [stderr]    --> src/lib.rs:1:1
[INFO] [stderr]     |
[INFO] [stderr]   1 | / //! Welcome to the ByteArrayOps Library
[INFO] [stderr]   2 | | //!
[INFO] [stderr]   3 | | //! # Introduction
[INFO] [stderr]   4 | | //! This is a `no_std`-compatible library designed to provide an ergonomic and easy way to conduct operations on byte arrays.
[INFO] [stderr] ...   |
[INFO] [stderr] 178 | | //! (`sec_harden_zeroize`, `sec_harden_const_time_ops`, etc.) in `#[cfg]` attributes. Tiers (`sec_basic_hardening`,
[INFO] [stderr] 179 | | //! `sec_enhanced_hardening`, `sec_maximum_hardening`) are convenience bundles for users to activate multiple features at once.
[INFO] [stderr]     | |_______________________________________________________________________________________________________________________________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: the link appears in this line:
[INFO] [stderr]             
[INFO] [stderr]             - [`byte_array::model`](crate::core::model) - Core [`ByteArray`] type and constructors
[INFO] [stderr]                                     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     = note: no item named `core` in module `byte_array_ops`
[INFO] [stderr] 
[INFO] [stderr] warning: unresolved link to `crate::core::type_conv`
[INFO] [stderr]    --> src/lib.rs:128:33
[INFO] [stderr]     |
[INFO] [stderr] 128 | //! - [`byte_array::type_conv`](crate::core::type_conv) - Type conversion implementations (`From`, `Into`, `FromStr`)
[INFO] [stderr]     |                                 ^^^^^^^^^^^^^^^^^^^^^^ no item named `core` in module `byte_array_ops`
[INFO] [stderr] 
[INFO] [stderr] warning: unresolved link to `crate::core::ops`
[INFO] [stderr]    --> src/lib.rs:129:27
[INFO] [stderr]     |
[INFO] [stderr] 129 | //! - [`byte_array::ops`](crate::core::ops) - Bitwise operations (XOR, AND, OR, NOT) - requires `ops_algebra` feature
[INFO] [stderr]     |                           ^^^^^^^^^^^^^^^^ no item named `core` in module `byte_array_ops`
[INFO] [stderr] 
[INFO] [stderr] warning: unresolved link to `crate::core::iter`
[INFO] [stderr]    --> src/lib.rs:1:1
[INFO] [stderr]     |
[INFO] [stderr]   1 | / //! Welcome to the ByteArrayOps Library
[INFO] [stderr]   2 | | //!
[INFO] [stderr]   3 | | //! # Introduction
[INFO] [stderr]   4 | | //! This is a `no_std`-compatible library designed to provide an ergonomic and easy way to conduct operations on byte arrays.
[INFO] [stderr] ...   |
[INFO] [stderr] 178 | | //! (`sec_harden_zeroize`, `sec_harden_const_time_ops`, etc.) in `#[cfg]` attributes. Tiers (`sec_basic_hardening`,
[INFO] [stderr] 179 | | //! `sec_enhanced_hardening`, `sec_maximum_hardening`) are convenience bundles for users to activate multiple features at once.
[INFO] [stderr]     | |_______________________________________________________________________________________________________________________________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: the link appears in this line:
[INFO] [stderr]             
[INFO] [stderr]             - [`byte_array::iter`](crate::core::iter) - Iterator implementations
[INFO] [stderr]                                    ^^^^^^^^^^^^^^^^^
[INFO] [stderr]     = note: no item named `core` in module `byte_array_ops`
[INFO] [stderr] 
[INFO] [stderr] warning: unresolved link to `crate::core::errors`
[INFO] [stderr]    --> src/lib.rs:131:30
[INFO] [stderr]     |
[INFO] [stderr] 131 | //! - [`byte_array::errors`](crate::core::errors) - Error types for parsing and conversions
[INFO] [stderr]     |                              ^^^^^^^^^^^^^^^^^^^ no item named `core` in module `byte_array_ops`
[INFO] [stderr] 
[INFO] [stderr] warning: unresolved link to `crate::core::model::UninitByteArray`
[INFO] [stderr]    --> src/lib.rs:137:27
[INFO] [stderr]     |
[INFO] [stderr] 137 | //! - [`UninitByteArray`](crate::core::model::UninitByteArray) - Builder for configuring ByteArray construction (odd-word padding)
[INFO] [stderr]     |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `core` in module `byte_array_ops`
[INFO] [stderr] 
[INFO] [stderr] warning: unresolved link to `crate::core::model::ByteArrayOddWordPad`
[INFO] [stderr]    --> src/lib.rs:138:31
[INFO] [stderr]     |
[INFO] [stderr] 138 | //! - [`ByteArrayOddWordPad`](crate::core::model::ByteArrayOddWordPad) - Padding direction for odd-length hex/binary inputs
[INFO] [stderr]     |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `core` in module `byte_array_ops`
[INFO] [stderr] 
[INFO] [stderr] warning: unresolved link to `crate::core::iter::ByteArrayIter`
[INFO] [stderr]    --> src/lib.rs:1:1
[INFO] [stderr]     |
[INFO] [stderr]   1 | / //! Welcome to the ByteArrayOps Library
[INFO] [stderr]   2 | | //!
[INFO] [stderr]   3 | | //! # Introduction
[INFO] [stderr]   4 | | //! This is a `no_std`-compatible library designed to provide an ergonomic and easy way to conduct operations on byte arrays.
[INFO] [stderr] ...   |
[INFO] [stderr] 178 | | //! (`sec_harden_zeroize`, `sec_harden_const_time_ops`, etc.) in `#[cfg]` attributes. Tiers (`sec_basic_hardening`,
[INFO] [stderr] 179 | | //! `sec_enhanced_hardening`, `sec_maximum_hardening`) are convenience bundles for users to activate multiple features at once.
[INFO] [stderr]     | |_______________________________________________________________________________________________________________________________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: the link appears in this line:
[INFO] [stderr]             
[INFO] [stderr]             - [`ByteArrayIter`](crate::core::iter::ByteArrayIter) - Immutable iterator over bytes
[INFO] [stderr]                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     = note: no item named `core` in module `byte_array_ops`
[INFO] [stderr] 
[INFO] [stderr] warning: unresolved link to `crate::core::iter::ByteArrayIterMut`
[INFO] [stderr]    --> src/lib.rs:142:28
[INFO] [stderr]     |
[INFO] [stderr] 142 | //! - [`ByteArrayIterMut`](crate::core::iter::ByteArrayIterMut) - Mutable iterator over bytes
[INFO] [stderr]     |                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `core` in module `byte_array_ops`
[INFO] [stderr] 
[INFO] [stderr] warning: unresolved link to `UninitByteArray::create_with_odd_rpad`
[INFO] [stderr]   --> src/byte_array/model.rs:42:14
[INFO] [stderr]    |
[INFO] [stderr] 42 |     /// or [`UninitByteArray::create_with_odd_rpad`] for example
[INFO] [stderr]    |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the struct `UninitByteArray` has no field or associated item named `create_with_odd_rpad`
[INFO] [stderr] 
[INFO] [stderr] warning: unresolved link to `BytePadding`
[INFO] [stderr]   --> src/byte_array/model.rs:45:57
[INFO] [stderr]    |
[INFO] [stderr] 45 |     /// in cases where the [Default odd array padding][`BytePadding`] is sufficient and more efficient
[INFO] [stderr]    |                                                         ^^^^^^^^^^^ no item named `BytePadding` in scope
[INFO] [stderr]    |
[INFO] [stderr]    = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stderr] 
[INFO] [stderr] warning: unresolved link to `BytePadding::LeftPadding`
[INFO] [stderr]   --> src/byte_array/model.rs:97:78
[INFO] [stderr]    |
[INFO] [stderr] 97 |     /// readability purposes. By default, [`ByteArray`] uses [Left Padding][`BytePadding::LeftPadding`]
[INFO] [stderr]    |                                                                              ^^^^^^^^^^^^^^^^^^^^^^^^ no item named `BytePadding` in scope
[INFO] [stderr] 
[INFO] [stderr] warning: unresolved link to `ByteArray::make_rpad`
[INFO] [stderr]   --> src/byte_array/model.rs:98:15
[INFO] [stderr]    |
[INFO] [stderr] 98 |     /// and [`ByteArray::make_rpad`] is used to override and set to right padding.
[INFO] [stderr]    |               ^^^^^^^^^^^^^^^^^^^^ the struct `ByteArray` has no field or associated item named `make_rpad`
[INFO] [stderr] 
[INFO] [stderr] warning: unresolved link to `BytePadding`
[INFO] [stderr]    --> src/byte_array/model.rs:162:52
[INFO] [stderr]     |
[INFO] [stderr] 162 |     /// uses the default [Byte padding direction][`BytePadding`]
[INFO] [stderr]     |                                                    ^^^^^^^^^^^ no item named `BytePadding` in scope
[INFO] [stderr]     |
[INFO] [stderr]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stderr] 
[INFO] [stderr] warning: `byte-array-ops` (lib doc) generated 15 warnings
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.33s
[INFO] [stderr]    Generated /opt/rustwide/target/x86_64-unknown-linux-gnu/doc/byte_array_ops/index.html
[INFO] running `Command { std: "docker" "inspect" "79de90813f30985ccb7a0aa97ca8c90a276536563ad35783d6dafdb91b58d69a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "79de90813f30985ccb7a0aa97ca8c90a276536563ad35783d6dafdb91b58d69a", kill_on_drop: false }`
[INFO] [stdout] 79de90813f30985ccb7a0aa97ca8c90a276536563ad35783d6dafdb91b58d69a