wt_blk 0.3.1

Parser and unpacker for the BLK file format
Documentation
#[cfg(test)]
mod test {
	use std::{fs, mem::size_of};

	#[test]
	fn extract_wrpl_1_floats() {
		let file = fs::read("./samples/decompressed wrplu_1").unwrap();

		let mut floats = vec![];
		let float_mask = &[0x11, 0x00, 0x01, 0x60];
		for (i, window) in file.windows(4).enumerate() {
			if float_mask == window {
				let all_floats = &file[(i + 4)..((i + 4) + 3 * size_of::<f32>())];

				let parsed_floats = all_floats
					.chunks(size_of::<f32>())
					.map(|bin| f32::from_le_bytes(bin[..4].try_into().unwrap()))
					.map(|x| format!("{x:<15}"))
					.collect::<Vec<_>>();
				floats.push(parsed_floats.join("\t"));
			}
		}
		fs::write("./samples/floats.txt", floats.join("\n")).unwrap();
	}
}