AjScript.Interpreter.Lexer.NextOperator C# (CSharp) Метод

NextOperator() приватный Метод

private NextOperator ( char ch ) : Token
ch char
Результат Token
        private Token NextOperator(char ch)
        {
            char? nch2 = this.NextChar();

            if (nch2.HasValue)
            {
                char ch2 = nch2.Value;

                string op = ch.ToString() + ch2.ToString();

                if (otherOperators.Contains(op))
                {
                    char? nch3 = this.NextChar();

                    if (nch3.HasValue)
                    {
                        char ch3 = nch3.Value;

                        string op2 = op + ch3.ToString();

                        if (otherOperators.Contains(op2))
                            return new Token()
                            {
                                TokenType = TokenType.Operator,
                                Value = op2
                            };

                        this.PushChar(ch3);
                    }

                    return new Token()
                    {
                        TokenType = TokenType.Operator,
                        Value = op
                    };
                }
                else
                {
                    this.PushChar(ch2);
                }
            }

            return new Token()
            {
                TokenType = TokenType.Operator,
                Value = ch.ToString()
            };
        }