summaryrefslogtreecommitdiff
path: root/vendor/qoi/tests/common.rs
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/qoi/tests/common.rs')
-rw-r--r--vendor/qoi/tests/common.rs12
1 files changed, 12 insertions, 0 deletions
diff --git a/vendor/qoi/tests/common.rs b/vendor/qoi/tests/common.rs
new file mode 100644
index 0000000..cc1eff1
--- /dev/null
+++ b/vendor/qoi/tests/common.rs
@@ -0,0 +1,12 @@
+#[allow(unused)]
+pub fn hash<const N: usize>(px: [u8; N]) -> u8 {
+ let r = px[0];
+ let g = px[1];
+ let b = px[2];
+ let a = if N >= 4 { px[3] } else { 0xff };
+ let rm = r.wrapping_mul(3);
+ let gm = g.wrapping_mul(5);
+ let bm = b.wrapping_mul(7);
+ let am = a.wrapping_mul(11);
+ rm.wrapping_add(gm).wrapping_add(bm).wrapping_add(am) % 64
+}