Parser.java 1.1 KB

123456789101112131415161718192021222324252627282930313233343536
  1. package de.jplag.scheme;
  2. import java.io.File;
  3. import de.jplag.AbstractParser;
  4. import de.jplag.TokenList;
  5. public class Parser extends AbstractParser implements SchemeTokenConstants {
  6. private String actFile;
  7. private TokenList struct;
  8. public TokenList parse(File dir, String files[]) {
  9. struct = new TokenList();
  10. errors = 0;
  11. SchemeParser parser = null;// no worry it will be reinitialized
  12. // in method parseFile(...)
  13. for (int i = 0; i < files.length; i++) {
  14. actFile = files[i];
  15. getErrorConsumer().print(null, "Parsing file " + files[i]);
  16. if (!SchemeParser.parseFile(dir, files[i], parser, this))
  17. errors++;
  18. struct.addToken(new SchemeToken(FILE_END, actFile, 1));
  19. }
  20. this.parseEnd();
  21. return struct;
  22. }
  23. public void add(int type, Token token) {
  24. struct.addToken(new SchemeToken(type, actFile, token.beginLine));
  25. /*
  26. * System.out.println(token.beginLine+"\t"+ (new SchemeToken(0,null,0)).type2string(type)+"\t"+ token.image);
  27. */
  28. }
  29. }