package jplag.cpp;
import java.io.File;
import jplag.ProgramI;
/*
* Leider werden C/C++ nicht geparst, sondern nur gescannt...
*/
public class Language implements jplag.Language {
private Scanner scanner;
public Language(ProgramI program) {
this.scanner = new Scanner();
this.scanner.setProgram(program);
}
public int errorsCount() {
// TODO Auto-generated method stub
return this.scanner.errorsCount();
}
public String[] suffixes() {
String[] res = { ".cpp", ".CPP", ".cxx", ".CXX", ".c++", ".C++", ".c", ".C", ".cc", ".CC", ".h", ".H",
".hpp", ".HPP", ".hh", ".HH" };
return res;
}
public String name() {
return "C/C++ Scanner [basic markup]";
}
public String getShortName() {
return "cpp";
}
public int min_token_match() {
return 12;
}
public boolean supportsColumns() {
return false;
}
public boolean isPreformated() {
return true;
}
public boolean usesIndex() {
return false;
}
public jplag.Structure parse(File dir, String[] files) {
return this.scanner.scan(dir, files);
}
public boolean errors() {
return this.scanner.getErrors();
}
public int noOfTokens() {
return jplag.cpp.CPPToken.numberOfTokens();
}
public String type2string(int type) {
return jplag.cpp.CPPToken.type2string(type);
}
}