Module irc::client::prelude [−][src]
A client-side IRC prelude, re-exporting the complete high-level IRC client API.
Structure
A connection to an IRC server is created via an IrcClient
which is configured using a
Config
struct that defines data such as which server to connect to, on what port, and
using what nickname. The Client
trait provides an API for actually interacting with the
server once a connection has been established. This API intentionally offers only a single
method to send Commands
because it makes it easy to see the whole set of possible
interactions with a server. The ClientExt
trait addresses this deficiency by defining a
number of methods that provide a more clear and succinct interface for sending various
common IRC commands to the server. An IrcReactor
can be used to create and manage multiple
IrcClients
with more fine-grained control over error management.
The various proto
types capture details of the IRC protocol that are used throughout the
client API. Message
, Command
, and Response
are used to send and receive messages along
the connection, and are naturally at the heart of communication in the IRC protocol.
Capability
and NegotiationVersion
are used to determine (with the server) what IRCv3
functionality to enable for the connection. Certain parts of the API offer suggestions for
extensions that will improve the user experience, and give examples of how to enable them
using Capability
. Mode
, ChannelMode
, and UserMode
are used in a high-level API for
dealing with IRC channel and user modes. They appear in methods for sending mode commands,
as well as in the parsed form of received mode commands.
Re-exports
pub use client::data::Config; |
pub use client::reactor::IrcReactor; |
pub use client::EachIncomingExt; |
pub use client::IrcClient; |
pub use client::Client; |
pub use client::ext::ClientExt; |
pub use proto::Capability; |
pub use proto::ChannelExt; |
pub use proto::Command; |
pub use proto::Message; |
pub use proto::NegotiationVersion; |
pub use proto::Response; |
pub use proto::ChannelMode; |
pub use proto::Mode; |
pub use proto::UserMode; |
Traits
Future |
Trait for types which are a placeholder of a value that may become available at some later point in time. |
Stream |
A stream of values, not all of which may have been produced yet. |