From 7a86235906470749a7a6f88ff57c263cdeadde9a Mon Sep 17 00:00:00 2001 From: Julien Dessaux Date: Tue, 11 Aug 2009 00:38:36 +0200 Subject: Rethought the way I handled IRC data. --- Hsbot/Main.hs | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'Hsbot/Main.hs') diff --git a/Hsbot/Main.hs b/Hsbot/Main.hs index 3ced3a5..9edd807 100644 --- a/Hsbot/Main.hs +++ b/Hsbot/Main.hs @@ -28,13 +28,13 @@ imain' modul' reboot bot = do putStrLn "Joining channels..." mapM_ initServer servers' putStrLn "Spawning threads..." - chan <- newChan :: IO (Chan IrcOutput) + chan <- newChan :: IO (Chan IrcLine) mapM_ (forkIO . listener chan) servers' state <- monitor chan bot reboot modul' bot -- | Bot main loop, monitors the threads states and handle reboot -monitor :: (Chan IrcOutput) -> Bot -> IO Bot +monitor :: (Chan IrcLine) -> Bot -> IO Bot monitor chan bot = do loop bot where loop bot' = do @@ -46,7 +46,7 @@ monitor chan bot = do Str str -> putStrLn ("received : " ++ str) >> loop bot' -- | Thread entry point for socket listeners -listener :: (Chan IrcOutput) -> (IrcServer, Handle) -> IO () +listener :: (Chan IrcLine) -> (IrcServer, Handle) -> IO () listener chan (server, handle) = forever $ do str <- hGetLine handle writeChan chan (Str str) -- cgit v1.2.3