diff --git a/src/card.rs b/src/card.rs index 3edfdae..34815b3 100644 --- a/src/card.rs +++ b/src/card.rs @@ -75,6 +75,12 @@ impl PlayingCard { let suit = self.suit as i64; (rank * 4) + suit } + + pub fn iter_all_deck(deck: usize) -> impl Iterator { + let deck = deck as i64; + ((deck * 52)..((deck + 1) * 52)) + .filter_map(|x| PlayingCard::try_from(x).ok()) + } } impl Card {