// Copyright 2014 Vic Demuzere // // Use of this source code is governed by the MIT license. // Package irc allows your application to speak the IRC protocol. // // The Message and Prefix structs provide translation to and from raw IRC messages: // // // Parse the IRC-encoded data and store the result in a new struct: // message := irc.ParseMessage(raw) // // // Translate back to a raw IRC message string: // raw = message.String() // // Decoder and Encoder can be used to decode and encode messages in a stream: // // // Create a decoder that reads from given io.Reader // dec := irc.NewDecoder(reader) // // // Decode the next IRC message // message, err := dec.Decode() // // // Create an encoder that writes to given io.Writer // enc := irc.NewEncoder(writer) // // // Send a message to the writer. // enc.Encode(message) // // The Conn type combines an Encoder and Decoder for a duplex connection. // // c, err := irc.Dial("irc.server.net:6667") // // // Methods from both Encoder and Decoder are available // message, err := c.Decode() // package irc