aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorTill Hoeppner2015-06-28 21:08:49 +0200
committerTill Hoeppner2015-06-28 21:08:59 +0200
commit41e96ec6d9e78d6523a17e170038167a0fbd3951 (patch)
treede43e9439a46f8d4c788264c3f5ef656eba42cb7 /src
parent9b82e7bb0c944199d03b06846d2cd7075cf19158 (diff)
downloadirsc-41e96ec6d9e78d6523a17e170038167a0fbd3951.tar.gz
irsc-41e96ec6d9e78d6523a17e170038167a0fbd3951.tar.xz
irsc-41e96ec6d9e78d6523a17e170038167a0fbd3951.zip
Add env_logger doc link
Diffstat (limited to 'src')
-rw-r--r--src/command.rs12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/command.rs b/src/command.rs
index 9ed95d7..1043a43 100644
--- a/src/command.rs
+++ b/src/command.rs
@@ -8,6 +8,18 @@ use message::{ Message, MsgType };
pub type CS<'a> = Cow<'a, str>;
+// If you hoped it couldn't get any uglier... I'm sorry, it does.
+// Why a giant match? API.
+//
+// I tried structuring it as a bunch of structs that impl a `Command` trait,
+// but the user would have to use Any and lots of cats. Also, extensibility isn't
+// really a goal; the IRC protocol doesn't seem to evolve very fast.
+//
+// Granted, I *could* have used a phf-map to map to functions to parse this, which
+// - while more readable - shouldn't have resulted in performance gains.
+//
+// Please don't cry.
+
#[derive(Debug, Hash, Clone, PartialEq, Eq)]
pub enum Command<'a> {
/// ```text