1 16 package com.google.gwt.dev.jjs.ast; 17 18 23 public class JBinaryOperator { 24 25 public static final JBinaryOperator MUL = new JBinaryOperator("*", 3); 26 public static final JBinaryOperator DIV = new JBinaryOperator("/", 3); 27 public static final JBinaryOperator MOD = new JBinaryOperator("%", 3); 28 public static final JBinaryOperator ADD = new JBinaryOperator("+", 4); 29 public static final JBinaryOperator SUB = new JBinaryOperator("-", 4); 30 31 public static final JBinaryOperator SHL = new JBinaryOperator("<<", 5); 32 public static final JBinaryOperator SHR = new JBinaryOperator(">>", 5); 33 public static final JBinaryOperator SHRU = new JBinaryOperator(">>>", 5); 34 35 public static final JBinaryOperator LT = new JBinaryOperator("<", 6); 36 public static final JBinaryOperator LTE = new JBinaryOperator("<=", 6); 37 public static final JBinaryOperator GT = new JBinaryOperator(">", 6); 38 public static final JBinaryOperator GTE = new JBinaryOperator(">=", 6); 39 40 public static final JBinaryOperator EQ = new JBinaryOperator("==", 7); 41 public static final JBinaryOperator NEQ = new JBinaryOperator("!=", 7); 42 43 public static final JBinaryOperator BIT_AND = new JBinaryOperator("&", 8); 44 45 public static final JBinaryOperator BIT_XOR = new JBinaryOperator("^", 9); 46 47 public static final JBinaryOperator BIT_OR = new JBinaryOperator("|", 10); 48 49 public static final JBinaryOperator AND = new JBinaryOperator("&&", 11); 50 51 public static final JBinaryOperator OR = new JBinaryOperator("||", 12); 52 53 public static final JBinaryOperator ASG = new JBinaryOperator("=", 14); 55 public static final JBinaryOperator ASG_ADD = new JBinaryOperator("+=", 14); 56 public static final JBinaryOperator ASG_SUB = new JBinaryOperator("-=", 14); 57 public static final JBinaryOperator ASG_MUL = new JBinaryOperator("*=", 14); 58 public static final JBinaryOperator ASG_DIV = new JBinaryOperator("/=", 14); 59 public static final JBinaryOperator ASG_MOD = new JBinaryOperator("%=", 14); 60 public static final JBinaryOperator ASG_SHL = new JBinaryOperator("<<=", 14); 61 public static final JBinaryOperator ASG_SHR = new JBinaryOperator(">>=", 14); 62 public static final JBinaryOperator ASG_SHRU = new JBinaryOperator(">>>=", 14); 63 public static final JBinaryOperator ASG_BIT_AND = new JBinaryOperator("&=", 64 14); 65 public static final JBinaryOperator ASG_BIT_OR = new JBinaryOperator("|=", 14); 66 public static final JBinaryOperator ASG_BIT_XOR = new JBinaryOperator("^=", 67 14); 68 69 private final char[] symbol; 70 private final int precedence; 71 72 private JBinaryOperator(String symbol, int precedence) { 73 this.symbol = symbol.toCharArray(); 74 this.precedence = precedence; 75 } 76 77 public int getPrecedence() { 78 return precedence; 79 } 80 81 public char[] getSymbol() { 82 return symbol; 83 } 84 85 public boolean isAssignment() { 86 90 return (precedence == ASG.getPrecedence()); 91 } 92 93 public String toString() { 94 return new String (getSymbol()); 95 } 96 97 } 98 | Popular Tags |