| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 |
- package de.jplag.java15;
- import java.io.File;
- import de.jplag.java15.grammar.JavaParser;
- import de.jplag.java15.grammar.Token;
- public class Parser extends de.jplag.AbstractParser implements JavaTokenConstants {
- private String actFile;
- private boolean useMethodSeparators;
- private de.jplag.TokenList struct;
- public Parser(boolean useMethodSeparators) {
- this.useMethodSeparators = useMethodSeparators;
- }
- public de.jplag.TokenList parse(File dir, String files[]) {
- struct = new de.jplag.TokenList();
- errors = 0;
- JavaParser parser = null; // This will be (re)initialised in parseFile()
- for (int i = 0; i < files.length; i++) {
- actFile = files[i];
- getProgram().print(null, "Parsing file " + files[i] + "\n");
- if (!JavaParser.parseFile(dir, files[i], parser, this))
- errors++;
- struct.addToken(new JavaToken(FILE_END, actFile, -1, -1, -1));
- }
- this.parseEnd();
- return struct;
- }
- public void add(int type, Token token) {
- if (type == SEPARATOR_TOKEN && !useMethodSeparators)
- return;
- JavaToken tok = new JavaToken(type, actFile, token.beginLine, token.beginColumn, token.image.length());
- struct.addToken(tok);
- /*
- * getProgram().print(null,token.beginLine+"\t"+
- * JavaToken.type2string(type)+"\t"+ token.image);
- */
- }
- }
|