onejoker library
Classes
- Deck cards
- A "live" Deck of cards that is used for a game.
- DeckInterface cards
- Common behavior for Deck-like objects.
- Hand cards
- Hand of cards associated with (and created from) a Deck.
-
HandEvaluator<
V extends HandValue< pokerHandLevelInterface> > - Base class for poker hand evaluation.
- HandEvaluatorHigh poker
- Evaluation functions for traditional "high" poker hands.
- HandInterface cards
- Common behaviors for hand-like objects.
- HandIterator
- HandLevelInterface
-
HandValue<
L extends HandLevelInterface> poker - All the information resulting from the evaluation of a poker hand.
- HandValueHigh poker
- HandValue for traditional "high" poker hands.
- MasterDeck cards
- MasterDeck | wiki
- OjRandom utilities
- Simple implementation of xoshiro128++
- OrphanHand cards
- Hand of cards not associated with a Deck.
Enums
- Card cards
- Enum for cards and their basic methods. (see Card @ wiki)
- HandLevelAceToFive
- HandLevelActionRazz
- HandLevelBadugi
- HandLevelDeuceToSeven
- HandLevelHigh
- HandLevelStripped
- Rank cards
- Suit cards
- Enum for card suits and their most basic methods. (see Suit @ wiki)
- Troolean utilities
- Basic Klene / Priest three-valued logic
Constants
Functions
-
cardsFromText(
String text) → Iterable< Card> - Parse a string of card text into a sequence of cards. Whitespace is ignored between cards, but is not allowed between rank and suit. Cards may be enclosed in square brackets.
-
ojBinomial(
int n, int k) → int utilities - Binomial coefficient for 0 <= n <= 64, 0 <= k <= 64 using lookup table
-
ojhBitfield64co(
Iterable< hashesCard> cards) → int - 64-bit Bitfield hash
-
ojhFNV32(
Iterable< hashesCard> cards) → int - 32-bit FNV-1a
-
ojhFNV64(
Iterable< hashesCard> cards) → int - 64-bit FNV-1a
-
ojHighHandValueFunction(
HandLevelInterface level, List< Rank> ranks) → int - Default function for assigning a numeric value to the Hand such that lower number equals better hand.
-
ojhMp5English(
int f) → int hashes - Convert bitfiled into minimal perfect hash
-
ojhPositional32c(
Iterable< hashesCard> cards) → int - 32-bit Positional hash
-
ojhPositional32cr(
Iterable< hashesRank> ranks) → int - 32-bit Positional ranks only
-
ojhPositional32cs(
Iterable< hashesCard> cards) → int - 32-bit Positional suit-independent
-
ojhPositional64c(
Iterable< hashesCard> cards) → int - 64-bit Positional hash
-
ojhPositional64cr(
Iterable< hashesRank> ranks) → int - 64-bit Positional ranks only
-
ojhPositional64cs(
Iterable< hashesCard> cards) → int - 64-bit Positional hash
-
ojhPrime32cor(
Iterable< hashesRank> ranks) → int - 32-bit Prime hash
-
ojhPrime64co(
Iterable< hashesCard> cards) → int - 64-bit Prime hash
-
ojhPrime64cor(
Iterable< hashesRank> ranks) → int - 64-bit Prime ranks hash
-
ojLowHandValueFunction(
HandLevelInterface level, List< Rank> ranks) → int -
ojNextCombination(
List< utilitiesint> a, int n) → bool - Generate all k-combinations of n cards
-
ojShuffle<
T> (List< utilitiesT> items) → void - Standard Fisher-Yates shuffle using our own PRNG.
-
ojSort<
T extends Comparable> (List< utilitiesT> a) → void - Heapsort somewhat optimized for small sets, like a hand of cards.
-
pokerEvaluator(
String name) → HandEvaluator< pokerHandValue< HandLevelInterface> > - Return a HandEvaluator by name.