Crate hamming[stability] [-] [+] [src]

A crate to count ones and xor bytes, fast (aka popcount, hamming weight and hamming distance).

Installation

Add this to your Cargo.toml:

[dependencies]
hamming = "0.1"

Examples

assert_eq!(hamming::weight(&[1, 0xFF, 1, 0xFF]), 1 + 8 + 1 + 8);
assert_eq!(hamming::distance(&[1, 0xFF], &[0xFF, 1]), 7 + 7);

Functions

distance

Computes the bitwise Hamming distance between x and y, that is, the number of bits where x and y differ, or, the number of set bits in the xor of x and y.

distance_fast

Computes the bitwise Hamming distance between x and y, that is, the number of bits where x and y differ, or, the number of set bits in the xor of x and y.

weight

Computes the Hamming weight of x, that is, the population count, or number of 1.