use std::string;
use std::str::FromStr;
use super::messages::HWProtocolMessage::*;
use super::messages::*;
grammar;
pub ProtocolMessage: HWProtocolMessage = {
<SpecificMessage> "\n\n",
};
SpecificMessage: HWProtocolMessage = {
"NICK" "\n" <ProtocolString> => Nick(<>),
"PONG" => Pong,
"PING" => Ping,
"PROTO" "\n" <Num32> => Proto(<>),
};
Num32: u32 =
<Digit*> => number(<>);
ProtocolString: String =
<ProtocolChar*> => <>.join("");
ProtocolChar: &'input str =
r"[^\n]" => <>;
Digit: u8 = {
"0" => 0,
"1" => 1,
"2" => 2,
"3" => 3,
"4" => 4,
"5" => 5,
"6" => 6,
"7" => 7,
"8" => 8,
"9" => 9,
};