Yaircc.UI.IRCUser.Parse C# (CSharp) Method

Parse() public static method

Creates an IRC user from a names command fragment.
public static Parse ( string input ) : IRCUser
input string The names command fragment.
return IRCUser
        public static IRCUser Parse(string input)
        {
            IRCUserMode mode = IRCUserMode.Normal;
            string nickname = input;

            if (input.StartsWith("+", StringComparison.OrdinalIgnoreCase))
            {
                mode = IRCUserMode.Voice;
            }
            else if (input.StartsWith("%", StringComparison.OrdinalIgnoreCase))
            {
                mode = IRCUserMode.HalfOperator;
            }
            else if (input.StartsWith("@", StringComparison.OrdinalIgnoreCase))
            {
                mode = IRCUserMode.Operator;
            }
            else if (input.StartsWith("&", StringComparison.OrdinalIgnoreCase))
            {
                mode = IRCUserMode.Admin;
            }
            else if (input.StartsWith("~", StringComparison.OrdinalIgnoreCase))
            {
                mode = IRCUserMode.Founder;
            }

            if (mode != IRCUserMode.Normal)
            {
                nickname = input.Substring(1);
            }

            return new IRCUser(nickname, mode);
        }

Usage Example

Exemplo n.º 1
0
 /// <summary>
 /// Populate the user list from a names message.
 /// </summary>
 /// <param name="message">The message to process.</param>
 private void PopulateChannelNamesFromMessage(Message message)
 {
     string[] names = message.TrailingParameter.Split(new char[] { ' ' });
     for (int i = 0; i < names.GetLength(0); i++)
     {
         if (!string.IsNullOrEmpty(names[i]))
         {
             this.users.Add(IRCUser.Parse(names[i]));
         }
     }
 }