Language.java 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. package jplag.csharp;
  2. import java.io.File;
  3. import jplag.ProgramI;
  4. public class Language implements jplag.Language {
  5. private Parser parser;
  6. public Language(ProgramI program) {
  7. this.parser = new Parser();
  8. this.parser.setProgram(program);
  9. }
  10. @Override
  11. public String[] suffixes() {
  12. String[] res = { ".cs", ".CS" };
  13. return res;
  14. }
  15. @Override
  16. public int errorsCount() {
  17. return this.parser.errorsCount();
  18. }
  19. @Override
  20. public String name() {
  21. return "C# 1.2 Parser";
  22. }
  23. @Override
  24. public String getShortName() {
  25. return "c#-1.2";
  26. }
  27. @Override
  28. public int min_token_match() {
  29. return 8;
  30. }
  31. @Override
  32. public jplag.Structure parse(File dir, String[] files) {
  33. return this.parser.parse(dir, files);
  34. }
  35. @Override
  36. public boolean errors() {
  37. return parser.getErrors();
  38. }
  39. @Override
  40. public boolean supportsColumns() {
  41. return true;
  42. }
  43. @Override
  44. public boolean isPreformatted() {
  45. return true;
  46. }
  47. @Override
  48. public boolean usesIndex() {
  49. return false;
  50. }
  51. @Override
  52. public int noOfTokens() {
  53. return jplag.csharp.CSharpToken.numberOfTokens();
  54. }
  55. @Override
  56. public String type2string(int type) {
  57. return jplag.csharp.CSharpToken.type2string(type);
  58. }
  59. }