Commit Graph

62 Commits

Author SHA1 Message Date
Aryadev Chavali
439b787040 modes:pair: add doc string for Pair::new 2026-04-05 04:45:51 +01:00
Aryadev Chavali
fea8f1716d *: fix doc strings 2026-04-05 04:45:51 +01:00
Aryadev Chavali
e1db8af26c modes:pair: Added pair type
Slightly more complex pattern since we've got two cards, but still
relatively trivial.
2026-04-05 04:45:51 +01:00
Aryadev Chavali
f5fa964e55 modes:mod: use matches! instead of assert!(match...)
Give it up for Clippy, MVP of this codebase.
2026-04-05 04:45:51 +01:00
Aryadev Chavali
71f644043a modes:mod|single: fix issue with footstool not taking other by reference 2026-04-05 04:45:51 +01:00
Aryadev Chavali
e401819914 modes:mod: doc for test_non_reflexivity 2026-04-05 04:45:51 +01:00
Aryadev Chavali
e46ece2622 modes:singles: refactor tests using the generic non_reflexive test. 2026-04-05 04:45:51 +01:00
Aryadev Chavali
bcd38ecdc4 modes:mod: implemented a generic tester for non_reflexivity
Given two "Hands", we test that the footstool condition on those two
hands are non-reflexive.
2026-04-05 04:45:51 +01:00
Aryadev Chavali
9c5ee74639 modes:single: tests for footstooling and invalid singles 2026-04-05 04:45:51 +01:00
Aryadev Chavali
d2075cd000 modes:single: implement Hand for Singles
Really trivial implementation.
2026-04-05 04:45:51 +01:00
Aryadev Chavali
44d8e4eba0 modes:mod: Hand trait
Any hand from any round mode has a chance of footstooling another hand
from that same mode.  This trait (Hand) allows us to implement these
semantics (as well as any other shared semantics) for each round mode.
2026-04-05 04:45:51 +01:00
Aryadev Chavali
ca07536b37 modes: new crate representing the API for different round types
Single is our first one - trivial really.  Only thing we need to check
is that the single isn't made up of a joker.
2026-04-05 04:45:51 +01:00