home *** CD-ROM | disk | FTP | other *** search
/ Symantec Visual Cafe for Java 2.5 / symantec-visual-cafe-2.5-database-dev-edition.iso / VPage / Java.bin / CLASSES.ZIP / sun / tools / tree / DivRemExpression.class (.txt) < prev    next >
Encoding:
Java Class File  |  1997-07-08  |  1.2 KB  |  31 lines

  1. package sun.tools.tree;
  2.  
  3. import sun.tools.java.Environment;
  4.  
  5. public abstract class DivRemExpression extends BinaryArithmeticExpression {
  6.    public DivRemExpression(int var1, int var2, Expression var3, Expression var4) {
  7.       super(var1, var2, var3, var4);
  8.    }
  9.  
  10.    public Expression inline(Environment var1, Context var2) {
  11.       if (super.type.inMask(62)) {
  12.          super.right = super.right.inlineValue(var1, var2);
  13.          if (super.right.isConstant() && !super.right.equals(0)) {
  14.             super.left = super.left.inline(var1, var2);
  15.             return super.left;
  16.          } else {
  17.             super.left = super.left.inlineValue(var1, var2);
  18.  
  19.             try {
  20.                return ((BinaryExpression)this).eval().simplify();
  21.             } catch (ArithmeticException var3) {
  22.                var1.error(super.where, "arithmetic.exception");
  23.                return this;
  24.             }
  25.          }
  26.       } else {
  27.          return super.inline(var1, var2);
  28.       }
  29.    }
  30. }
  31.