Sha256: d6854bee0d709ba58c25c100264f3e8687577d1061a1b27a1a8a081e2b37a7fd
Contents?: true
Size: 589 Bytes
Versions: 1
Compression:
Stored size: 589 Bytes
Contents
# frozen_string_literal: true require_relative "./has_cards" module FiftyTwo class Deck include HasCards class << self def standard build(FiftyTwo::Rank::ALL.product(FiftyTwo::Suit::ALL)) end private def build(items) new.tap do |deck| items.each do |rank, suit| deck << FiftyTwo::Card.new(deck, rank, suit).freeze end end end end def deal(hands, hand_size: 1) hand_size.times.each do |card_idx| hands.each { |h| h << draw } end hands end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
fiftytwo-0.0.1 | lib/fiftytwo/deck.rb |