From a18c8141ee8f719d53c65b77f009ceafec2c82c9 Mon Sep 17 00:00:00 2001 From: Charles Kawczynski Date: Sun, 23 Jul 2023 21:53:18 -0700 Subject: [PATCH] Type hint, add debug statements --- src/TexasHoldem.jl | 1 + src/game.jl | 5 +++++ src/table.jl | 5 +++-- 3 files changed, 9 insertions(+), 2 deletions(-) diff --git a/src/TexasHoldem.jl b/src/TexasHoldem.jl index f06ddb0d..c0a01622 100644 --- a/src/TexasHoldem.jl +++ b/src/TexasHoldem.jl @@ -14,6 +14,7 @@ A no-limit Texas Holdem simulator. module TexasHoldem using PlayingCards +using PlayingCards: Card using PokerHandEvaluator using Printf diff --git a/src/game.jl b/src/game.jl index 06c89873..3c4453be 100644 --- a/src/game.jl +++ b/src/game.jl @@ -240,6 +240,11 @@ function _deal_and_play!(game::Game) @cdebug logger "initial_brs = $(initial_brs)" @cdebug logger "bank_roll.(players_at_table(table)) = $(bank_roll.(players_at_table(table)))" + @cdebug logger begin + if !(initial_∑brs ≈ sum(x->bank_roll(x), players_at_table(table))) + @cinfo logger "initial_∑brs=$initial_∑brs, brs=$(bank_roll.(players_at_table(table)))" + end + end @assert initial_∑brs ≈ sum(x->bank_roll(x), players_at_table(table)) # eventual assertion @assert sum(sp->amount(sp), table.transactions.side_pots) ≈ 0 diff --git a/src/table.jl b/src/table.jl index b0cddc1d..100d2933 100644 --- a/src/table.jl +++ b/src/table.jl @@ -459,7 +459,7 @@ function deal!(table::Table, blinds::Blinds) not_playing(player) && continue - player.cards = pop!(table.deck, Val(2)) + player.cards = pop!(table.deck, Val(2))::Tuple{Card, Card} if is_small_blind(table, player) && bank_roll(player) ≤ blinds.small contribute!(table, player, bank_roll(player), call_blinds) @@ -480,7 +480,8 @@ function deal!(table::Table, blinds::Blinds) end end - table.cards = get_table_cards!(table.deck) + table.cards = get_table_cards!(table.deck)::Tuple{Card,Card,Card,Card,Card} @cinfo logger "Table cards dealt (face-down)." + @cdebug logger "Post-blinds bank roll summary: $(bank_roll.(players))" end