UnityScript.Parser.UnityScriptParser.type_reference C# (CSharp) Method

type_reference() public method

public type_reference ( ) : TypeReference
return TypeReference
        public TypeReference type_reference()
        {
            TypeReference reference = null;
            IToken token = null;
            int num = 1;
            try
            {
                switch (this.LA(1))
                {
                    case 0x3b:
                        reference = this.simple_type_reference();
                        break;

                    case 0x13:
                        reference = this.anonymous_function_type();
                        break;

                    default:
                        throw new NoViableAltException(this.LT(1), this.getFilename());
                }
                if ((this.LA(1) == 0x44) && ((this.LA(2) == 0x43) || (this.LA(2) == 0x45)))
                {
                    token = this.LT(1);
                    this.match(0x44);
                    while (this.LA(1) == 0x43)
                    {
                        this.match(0x43);
                        if (base.inputState.guessing == 0)
                        {
                            num++;
                        }
                    }
                    this.match(0x45);
                    if (base.inputState.guessing == 0)
                    {
                        reference = new ArrayTypeReference(reference.get_LexicalInfo(), reference, new IntegerLiteralExpression(ToLexicalInfo(token), (long) num));
                    }
                    return reference;
                }
                if (!tokenSet_35_.member(this.LA(1)) || !tokenSet_25_.member(this.LA(2)))
                {
                    throw new NoViableAltException(this.LT(1), this.getFilename());
                }
                return reference;
            }
            catch (RecognitionException exception)
            {
                if (base.inputState.guessing != 0)
                {
                    throw;
                }
                this.reportError(exception);
                this.recover(exception, tokenSet_35_);
                return reference;
            }
            return reference;
        }
UnityScriptParser