ParserMatchEvent.java
上传用户:afrynkmhm
上传日期:2007-01-06
资源大小:1262k
文件大小:2k
源码类别:

编译器/解释器

开发平台:

Others

  1. package antlr.debug;
  2. public class ParserMatchEvent extends GuessingEvent {
  3. // NOTE: for a mismatch on type STRING, the "text" is used as the lookahead
  4. //       value.  Normally "value" is this
  5. public static int TOKEN=0;
  6. public static int BITSET=1;
  7. public static int CHAR=2;
  8. public static int CHAR_BITSET=3;
  9. public static int STRING=4;
  10. public static int CHAR_RANGE=5;
  11. private boolean inverse;
  12. private boolean matched;
  13. private Object target;
  14. private int value;
  15. private String text;
  16. public ParserMatchEvent(Object source) {
  17. super(source);
  18. }
  19. public ParserMatchEvent(Object source, int type,
  20.                         int value, Object target, String text, int guessing,
  21.                         boolean inverse, boolean matched) {
  22. super(source);
  23. setValues(type,value,target,text,guessing,inverse,matched);
  24. }
  25. public Object getTarget() {
  26. return target;
  27. }
  28. public String getText() {
  29. return text;
  30. }
  31. public int getValue() {
  32. return value;
  33. }
  34. public boolean isInverse() {
  35. return inverse;
  36. }
  37. public boolean isMatched() {
  38. return matched;
  39. }
  40. void setInverse(boolean inverse) {
  41. this.inverse = inverse;
  42. }
  43. void setMatched(boolean matched) {
  44. this.matched = matched;
  45. }
  46. void setTarget(Object target) {
  47. this.target = target;
  48. }
  49. void setText(String text) {
  50. this.text = text;
  51. }
  52. void setValue(int value) {
  53. this.value = value;
  54. }
  55. /** This should NOT be called from anyone other than ParserEventSupport! */
  56. void setValues(int type, int value, Object target, String text, int guessing, boolean inverse, boolean matched) {
  57. super.setValues(type, guessing);
  58. setValue(value);
  59. setTarget(target);
  60. setInverse(inverse);
  61. setMatched(matched);
  62. setText(text);
  63. }
  64. public String toString() {
  65. return "ParserMatchEvent [" + 
  66.        (isMatched()?"ok,":"bad,") +
  67.        (isInverse()?"NOT ":"") +
  68.        (getType()==TOKEN?"token,":"bitset,") +
  69.        getValue() + "," + getTarget() + "," + getGuessing() + "]";
  70. }
  71. }