KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > gnu > ecmascript > Reserved


1 package gnu.ecmascript;
2 import gnu.mapping.*;
3
4 public class Reserved
5 {
6   String JavaDoc name;
7   int prio;
8   Procedure proc;
9
10   public static final int VAR_TOKEN = 30;
11   public static final int IF_TOKEN = 31;
12   public static final int WHILE_TOKEN = 32;
13   public static final int FOR_TOKEN = 33;
14   public static final int CONTINUE_TOKEN = 34;
15   public static final int BREAK_TOKEN = 35;
16   public static final int RETURN_TOKEN = 36;
17   public static final int WITH_TOKEN = 37;
18   public static final int ELSE_TOKEN = 38;
19   public static final int NEW_TOKEN = 39;
20   public static final int THIS_TOKEN = 40;
21   public static final int FUNCTION_TOKEN = 41;
22
23   public static final int PLUS_OP = 1;
24   public static final int MINUS_OP = 2;
25   public static final int TIMES_OP = 3;
26   public static final int LSHIFT_OP = 4;
27   public static final int LESS_OP = 5;
28
29   public Reserved (String JavaDoc name, int prio, Procedure proc)
30   {
31     this.name = name;
32     this.prio = prio;
33     this.proc = proc;
34   }
35
36   public Reserved (String JavaDoc name, int prio)
37   {
38     this.name = name;
39     this.prio = prio;
40   }
41
42   public Reserved (String JavaDoc name, int prio, int op)
43   {
44     this.name = name;
45     this.prio = prio;
46     this.proc = new BinaryOp(name, op);
47   }
48
49   final static Reserved opBoolOr = new Reserved("||", 1, 0);
50   final static Reserved opBoolAnd = new Reserved("&&", 2, 0);
51   final static Reserved opBitOr = new Reserved("|", 3, 0);
52   final static Reserved opBitXor = new Reserved("^", 4, 0);
53   final static Reserved opBitAnd = new Reserved("&", 5, 0);
54   final static Reserved opEqual = new Reserved("=", 6, 0);
55   final static Reserved opNotEqual = new Reserved("!=", 6, 0);
56   final static Reserved opLess = new Reserved("<", 7, LESS_OP);
57   final static Reserved opGreater = new Reserved(">", 7, 0);
58   final static Reserved opLessEqual = new Reserved("<=", 7, 0);
59   final static Reserved opGreaterEqual = new Reserved(">=", 7, 0);
60   final static Reserved opLshift = new Reserved("<<", 8, LSHIFT_OP);
61   final static Reserved opRshiftSigned = new Reserved(">>", 8, 0);
62   final static Reserved opRshiftUnsigned = new Reserved(">>>", 8, 0);
63   final static Reserved opPlus = new Reserved("+", 9, PLUS_OP);
64   final static Reserved opMinus = new Reserved("-", 9, MINUS_OP);
65   final static Reserved opTimes = new Reserved("*", 10, TIMES_OP);
66   final static Reserved opDivide = new Reserved("/", 10, 0);
67   final static Reserved opRemainder = new Reserved("%", 10, 0);
68
69   static Reserved opPlusPlus, opMinusMinus; // FIXME
70

71   public String JavaDoc toString() { return "[Reserved \""+name+"\" prio:"+prio+"]"; }
72
73   public boolean isAssignmentOp() { return false; }
74 }
75
Popular Tags