summaryrefslogtreecommitdiff
path: root/src/session.rs
AgeCommit message (Collapse)Author
2 daysMove crate::play to crate::app::socketJomar Milan
3 daysPrivatize access to internal session mapJomar Milan
This way, RwLockReadGuard isn't being juggled anywhere, and the bounds of the session MutexGuard is limited to the FnOnce explicitly passed to with_session (less room for accidents, nice!) This approach was inspired by the source code of RegionMap of Bamboo (https://gitlab.com/macmv/bamboo ref 8e32b54a5e7a69986339fea465d4afcc20425dd7), which uses a similar RwLock<HashMap<_, Mutex<_>>>. I like this approach because it allows me to provide access to the Session without having to clone it and allows the MutexGuard and RwLockReadGuard to be held as the user needs without allowing the user to access the RwLockReadGuard and poke around the rest of the entries in the HashMap.
5 daysUse separate function to handle play messagesJomar Milan
Also remove Arc from the HashMap
5 daysUse enum for storing player colorJomar Milan
2026-06-10Add function to update session handsJomar Milan
2026-06-10Add syncing of color list to browserJomar Milan
2026-06-10Add syncing of player hand updates to browsersJomar Milan
2026-06-09Maintain weak references to sessions for play socketsJomar Milan
Changes in this commit have somewhat mollified my code-smell-o-meter.
2026-06-09Add player hand display in browserJomar Milan
2026-06-08Remove passcodes and session listingJomar Milan
Instead, the session ID is treated as a secret
2026-06-07Respond with hand data after handshakeJomar Milan
2026-05-31Add websocket routeJomar Milan
2026-05-30Add route to accept player hand updatesJomar Milan
2026-05-30Add unimplemented color selection boxJomar Milan
2026-05-30Store sessions in a hash mapJomar Milan
2026-05-29Start with basic session creationJomar Milan