core/hash

hash

Procedures

24

crc16_ccitt_0x1021

crc16_ccitt_0x1021 :: proc(data: []u8, seed: u16 = u16(0)) -> (result: u16)Source

Compute CRC-16 in the manner of CCITT (ITU-T V.41), using the 0x1021 polynomial.

Generator polynomial: x^16 + x^12 + x^5 + 1

	Used in the UDF (DVD *.iso) disk format's Volume Descriptor Tag,
	and was more historically the ITU-T V.41 CRC-16 used in the XModem protocol,
	which uses 0xffff as the initial value.

crc64_xz

crc64_xz :: proc(data: []u8, seed: u64 = u64(0)) -> (u64)Source

Compute CRC-64 in the manner of xz, using the ECMA-182 polynomial,

bit-reversed, with one's complement pre and post processing.
	Based on Mark Adler's v1.4 implementation in C under the ZLIB license.

fnv32

fnv32 :: proc(data: []u8, seed: u32 = u32(0x811c9dc5)) -> (u32)Source

NOTE(bill): Not a fan of these aliases but seems necessary

fnv64

fnv64 :: proc(data: []u8, seed: u64 = u64(0xcbf29ce484222325)) -> (u64)Source

NOTE(bill): Not a fan of these aliases but seems necessary

Reference search

Find anything

Documentation preferences

Settings

System theme variants

Used only while Theme is set to System.