hash-algorithms 0.1.0

Hash, generally translated as hash, hash, or transliterated as hash, is to transform any length of input (also known as pre image) into fixed length output through hash algorithm, and the output is the hash value. This transformation is a kind of compression mapping, that is, the space of hash value is usually much smaller than the space of input, different inputs may hash into the same output, so it is impossible to determine the unique input value from hash value. In short, it is a function that compresses messages of any length to a message digest of a fixed length.
Documentation

Build #3317569 2026-05-18 18:21:40

# rustc version rustc 1.97.0-nightly (507271bc1 2026-05-17)

# docs.rs version docsrs 0.0.0 (e50152ed411bb913753b1dfd203f22cb8711f097 2026-05-17 )

# build log [INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "DOCS_RS=1" "-w" "/opt/rustwide/workdir" "--user" "1001:1001" "ce042a26162e915c566fb955c2eeedd1e1185720cfde4b1a8d0ca20af2568690" "/opt/rustwide/cargo-home/bin/cargo" "+nightly" "rustdoc" "--lib" "-Zrustdoc-map" "--config" "build.rustdocflags=[\"--cfg\", \"docsrs\", \"-Z\", \"unstable-options\", \"--emit=invocation-specific\", \"--resource-suffix\", \"-20260517-1.97.0-nightly-507271bc1\", \"--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: target filter specified, but no targets matched; this is a no-op [INFO] [stderr] Documenting hash-algorithms v0.1.0 (/opt/rustwide/workdir) [INFO] [stderr] warning: unnecessary parentheses around assigned value [INFO] [stderr] --> src/lib.rs:75:12 [INFO] [stderr] | [INFO] [stderr] 75 | key ^= (key >> 10); [INFO] [stderr] | ^ ^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 75 - key ^= (key >> 10); [INFO] [stderr] 75 + key ^= key >> 10 ; [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around assigned value [INFO] [stderr] --> src/lib.rs:76:12 [INFO] [stderr] | [INFO] [stderr] 76 | key += (key << 3); [INFO] [stderr] | ^ ^ [INFO] [stderr] | [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 76 - key += (key << 3); [INFO] [stderr] 76 + key += key << 3 ; [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around assigned value [INFO] [stderr] --> src/lib.rs:77:12 [INFO] [stderr] | [INFO] [stderr] 77 | key ^= (key >> 6); [INFO] [stderr] | ^ ^ [INFO] [stderr] | [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 77 - key ^= (key >> 6); [INFO] [stderr] 77 + key ^= key >> 6 ; [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around assigned value [INFO] [stderr] --> src/lib.rs:79:12 [INFO] [stderr] | [INFO] [stderr] 79 | key ^= (key >> 16); [INFO] [stderr] | ^ ^ [INFO] [stderr] | [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 79 - key ^= (key >> 16); [INFO] [stderr] 79 + key ^= key >> 16 ; [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around assigned value [INFO] [stderr] --> src/lib.rs:98:17 [INFO] [stderr] | [INFO] [stderr] 98 | hash ^= ((hash << 5) + (*v as i64) + (hash >> 2)); [INFO] [stderr] | ^ ^ [INFO] [stderr] | [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 98 - hash ^= ((hash << 5) + (*v as i64) + (hash >> 2)); [INFO] [stderr] 98 + hash ^= (hash << 5) + (*v as i64) + (hash >> 2) ; [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around assigned value [INFO] [stderr] --> src/lib.rs:115:20 [INFO] [stderr] | [INFO] [stderr] 115 | hash = ((hash ^ (test >> three_quarters)) & (!high_bits)); [INFO] [stderr] | ^ ^ [INFO] [stderr] | [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 115 - hash = ((hash ^ (test >> three_quarters)) & (!high_bits)); [INFO] [stderr] 115 + hash = (hash ^ (test >> three_quarters)) & (!high_bits) ; [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around assigned value [INFO] [stderr] --> src/lib.rs:129:21 [INFO] [stderr] | [INFO] [stderr] 129 | hash ^= (x >> 24); [INFO] [stderr] | ^ ^ [INFO] [stderr] | [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 129 - hash ^= (x >> 24); [INFO] [stderr] 129 + hash ^= x >> 24 ; [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around assigned value [INFO] [stderr] --> src/lib.rs:130:21 [INFO] [stderr] | [INFO] [stderr] 130 | hash &= (!x); [INFO] [stderr] | ^ ^ [INFO] [stderr] | [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 130 - hash &= (!x); [INFO] [stderr] 130 + hash &= !x ; [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around assigned value [INFO] [stderr] --> src/lib.rs:178:18 [INFO] [stderr] | [INFO] [stderr] 178 | let vv = (*v as i64); [INFO] [stderr] | ^ ^ [INFO] [stderr] | [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 178 - let vv = (*v as i64); [INFO] [stderr] 178 + let vv = *v as i64 ; [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around assigned value [INFO] [stderr] --> src/lib.rs:180:21 [INFO] [stderr] | [INFO] [stderr] 180 | hash ^= ((hash << 7) ^ vv ^ (hash >> 3)); [INFO] [stderr] | ^ ^ [INFO] [stderr] | [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 180 - hash ^= ((hash << 7) ^ vv ^ (hash >> 3)); [INFO] [stderr] 180 + hash ^= (hash << 7) ^ vv ^ (hash >> 3) ; [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around assigned value [INFO] [stderr] --> src/lib.rs:182:21 [INFO] [stderr] | [INFO] [stderr] 182 | hash ^= (!((hash << 11) ^ vv ^ (hash >> 5))); [INFO] [stderr] | ^ ^ [INFO] [stderr] | [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 182 - hash ^= (!((hash << 11) ^ vv ^ (hash >> 5))); [INFO] [stderr] 182 + hash ^= !((hash << 11) ^ vv ^ (hash >> 5)) ; [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: `hash-algorithms` (lib doc) generated 11 warnings (run `cargo fix --lib -p hash-algorithms` to apply 11 suggestions) [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.49s [INFO] [stderr] Generated /opt/rustwide/target/x86_64-unknown-linux-gnu/doc/hash_algorithms/index.html [INFO] running `Command { std: "docker" "inspect" "ce042a26162e915c566fb955c2eeedd1e1185720cfde4b1a8d0ca20af2568690", kill_on_drop: false }`