summaryrefslogtreecommitdiff
path: root/main.go
diff options
context:
space:
mode:
authorDimitri Sokolyuk <demon@dim13.org>2015-07-21 17:59:45 +0200
committerDimitri Sokolyuk <demon@dim13.org>2015-07-21 17:59:45 +0200
commit22e78b68a30c280b558de12db7b44c556d8fe40b (patch)
tree844af0ddda96d77e565293c3a1aabfbc3818c6ab /main.go
parent8bd2d3eebb19cd2641d5a12f6d26f4c13f9d1c0b (diff)
Go parallel
Diffstat (limited to 'main.go')
-rw-r--r--main.go23
1 files changed, 11 insertions, 12 deletions
diff --git a/main.go b/main.go
index eba02eb..ed2ec95 100644
--- a/main.go
+++ b/main.go
@@ -13,17 +13,6 @@ var (
name = flag.String("name", "dim13", "Bots Name")
)
-func privmsg(conn *irc.Conn, line *irc.Line) {
- if line.Public() && line.Nick != conn.Me().Nick {
- Push(line)
- Count(line.Nick)
- }
- Dispatch(conn, line)
- ExtractLinks(conn, line)
- ExtractRFC(conn, line)
- DetectFlood(conn, line)
-}
-
func init() {
flag.Parse()
}
@@ -40,7 +29,17 @@ func main() {
c.HandleFunc(irc.CONNECTED,
func(conn *irc.Conn, line *irc.Line) { conn.Join(*room) })
- c.HandleFunc(irc.PRIVMSG, privmsg)
+ c.HandleFunc(irc.PRIVMSG,
+ func(conn *irc.Conn, line *irc.Line) {
+ if line.Public() && line.Nick != conn.Me().Nick {
+ Push(line)
+ Count(line.Nick)
+ }
+ go Dispatch(conn, line)
+ go ExtractLinks(conn, line)
+ go ExtractRFC(conn, line)
+ go DetectFlood(conn, line)
+ })
if err := c.ConnectTo(*server); err != nil {
log.Fatal(err)