use crate::{ruleset::Card, zobrist::Zobrist}; mod board; mod ruleset; mod seen; mod zobrist; fn main() { println!("Hello, world!"); let mut zob = Zobrist::new(); for feat in [ zobrist::Feature::CardAt { card: Card(0), slot: 0, depth: 0 }, zobrist::Feature::CardAt { card: Card(0), slot: 0, depth: 1 }, zobrist::Feature::CardAt { card: Card(0), slot: 0, depth: 2 }, zobrist::Feature::CardAt { card: Card(0), slot: 0, depth: 3 }, zobrist::Feature::CardAt { card: Card(0), slot: 0, depth: 0 }, zobrist::Feature::CardAt { card: Card(0), slot: 0, depth: 1 }, zobrist::Feature::CardAt { card: Card(0), slot: 0, depth: 2 }, zobrist::Feature::CardAt { card: Card(0), slot: 0, depth: 3 }, ] { let old_zob = zob.value; println!("{:?} => {:016X?}!", feat, feat.zobrist()); zob.toggle(feat); let new_zob = zob.value; println!("Zobrist: {:016X?} => {:016X?}", old_zob, new_zob); } }