Card.parse constructor
Card.parse(
- String value
Creates a Card by a 2-character-length String.
Card.parse("As"); // => Card(Rank.ace, Suit.spade)
Card.parse("2h"); // => Card(Rank.deuce, Suit.heart)
Card.parse("3d"); // => Card(Rank.trey, Suit.diamond)
Card.parse("Kc"); // => Card(Rank.king, Suit.club)
Implementation
factory Card.parse(String value) {
if (!RegExp(r'^[A23456789TJQK][shdc]$').hasMatch(value)) {
throw CardParseFailure(value);
}
return _RankSuitBasedCard(Rank.parse(value[0]), Suit.parse(value[1]));
}