Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save JohnSundell/5944877c8ec5c651c9791b364d171a1c to your computer and use it in GitHub Desktop.
Save JohnSundell/5944877c8ec5c651c9791b364d171a1c to your computer and use it in GitHub Desktop.
class CardGame {
typealias Randomizer = (UInt32) -> UInt32
private let deck: Deck
private let randomizer: Randomizer
init(deck: Deck, randomizer: @escaping Randomizer = arc4random_uniform) {
self.deck = deck
self.randomizer = randomizer
}
func drawRandomCard() -> Card {
let index = randomizer(deck.count)
let card = deck[index]
return card
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment