Example #1
0
 public void AddName(DepsName name)
 {
     Names.Add(name);
 }
Example #2
0
    // $ANTLR start "find_dep_item"
    // ..\\DbShell.Driver.SqlServer\\antlr\\SqlServer.g:15:1: find_dep_item[DepsCollector dc] : ( keyword | operator_no_dot | T_NSTRING | T_STRING | T_INTEGER | T_FLOAT | T_BINARYNUM | T_BLOB | name1= id ( DOT ( DOT )? (name2= id | ASTERISK ) )* );
    public SqlServerParser.find_dep_item_return find_dep_item(DepsCollector dc) // throws RecognitionException [1]
    {   
        SqlServerParser.find_dep_item_return retval = new SqlServerParser.find_dep_item_return();
        retval.Start = input.LT(1);

        object root_0 = null;

        IToken T_NSTRING4 = null;
        IToken T_STRING5 = null;
        IToken T_INTEGER6 = null;
        IToken T_FLOAT7 = null;
        IToken T_BINARYNUM8 = null;
        IToken T_BLOB9 = null;
        IToken DOT10 = null;
        IToken DOT11 = null;
        IToken ASTERISK12 = null;
        SqlServerParser.id_return name1 = default(SqlServerParser.id_return);

        SqlServerParser.id_return name2 = default(SqlServerParser.id_return);

        SqlServerParser.keyword_return keyword2 = default(SqlServerParser.keyword_return);

        SqlServerParser.operator_no_dot_return operator_no_dot3 = default(SqlServerParser.operator_no_dot_return);


        object T_NSTRING4_tree=null;
        object T_STRING5_tree=null;
        object T_INTEGER6_tree=null;
        object T_FLOAT7_tree=null;
        object T_BINARYNUM8_tree=null;
        object T_BLOB9_tree=null;
        object DOT10_tree=null;
        object DOT11_tree=null;
        object ASTERISK12_tree=null;

        try 
    	{
            // ..\\DbShell.Driver.SqlServer\\antlr\\SqlServer.g:16:5: ( keyword | operator_no_dot | T_NSTRING | T_STRING | T_INTEGER | T_FLOAT | T_BINARYNUM | T_BLOB | name1= id ( DOT ( DOT )? (name2= id | ASTERISK ) )* )
            int alt5 = 9;
            switch ( input.LA(1) ) 
            {
            case ADD:
            case ALTER:
            case AND:
            case AS:
            case ASC:
            case BEGIN:
            case BETWEEN:
            case BY:
            case CASCADE:
            case CASE:
            case CAST:
            case CHECK:
            case COLLATE:
            case COLUMN:
            case COMMIT:
            case CONFLICT:
            case CONSTRAINT:
            case CREATE:
            case CROSS:
            case CURRENT_TIME:
            case CURRENT_DATE:
            case CURRENT_TIMESTAMP:
            case UTC_TIMESTAMP:
            case DATABASE:
            case DEFAULT:
            case DELETE:
            case DESC:
            case DISTINCT:
            case DROP:
            case ELSE:
            case END:
            case ESCAPE:
            case EXCEPT:
            case EXCLUSIVE:
            case EXISTS:
            case EXPLAIN:
            case FOR:
            case FOREIGN:
            case FROM:
            case GROUP:
            case HAVING:
            case IF:
            case IN:
            case INDEX:
            case INNER:
            case INSERT:
            case INTERSECT:
            case INTO:
            case IS:
            case JOIN:
            case KEY:
            case LEFT:
            case LIKE:
            case NOT:
            case NULL:
            case OF:
            case ON:
            case OR:
            case ORDER:
            case OUTER:
            case PRIMARY:
            case REFERENCES:
            case ROLLBACK:
            case SELECT:
            case SET:
            case TABLE:
            case TEMPORARY:
            case TEMP:
            case THEN:
            case TO:
            case TRANSACTION:
            case TRIGGER:
            case UNION:
            case UNIQUE:
            case UPDATE:
            case VALUES:
            case VIEW:
            case WHEN:
            case WHERE:
            case WITH:
            case PARSER:
            case XOR:
            	{
                alt5 = 1;
                }
                break;
            case ASTERISK:
            case EQUALS:
            case SAFEEQUALS:
            case EQUALS2:
            case NOT_EQUALS:
            case NOT_EQUALS2:
            case LESS:
            case LESS_OR_EQ:
            case GREATER:
            case GREATER_OR_EQ:
            case SHIFT_LEFT:
            case SHIFT_RIGHT:
            case AMPERSAND:
            case DOUBLE_AMPERSAND:
            case PIPE:
            case DOUBLE_PIPE:
            case PLUS:
            case MINUS:
            case TILDA:
            case SLASH:
            case PERCENT:
            case SEMI:
            case COMMA:
            case LPAREN:
            case RPAREN:
            case QUESTION:
            case EXCLAMATION:
            case COLON:
            case AT:
            case DOLLAR:
            case ARROW_UP:
            	{
                alt5 = 2;
                }
                break;
            case T_NSTRING:
            	{
                alt5 = 3;
                }
                break;
            case T_STRING:
            	{
                alt5 = 4;
                }
                break;
            case T_INTEGER:
            	{
                alt5 = 5;
                }
                break;
            case T_FLOAT:
            	{
                alt5 = 6;
                }
                break;
            case T_BINARYNUM:
            	{
                alt5 = 7;
                }
                break;
            case T_BLOB:
            	{
                alt5 = 8;
                }
                break;
            case T_IDENT:
            case T_QUOTED_IDENT:
            	{
                alt5 = 9;
                }
                break;
            	default:
            	    NoViableAltException nvae_d5s0 =
            	        new NoViableAltException("", 5, 0, input);

            	    throw nvae_d5s0;
            }

            switch (alt5) 
            {
                case 1 :
                    // ..\\DbShell.Driver.SqlServer\\antlr\\SqlServer.g:16:7: keyword
                    {
                    	root_0 = (object)adaptor.GetNilNode();

                    	PushFollow(FOLLOW_keyword_in_find_dep_item52);
                    	keyword2 = keyword();
                    	state.followingStackPointer--;

                    	adaptor.AddChild(root_0, keyword2.Tree);

                    }
                    break;
                case 2 :
                    // ..\\DbShell.Driver.SqlServer\\antlr\\SqlServer.g:16:17: operator_no_dot
                    {
                    	root_0 = (object)adaptor.GetNilNode();

                    	PushFollow(FOLLOW_operator_no_dot_in_find_dep_item56);
                    	operator_no_dot3 = operator_no_dot();
                    	state.followingStackPointer--;

                    	adaptor.AddChild(root_0, operator_no_dot3.Tree);

                    }
                    break;
                case 3 :
                    // ..\\DbShell.Driver.SqlServer\\antlr\\SqlServer.g:16:35: T_NSTRING
                    {
                    	root_0 = (object)adaptor.GetNilNode();

                    	T_NSTRING4=(IToken)Match(input,T_NSTRING,FOLLOW_T_NSTRING_in_find_dep_item60); 
                    		T_NSTRING4_tree = (object)adaptor.Create(T_NSTRING4);
                    		adaptor.AddChild(root_0, T_NSTRING4_tree);


                    }
                    break;
                case 4 :
                    // ..\\DbShell.Driver.SqlServer\\antlr\\SqlServer.g:16:47: T_STRING
                    {
                    	root_0 = (object)adaptor.GetNilNode();

                    	T_STRING5=(IToken)Match(input,T_STRING,FOLLOW_T_STRING_in_find_dep_item64); 
                    		T_STRING5_tree = (object)adaptor.Create(T_STRING5);
                    		adaptor.AddChild(root_0, T_STRING5_tree);


                    }
                    break;
                case 5 :
                    // ..\\DbShell.Driver.SqlServer\\antlr\\SqlServer.g:16:58: T_INTEGER
                    {
                    	root_0 = (object)adaptor.GetNilNode();

                    	T_INTEGER6=(IToken)Match(input,T_INTEGER,FOLLOW_T_INTEGER_in_find_dep_item68); 
                    		T_INTEGER6_tree = (object)adaptor.Create(T_INTEGER6);
                    		adaptor.AddChild(root_0, T_INTEGER6_tree);


                    }
                    break;
                case 6 :
                    // ..\\DbShell.Driver.SqlServer\\antlr\\SqlServer.g:16:70: T_FLOAT
                    {
                    	root_0 = (object)adaptor.GetNilNode();

                    	T_FLOAT7=(IToken)Match(input,T_FLOAT,FOLLOW_T_FLOAT_in_find_dep_item72); 
                    		T_FLOAT7_tree = (object)adaptor.Create(T_FLOAT7);
                    		adaptor.AddChild(root_0, T_FLOAT7_tree);


                    }
                    break;
                case 7 :
                    // ..\\DbShell.Driver.SqlServer\\antlr\\SqlServer.g:16:80: T_BINARYNUM
                    {
                    	root_0 = (object)adaptor.GetNilNode();

                    	T_BINARYNUM8=(IToken)Match(input,T_BINARYNUM,FOLLOW_T_BINARYNUM_in_find_dep_item76); 
                    		T_BINARYNUM8_tree = (object)adaptor.Create(T_BINARYNUM8);
                    		adaptor.AddChild(root_0, T_BINARYNUM8_tree);


                    }
                    break;
                case 8 :
                    // ..\\DbShell.Driver.SqlServer\\antlr\\SqlServer.g:16:94: T_BLOB
                    {
                    	root_0 = (object)adaptor.GetNilNode();

                    	T_BLOB9=(IToken)Match(input,T_BLOB,FOLLOW_T_BLOB_in_find_dep_item80); 
                    		T_BLOB9_tree = (object)adaptor.Create(T_BLOB9);
                    		adaptor.AddChild(root_0, T_BLOB9_tree);


                    }
                    break;
                case 9 :
                    // ..\\DbShell.Driver.SqlServer\\antlr\\SqlServer.g:17:9: name1= id ( DOT ( DOT )? (name2= id | ASTERISK ) )*
                    {
                    	root_0 = (object)adaptor.GetNilNode();

                    	PushFollow(FOLLOW_id_in_find_dep_item94);
                    	name1 = id();
                    	state.followingStackPointer--;

                    	adaptor.AddChild(root_0, name1.Tree);
                    	 var name=new DepsName();name.AddComponent(UnquoteName(((name1 != null) ? input.ToString((IToken)(name1.Start),(IToken)(name1.Stop)) : null))); 
                    	// ..\\DbShell.Driver.SqlServer\\antlr\\SqlServer.g:18:9: ( DOT ( DOT )? (name2= id | ASTERISK ) )*
                    	do 
                    	{
                    	    int alt4 = 2;
                    	    int LA4_0 = input.LA(1);

                    	    if ( (LA4_0 == DOT) )
                    	    {
                    	        alt4 = 1;
                    	    }


                    	    switch (alt4) 
                    		{
                    			case 1 :
                    			    // ..\\DbShell.Driver.SqlServer\\antlr\\SqlServer.g:18:10: DOT ( DOT )? (name2= id | ASTERISK )
                    			    {
                    			    	DOT10=(IToken)Match(input,DOT,FOLLOW_DOT_in_find_dep_item107); 
                    			    		DOT10_tree = (object)adaptor.Create(DOT10);
                    			    		adaptor.AddChild(root_0, DOT10_tree);

                    			    	// ..\\DbShell.Driver.SqlServer\\antlr\\SqlServer.g:18:14: ( DOT )?
                    			    	int alt2 = 2;
                    			    	int LA2_0 = input.LA(1);

                    			    	if ( (LA2_0 == DOT) )
                    			    	{
                    			    	    alt2 = 1;
                    			    	}
                    			    	switch (alt2) 
                    			    	{
                    			    	    case 1 :
                    			    	        // ..\\DbShell.Driver.SqlServer\\antlr\\SqlServer.g:18:14: DOT
                    			    	        {
                    			    	        	DOT11=(IToken)Match(input,DOT,FOLLOW_DOT_in_find_dep_item109); 
                    			    	        		DOT11_tree = (object)adaptor.Create(DOT11);
                    			    	        		adaptor.AddChild(root_0, DOT11_tree);


                    			    	        }
                    			    	        break;

                    			    	}

                    			    	// ..\\DbShell.Driver.SqlServer\\antlr\\SqlServer.g:18:19: (name2= id | ASTERISK )
                    			    	int alt3 = 2;
                    			    	int LA3_0 = input.LA(1);

                    			    	if ( ((LA3_0 >= T_IDENT && LA3_0 <= T_QUOTED_IDENT)) )
                    			    	{
                    			    	    alt3 = 1;
                    			    	}
                    			    	else if ( (LA3_0 == ASTERISK) )
                    			    	{
                    			    	    alt3 = 2;
                    			    	}
                    			    	else 
                    			    	{
                    			    	    NoViableAltException nvae_d3s0 =
                    			    	        new NoViableAltException("", 3, 0, input);

                    			    	    throw nvae_d3s0;
                    			    	}
                    			    	switch (alt3) 
                    			    	{
                    			    	    case 1 :
                    			    	        // ..\\DbShell.Driver.SqlServer\\antlr\\SqlServer.g:18:20: name2= id
                    			    	        {
                    			    	        	PushFollow(FOLLOW_id_in_find_dep_item115);
                    			    	        	name2 = id();
                    			    	        	state.followingStackPointer--;

                    			    	        	adaptor.AddChild(root_0, name2.Tree);
                    			    	        	 name.AddComponent(UnquoteName(((name2 != null) ? input.ToString((IToken)(name2.Start),(IToken)(name2.Stop)) : null)));

                    			    	        }
                    			    	        break;
                    			    	    case 2 :
                    			    	        // ..\\DbShell.Driver.SqlServer\\antlr\\SqlServer.g:18:79: ASTERISK
                    			    	        {
                    			    	        	ASTERISK12=(IToken)Match(input,ASTERISK,FOLLOW_ASTERISK_in_find_dep_item121); 
                    			    	        		ASTERISK12_tree = (object)adaptor.Create(ASTERISK12);
                    			    	        		adaptor.AddChild(root_0, ASTERISK12_tree);


                    			    	        }
                    			    	        break;

                    			    	}


                    			    }
                    			    break;

                    			default:
                    			    goto loop4;
                    	    }
                    	} while (true);

                    	loop4:
                    		;	// Stops C# compiler whining that label 'loop4' has no statements

                    	dc.AddName(name); 

                    }
                    break;

            }
            retval.Stop = input.LT(-1);

            	retval.Tree = (object)adaptor.RulePostProcessing(root_0);
            	adaptor.SetTokenBoundaries(retval.Tree, (IToken) retval.Start, (IToken) retval.Stop);
        }
        catch (RecognitionException re) 
    	{
            ReportError(re);
            Recover(input,re);
    	// Conversion of the second argument necessary, but harmless
    	retval.Tree = (object)adaptor.ErrorNode(input, (IToken) retval.Start, input.LT(-1), re);

        }
        finally 
    	{
        }
        return retval;
    }
Example #3
0
 public void AddName(DepsName name)
 {
     Names.Add(name);
 }