UnityScript.Parser.UnityScriptParser.new_expression C# (CSharp) Méthode

new_expression() public méthode

public new_expression ( ) : Expression
Résultat Expression
        public Expression new_expression()
        {
            Expression expression = null;
            try
            {
                ExpressionCollection expressions;
                bool flag = false;
                if ((this.LA(1) == 0x1b) && (this.LA(2) == 0x3b))
                {
                    int num = this.mark();
                    flag = true;
                    base.inputState.guessing++;
                    try
                    {
                        this.new_array_expression();
                    }
                    catch (RecognitionException)
                    {
                        flag = false;
                    }
                    this.rewind(num);
                    base.inputState.guessing--;
                }
                if (flag)
                {
                    return this.new_array_expression();
                }
                if ((this.LA(1) != 0x1b) || ((this.LA(2) != 12) && (this.LA(2) != 0x3b)))
                {
                    throw new NoViableAltException(this.LT(1), this.getFilename());
                }
                this.match(0x1b);
                Expression expression2 = this.reference_expression();
                if (base.inputState.guessing == 0)
                {
                    MethodInvocationExpression expression3;
                    MethodInvocationExpression expression4;
                    MethodInvocationExpression expression1 = expression3 = new MethodInvocationExpression(expression2.get_LexicalInfo());
                    expression3.set_Target(expression2);
                    expression = expression4 = expression3;
                    expressions = expression4.get_Arguments();
                }
                this.match(0x3f);
                this.expression_list(expressions);
                this.match(0x40);
                return expression;
            }
            catch (RecognitionException exception2)
            {
                if (base.inputState.guessing != 0)
                {
                    throw;
                }
                this.reportError(exception2);
                this.recover(exception2, tokenSet_20_);
                return expression;
            }
            return expression;
        }
UnityScriptParser