//throws RecognitionException, TokenStreamException
 public void table()
 {
     try {      // for error handling
         match(T_TABLE);
         match(WS);
         RecordSetName = LT(1).getText();
                             CurrentRecordSet = new RecordSet(RecordSetName);
                             LoadRecordSet = new SADLRecordSet(RecordSetName);
         match(T_NAME);
         match(WS);
         match(T_WITH);
         match(WS);
         match(T_DATA);
         match(WS);
         Buf1 = LT(1).getText(); CurrentRecordSet.SetRecordSetType(Buf1);
         {
             switch ( LA(1) )
             {
             case T_FILE:
             {
                 match(T_FILE);
                 break;
             }
             case T_NAME:
             {
                 match(T_NAME);
                 break;
             }
             default:
             {
                 throw new NoViableAltException(LT(1), getFilename());
             }
              }
         }
         match(WS);
         {
             switch ( LA(1) )
             {
             case T_FROM:
             {
                 match(T_FROM);
                 break;
             }
             case T_TO:
             {
                 match(T_TO);
                 break;
             }
             default:
             {
                 throw new NoViableAltException(LT(1), getFilename());
             }
              }
         }
         match(WS);
         Buf1 = LT(1).getText(); Buf2 = Buf1.Substring(1, Buf1.Length - 2);
                 CurrentRecordSet.SetRecordSetSemantics(Buf1);
         match(T_QUOTE);
         match(WS);
         match(T_SCHEMA);
         match(WS);
         Buf1 = LT(1).getText(); LoadRecordSet.SetSchema(Buf1);
         match(T_NAME);
         match(WS);
         AllRecordSets.Add(AllRecordSets.Count + 1, CurrentRecordSet);
                 Console.WriteLine("RecordSet: " + RecordSetName);
                 AllSADLRecordSets.Add(AllSADLRecordSets.Count + 1, LoadRecordSet);
     }
     catch (RecognitionException ex)
     {
         reportError(ex);
         recover(ex,tokenSet_2_);
     }
 }