1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
//! Poker game engine with state management, action handling, and settlement.
//!
//! This module implements the rules and mechanics of No-Limit Texas Hold'em,
//! tracking game state across betting rounds and resolving showdowns.
//!
//! ## State Representation
//!
//! - [`Game`] — The memoryless present: stacks, pot, board, and active players
//! - [`Partial`] — The remembered past: complete action history for a hand
//! - [`Path`] — Compressed action sequence for tree traversal
//!
//! ## Actions
//!
//! - [`Action`] — A player decision: fold, check, call, or raise
//! - [`Edge`] — A game tree transition with the acting player
//! - [`Odds`] — Pot odds abstraction for bet sizing (1/3, 1/2, 2/3, pot, all-in)
//!
//! ## Resolution
//!
//! - [`Showdown`] — Final hand comparison when multiple players remain
//! - [`Settlement`] — Pot distribution with side-pot handling
//! - [`PnL`] — Profit and loss accounting per player
//!
//! ## Supporting Types
//!
//! - [`Seat`] — Player position and stack at the table
//! - [`Turn`] — Whose action it is and what options they have
//! - [`Arrangement`] — Positional configuration for heads-up or multiway
//! - [`Abstraction`] — Abstract bucket assignment for strategic equivalence
//!
//! ## Information Levels
//!
//! - [`Partial`] — Partial information: hero's cards only (concrete)
//! - [`Perfect`] — Complete information: both players' cards (concrete)
pub use *;
pub use *;
pub use *;
pub use *;
pub use *;
pub use *;
pub use *;
pub use *;
pub use *;
pub use *;
pub use *;
pub use *;
pub use *;
pub use *;
pub use *;
pub use *;