+bool irc::tokenstream::GetTrailing(std::string& token)
+{
+ // If we are past the end of the string we can't do anything.
+ if (position >= message.length())
+ {
+ token.clear();
+ return false;
+ }
+
+ // If this is true then we have a <trailing> token!
+ if (message[position] == ':')
+ {
+ token.assign(message, position + 1, std::string::npos);
+ position = message.length();
+ return true;
+ }
+
+ // There is no <trailing> token so it must be a <middle> token.
+ return GetMiddle(token);
+}
+