Poker hand analyser: Difference between revisions

Content added Content deleted
mNo edit summary
mNo edit summary
Line 1,981: Line 1,981:


parseCard :: String -> Maybe Card
parseCard :: String -> Maybe Card
parseCard [] = Nothing
parseCard xs = (\a b -> Card a b) <$> parsedSuit <*> parsedRank
parseCard xs = (\a b -> Card a b) <$> parsedSuit <*> parsedRank
where parsedRank = case r of "a" -> Just Ace
where parsedRank = case r of "a" -> Just Ace
Line 2,003: Line 2,004:
_ -> Nothing
_ -> Nothing
where s = head $ reverse xs
where s = head $ reverse xs



nameHand :: String -> String
nameHand :: String -> String
Line 2,042: Line 2,042:
main :: IO ()
main :: IO ()
main = mapM_ putStrLn $ map nameHand testHands
main = mapM_ putStrLn $ map nameHand testHands

</lang>
</lang>
{{out}}
{{out}}