From c61626f2d070ff726c8ebd7103ab3cab42da5041 Mon Sep 17 00:00:00 2001 From: Aryadev Chavali Date: Fri, 3 Apr 2026 02:16:24 +0100 Subject: [PATCH] card: PlayingCard::iter_all_deck Given a deck number, create an iterator over all Playing Cards in that deck. --- src/card.rs | 6 ++++++ 1 file changed, 6 insertions(+) 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 {