summaryrefslogtreecommitdiff
path: root/KikiD/Message.hs
diff options
context:
space:
mode:
Diffstat (limited to 'KikiD/Message.hs')
-rw-r--r--KikiD/Message.hs18
1 files changed, 18 insertions, 0 deletions
diff --git a/KikiD/Message.hs b/KikiD/Message.hs
new file mode 100644
index 0000000..c4903cc
--- /dev/null
+++ b/KikiD/Message.hs
@@ -0,0 +1,18 @@
1module KikiD.Message where
2
3import Data.Serialize
4import qualified KikiD.GetLine
5import qualified Data.ByteString.Char8 as B
6import Data.Monoid
7import Text.Read
8
9data KikiDMessage = TODO deriving (Show,Read)
10
11instance Serialize KikiDMessage where
12 put = putByteString . B.pack . show
13 get = do
14 x <- KikiD.GetLine.getLine
15 case (readEither (B.unpack x) :: Either String KikiDMessage) of
16 Right m -> return m
17 Left er -> fail ("PARSE ERROR: " <> er)
18