Sha256: 9effcc2a4ca88791811e472847a3bf65860e9548d38b19d0fb533cd1ced2728f
Contents?: true
Size: 597 Bytes
Versions: 4
Compression:
Stored size: 597 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, num_cards = 1) num_cards.times.each do |card_idx| Array(hands).each { |h| h << draw } end hands end end end
Version data entries
4 entries across 4 versions & 1 rubygems
Version | Path |
---|---|
fiftytwo-0.0.5 | lib/fiftytwo/deck.rb |
fiftytwo-0.0.4 | lib/fiftytwo/deck.rb |
fiftytwo-0.0.3 | lib/fiftytwo/deck.rb |
fiftytwo-0.0.2 | lib/fiftytwo/deck.rb |