Language.java 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. package de.jplag.scheme;
  2. import java.io.File;
  3. import de.jplag.ErrorConsumer;
  4. import de.jplag.TokenList;
  5. public class Language implements de.jplag.Language {
  6. public Language(ErrorConsumer program) {
  7. this.parser = new Parser();
  8. this.parser.setProgram(program);
  9. }
  10. @Override
  11. public int errorCount() {
  12. return this.parser.errorsCount();
  13. }
  14. private de.jplag.scheme.Parser parser; // Not yet instantiated? See constructor!
  15. @Override
  16. public String[] suffixes() {
  17. String[] res = {".scm", ".SCM", ".ss", ".SS"};
  18. return res;
  19. }
  20. @Override
  21. public String getName() {
  22. return "SchemeR4RS AbstractParser [basic markup]";
  23. }
  24. @Override
  25. public String getShortName() {
  26. return "scheme";
  27. }
  28. @Override
  29. public int minimumTokenMatch() {
  30. return 13;
  31. }
  32. @Override
  33. public boolean supportsColumns() {
  34. return false;
  35. }
  36. @Override
  37. public boolean isPreformatted() {
  38. return true;
  39. }
  40. @Override
  41. public boolean usesIndex() {
  42. return false;
  43. }
  44. @Override
  45. public TokenList parse(File dir, String[] files) {
  46. return this.parser.parse(dir, files);
  47. }
  48. @Override
  49. public boolean hasErrors() {
  50. return this.parser.hasErrors();
  51. }
  52. @Override
  53. public int numberOfTokens() {
  54. return SchemeTokenConstants.NUM_DIFF_TOKENS;
  55. }
  56. }