JavaToken.java 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899
  1. package jplag.java15;
  2. import jplag.Token;
  3. public class JavaToken extends jplag.Token implements JavaTokenConstants {
  4. private static final long serialVersionUID = 3743208940428676175L;
  5. private int line, column, length;
  6. public JavaToken(int type, String file, int line, int column, int length) {
  7. super(type, file, line, column, length);
  8. }
  9. @Override
  10. public int getLine() { return line; }
  11. @Override
  12. public int getColumn() { return column; }
  13. @Override
  14. public int getLength() { return length; }
  15. @Override
  16. public void setLine(int line) { this.line = line; }
  17. @Override
  18. public void setColumn(int column) { this.column = column; }
  19. @Override
  20. public void setLength(int length) { this.length = length; }
  21. public static String type2string(int type) {
  22. switch (type) {
  23. case JavaTokenConstants.FILE_END: // @formatter:off
  24. return "********";
  25. case JavaTokenConstants.SEPARATOR_TOKEN:
  26. return "METHOD_SEPARATOR";
  27. case J_PACKAGE: return "PACKAGE ";
  28. case J_IMPORT: return "IMPORT ";
  29. case J_CLASS_BEGIN: return "CLASS{ ";
  30. case J_CLASS_END: return "}CLASS ";
  31. case J_METHOD_BEGIN: return "METHOD{ ";
  32. case J_METHOD_END: return "}METHOD ";
  33. case J_VARDEF: return "VARDEF ";
  34. case J_SYNC_BEGIN: return "SYNC{ ";
  35. case J_SYNC_END: return "}SYNC ";
  36. case J_DO_BEGIN: return "DO{ ";
  37. case J_DO_END: return "}DO ";
  38. case J_WHILE_BEGIN: return "WHILE{ ";
  39. case J_WHILE_END: return "}WHILE ";
  40. case J_FOR_BEGIN: return "FOR{ ";
  41. case J_FOR_END: return "}FOR ";
  42. case J_SWITCH_BEGIN: return "SWITCH{ ";
  43. case J_SWITCH_END: return "}SWITCH ";
  44. case J_CASE: return "CASE ";
  45. case J_TRY_BEGIN: return "TRY{ ";
  46. case J_CATCH_BEGIN: return "CATCH{ ";
  47. case J_CATCH_END: return "}CATCH ";
  48. case J_FINALLY: return "FINALLY ";
  49. case J_IF_BEGIN: return "IF{ ";
  50. case J_ELSE: return "ELSE ";
  51. case J_IF_END: return "}IF ";
  52. case J_COND: return "COND ";
  53. case J_BREAK: return "BREAK ";
  54. case J_CONTINUE: return "CONTINUE";
  55. case J_RETURN: return "RETURN ";
  56. case J_THROW: return "THROW ";
  57. case J_IN_CLASS_BEGIN: return "INCLASS{";
  58. case J_IN_CLASS_END: return "}INCLASS";
  59. case J_APPLY: return "APPLY ";
  60. case J_NEWCLASS: return "NEWCLASS";
  61. case J_NEWARRAY: return "NEWARRAY";
  62. case J_ASSIGN: return "ASSIGN ";
  63. case J_INTERFACE_BEGIN: return "INTERF{ ";
  64. case J_INTERFACE_END: return "}INTERF ";
  65. case J_CONSTR_BEGIN: return "CONSTR{ ";
  66. case J_CONSTR_END: return "}CONSTR ";
  67. case J_INIT_BEGIN: return "INIT{ ";
  68. case J_INIT_END: return "}INIT ";
  69. case J_VOID: return "VOID ";
  70. case J_ARRAY_INIT_BEGIN:return "ARRINIT{";
  71. case J_ARRAY_INIT_END: return "ARRINIT}";
  72. case J_ENUM_BEGIN: return "ENUM{ ";
  73. case J_ENUM_CLASS_BEGIN:return "ENUM_CLA";
  74. case J_ENUM_END: return "}ENUM ";
  75. case J_GENERIC: return "GENERIC ";
  76. case J_ASSERT: return "ASSERT ";
  77. case J_ANNO: return "ANNO ";
  78. case J_ANNO_MARKER: return "ANNOMARK";
  79. case J_ANNO_M_BEGIN: return "ANNO_M{ ";
  80. case J_ANNO_M_END: return "}ANNO_M ";
  81. case J_ANNO_T_BEGIN: return "ANNO_T{ ";
  82. case J_ANNO_T_END: return "}ANNO_T ";
  83. case J_ANNO_C_BEGIN: return "ANNO_C{ ";
  84. case J_ANNO_C_END: return "}ANNO_C ";
  85. default: return "*UNKNOWN"; // @formatter:on
  86. }
  87. }
  88. public static int numberOfTokens() {
  89. return NUM_DIFF_TOKENS;
  90. }
  91. }