Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- handleMsg :: Handle -> VM -> String -> IO ()
- handleMsg clientHandle vm msg = do
- let splitMsg = words msg
- let action = splitMsg !! 0
- case lookup action of
- Just f -> f clientHandle vm splitMsg
- Nothing -> putStrLn $ "unknown action " ++ action
- messageHandlers :: [(String, Handle -> VM -> [String] -> IO ())]
- messageHandlers = [("update", handleUpdate),
- ("key_down", handleKeyDown),
- ("key_up", handleKeyUp),
- ("pointer", handlePointer)]
- {-----------------------------}
- Main.hs:76:8:
- Couldn't match expected type `[(String, b)] -> Maybe b'
- against inferred type `Maybe a'
- In the pattern: Just f
- In a case alternative: Just f -> f clientHandle vm splitMsg
- In the expression:
- case lookup action of {
- Just f -> f clientHandle vm splitMsg
- Nothing -> putStrLn $ "unknown action " ++ (splitMsg !! 0) }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement