public ArrayList<String> parseColumnNames(){
  ArrayList<String> columns=new ArrayList<String>();
  Token token=scanToken();
  if (token == Token.LPAREN) {
    do {
      columns.add(parseIdentifier());
      token=scanToken();
    }
 while (token == Token.COMMA);
    if (token != Token.RPAREN) {
      throw error("expected ')' at '{0}'",token);
    }
  }
 else   if (token == Token.IDENTIFIER) {
    columns.add(_lexeme);
    _token=token;
  }
 else {
    throw error("expected '(' at '{0}'",token);
  }
  return columns;
}

public ArrayList < String > parseColumnNames ( ) { ArrayList < String > columns = new ArrayList < String > ( ) ; Token token = scanToken ( ) ; if ( token == Token . LPAREN ) { do { columns . add ( parseIdentifier ( ) ) ; token = scanToken ( ) ; } while ( token == Token . COMMA ) ; if ( token != Token . RPAREN ) { throw error ( "expected ')' at '{0}'" , token ) ; } } else if ( token == Token . IDENTIFIER ) { columns . add ( _lexeme ) ; _token = token ; } else { throw error ( "expected '(' at '{0}'" , token ) ; } return columns ; }
parses a list of column names
