parseNumeric

Parser for RPL_WHOISSERVER

Format is 312 <client> <nick> <server mask> :<server description>

Examples

import std.range : only, takeNone;
import virc.common : User;
{
	immutable reply = parseNumeric!(Numeric.RPL_WHOISSERVER)(only("someone", "whoisuser", "example.net", "Mysterious example server"));
	assert(reply.get.user == User("whoisuser"));
	assert(reply.get.server == "example.net");
	assert(reply.get.serverDescription == "Mysterious example server");
}
{
	immutable reply = parseNumeric!(Numeric.RPL_WHOISSERVER)(only("someone", "whoisuser", "example.net"));
	assert(reply.isNull);
}
{
	immutable reply = parseNumeric!(Numeric.RPL_WHOISSERVER)(only("someone", "whoisuser"));
	assert(reply.isNull);
}
{
	immutable reply = parseNumeric!(Numeric.RPL_WHOISSERVER)(only("someone"));
	assert(reply.isNull);
}
{
	immutable reply = parseNumeric!(Numeric.RPL_WHOISSERVER)(takeNone(only("")));
	assert(reply.isNull);
}

Meta