JavaToken.java 4.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184
  1. package de.jplag.java19;
  2. import de.jplag.Token;
  3. public class JavaToken extends Token implements JavaTokenConstants {
  4. private static final long serialVersionUID = -383581430479870696L;
  5. private int line, column, length;
  6. public JavaToken(int type, String file, int line, int col, int length) {
  7. super(type, file, line, col, length);
  8. }
  9. @Override
  10. public int getLine() {
  11. return line;
  12. }
  13. @Override
  14. public int getColumn() {
  15. return column;
  16. }
  17. @Override
  18. public int getLength() {
  19. return length;
  20. }
  21. @Override
  22. public void setLine(int line) {
  23. this.line = line;
  24. }
  25. @Override
  26. public void setColumn(int column) {
  27. this.column = column;
  28. }
  29. @Override
  30. public void setLength(int length) {
  31. this.length = length;
  32. }
  33. public static String type2string(int type) {
  34. switch (type) {
  35. case JavaTokenConstants.FILE_END:
  36. return "********";
  37. case JavaTokenConstants.SEPARATOR_TOKEN:
  38. return "METHOD_SEPARATOR";
  39. case J_PACKAGE:
  40. return "PACKAGE ";
  41. case J_IMPORT:
  42. return "IMPORT ";
  43. case J_CLASS_BEGIN:
  44. return "CLASS{ ";
  45. case J_CLASS_END:
  46. return "}CLASS ";
  47. case J_METHOD_BEGIN:
  48. return "METHOD{ ";
  49. case J_METHOD_END:
  50. return "}METHOD ";
  51. case J_VARDEF:
  52. return "VARDEF ";
  53. case J_SYNC_BEGIN:
  54. return "SYNC{ ";
  55. case J_SYNC_END:
  56. return "}SYNC ";
  57. case J_DO_BEGIN:
  58. return "DO{ ";
  59. case J_DO_END:
  60. return "}DO ";
  61. case J_WHILE_BEGIN:
  62. return "WHILE{ ";
  63. case J_WHILE_END:
  64. return "}WHILE ";
  65. case J_FOR_BEGIN:
  66. return "FOR{ ";
  67. case J_FOR_END:
  68. return "}FOR ";
  69. case J_SWITCH_BEGIN:
  70. return "SWITCH{ ";
  71. case J_SWITCH_END:
  72. return "}SWITCH ";
  73. case J_CASE:
  74. return "CASE ";
  75. case J_TRY_BEGIN:
  76. return "TRY{ ";
  77. case J_CATCH_BEGIN:
  78. return "CATCH{ ";
  79. case J_CATCH_END:
  80. return "}CATCH ";
  81. case J_FINALLY:
  82. return "FINALLY ";
  83. case J_IF_BEGIN:
  84. return "IF{ ";
  85. case J_ELSE:
  86. return "ELSE ";
  87. case J_IF_END:
  88. return "}IF ";
  89. case J_COND:
  90. return "COND ";
  91. case J_BREAK:
  92. return "BREAK ";
  93. case J_CONTINUE:
  94. return "CONTINUE";
  95. case J_RETURN:
  96. return "RETURN ";
  97. case J_THROW:
  98. return "THROW ";
  99. case J_IN_CLASS_BEGIN:
  100. return "INCLASS{";
  101. case J_IN_CLASS_END:
  102. return "}INCLASS";
  103. case J_APPLY:
  104. return "APPLY ";
  105. case J_NEWCLASS:
  106. return "NEWCLASS";
  107. case J_NEWARRAY:
  108. return "NEWARRAY";
  109. case J_ASSIGN:
  110. return "ASSIGN ";
  111. case J_INTERFACE_BEGIN:
  112. return "INTERF{ ";
  113. case J_INTERFACE_END:
  114. return "}INTERF ";
  115. case J_CONSTR_BEGIN:
  116. return "CONSTR{ ";
  117. case J_CONSTR_END:
  118. return "}CONSTR ";
  119. case J_INIT_BEGIN:
  120. return "INIT{ ";
  121. case J_INIT_END:
  122. return "}INIT ";
  123. case J_VOID:
  124. return "VOID ";
  125. case J_ARRAY_INIT_BEGIN:
  126. return "ARRINIT{";
  127. case J_ARRAY_INIT_END:
  128. return "ARRINIT}";
  129. case J_ENUM_BEGIN:
  130. return "ENUM{ ";
  131. case J_ENUM_CLASS_BEGIN:
  132. return "ENUM_CLA";
  133. case J_ENUM_END:
  134. return "}ENUM ";
  135. case J_GENERIC:
  136. return "GENERIC ";
  137. case J_ASSERT:
  138. return "ASSERT ";
  139. case J_ANNO:
  140. return "ANNO ";
  141. case J_ANNO_MARKER:
  142. return "ANNOMARK";
  143. case J_ANNO_M_BEGIN:
  144. return "ANNO_M{ ";
  145. case J_ANNO_M_END:
  146. return "}ANNO_M ";
  147. case J_ANNO_T_BEGIN:
  148. return "ANNO_T{ ";
  149. case J_ANNO_T_END:
  150. return "}ANNO_T ";
  151. case J_ANNO_C_BEGIN:
  152. return "ANNO_C{ ";
  153. case J_ANNO_C_END:
  154. return "}ANNO_C ";
  155. case J_MODULE_BEGIN:
  156. return "MODULE{ ";
  157. case J_MODULE_END:
  158. return "}MODULE ";
  159. case J_EXPORTS:
  160. return "EXPORTS ";
  161. case J_PROVIDES:
  162. return "PROVIDES";
  163. case J_REQUIRES:
  164. return "REQUIRES";
  165. case J_TRY_WITH_RESOURCE:
  166. return "TRY_RES ";
  167. default:
  168. System.err.println("*UNKNOWN: " + type);
  169. return "*UNKNOWN" + type;
  170. }
  171. }
  172. }