use std::{path::Path}; use sha2::{Sha256}; use std::fs::File; use hex_literal::hex; use digest_io::HashReader; use std::io::BufReader; pub struct GameIso { filepath: bool } impl GameIso { pub fn new>(path: P) -> () { let file = File::open(path).unwrap(); let reader = BufReader::new(file); let mut hasher: HashReader> = HashReader::>::new(reader); hasher.hash_to_end(); let hash = hasher.finalize(); let s: String = hash.iter().map(|b| format!("{:02x}", b)).collect(); assert!(hash == hex!("a08ad2654831ab298071bdcdf727945efcfdd50d2b0e3512a3d361ee7b18296d")); } }