repositories
/
cloogle-irc.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
2b051d8
)
fix ircbot code
author
Mart Lubbers
<mart@martlubbers.net>
Tue, 18 Jul 2017 13:13:34 +0000
(15:13 +0200)
committer
Mart Lubbers
<mart@martlubbers.net>
Tue, 18 Jul 2017 13:13:34 +0000
(15:13 +0200)
IRCBot.icl
patch
|
blob
|
history
diff --git
a/IRCBot.icl
b/IRCBot.icl
index
2be18ad
..
6820e70
100644
(file)
--- a/
IRCBot.icl
+++ b/
IRCBot.icl
@@
-14,29
+14,29
@@
import StdBool
TIMEOUT :== Just 1000
TIMEOUT :== Just 1000
-bot :: (String, Int) [IRCMessage] [IRCMessage] .a (IRCMessage .a *World ->
.
(Maybe [IRCMessage], .a, *World)) *World -> *(Maybe String, .a, *World)
+bot :: (String, Int) [IRCMessage] [IRCMessage] .a (IRCMessage .a *World ->
*
(Maybe [IRCMessage], .a, *World)) *World -> *(Maybe String, .a, *World)
bot (host, port) start end state bot w
//Lookup hostname
# (ip, w) = lookupIPAddress host w
| isNothing ip
bot (host, port) start end state bot w
//Lookup hostname
# (ip, w) = lookupIPAddress host w
| isNothing ip
- = (
Error
$ "DNS lookup for " +++ host +++ " failed", state, w)
+ = (
Just
$ "DNS lookup for " +++ host +++ " failed", state, w)
//Connect
# (rpt,chan,w) = connectTCP_MT TIMEOUT (fromJust ip, port) w
| rpt == TR_Expired
//Connect
# (rpt,chan,w) = connectTCP_MT TIMEOUT (fromJust ip, port) w
| rpt == TR_Expired
- = (
Error
$ "Connection to " +++ host +++ " timed out", state, w)
+ = (
Just
$ "Connection to " +++ host +++ " timed out", state, w)
| rpt == TR_NoSuccess
| rpt == TR_NoSuccess
- = (
Error
$ "Could not connect to " +++ host, state, w)
+ = (
Just
$ "Could not connect to " +++ host, state, w)
// Send startup commands
# (merr, chan, w) = send (map toString start) (fromJust chan) w
// Send startup commands
# (merr, chan, w) = send (map toString start) (fromJust chan) w
-| isError merr = (
Error
$ fromError merr, state, w)
+| isError merr = (
Just
$ fromError merr, state, w)
//Start processing function
# (mer, chan, state, w) = process chan "" state bot w
//Start processing function
# (mer, chan, state, w) = process chan "" state bot w
-| isError mer = (
Error
$ fromError mer, state, w)
+| isError mer = (
Just
$ fromError mer, state, w)
// Send shutdown commands
# (merr, {rChannel,sChannel}, w) = send (map toString end) chan w
// Send shutdown commands
# (merr, {rChannel,sChannel}, w) = send (map toString end) chan w
-| isError merr = (
Error
$ fromError merr, state, w)
+| isError merr = (
Just
$ fromError merr, state, w)
//Close channels
//Close channels
-= (
Ok state
, state, closeChannel sChannel (closeRChannel rChannel w))
+= (
Nothing
, state, closeChannel sChannel (closeRChannel rChannel w))
process :: TCP_DuplexChannel String .a (IRCMessage .a *World -> *(Maybe [IRCMessage], .a, *World)) *World -> *(MaybeErrorString (), TCP_DuplexChannel, .a, *World)
process chan acc state bot w
process :: TCP_DuplexChannel String .a (IRCMessage .a *World -> *(Maybe [IRCMessage], .a, *World)) *World -> *(MaybeErrorString (), TCP_DuplexChannel, .a, *World)
process chan acc state bot w