The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

VANAMBURG::SuitSingletonCHaSeD

Provides access to instances of VANAMBURG::OrderedSuit to efficiently represent the suits in a CHaSeD style deck stack.

spade

An instance of VANAMBURG::OrderedSuit to efficiently represent the Spades suit in a CHaSeD stack.

heart

An instance of VANAMBURG::OrderedSuit to efficiently represent the Hearts suit in a CHaSeD stack.

club

An instance of VANAMBURG::OrderedSuit to efficiently represent the Clubs suit in a CHaSeD stack.

diamond

An instance of VANAMBURG::OrderedSuit to efficiently represent the Diamonds suit in a CHaSeD stack.

suit_cycle

An array reference holding each of the suit instances in an ordered in CHaSeD order.

opposite_suit

Returns the mate of the card passed as input.

my $heart = $self->opposite_suit($self->diamond);

next_suit

Returns the suit following the input suit for a CHaSeD packet.

my $diamond = $self->next_suit($self->spade);
my $club    = $self->next_suit($self->diamond);

previous_suit

Returns the suit preceding the input suit for a CHaSeD packet.

my $diamond   = $self->previous_suit($self->club);
my $heart     = $self->previous_suit($self->spade);