home *** CD-ROM | disk | FTP | other *** search
- package sun.tools.tree;
-
- import sun.tools.asm.Assembler;
- import sun.tools.java.Environment;
-
- public class DivideExpression extends DivRemExpression {
- public DivideExpression(int var1, Expression var2, Expression var3) {
- super(31, var1, var2, var3);
- }
-
- Expression eval(int var1, int var2) {
- return new IntExpression(super.where, var1 / var2);
- }
-
- Expression eval(long var1, long var3) {
- return new LongExpression(super.where, var1 / var3);
- }
-
- Expression eval(float var1, float var2) {
- return new FloatExpression(super.where, var1 / var2);
- }
-
- Expression eval(double var1, double var3) {
- return new DoubleExpression(super.where, var1 / var3);
- }
-
- Expression simplify() {
- if (super.right.equals(0)) {
- throw new ArithmeticException("/ by zero");
- } else {
- return (Expression)(super.right.equals(1) ? super.left : this);
- }
- }
-
- void codeOperation(Environment var1, Context var2, Assembler var3) {
- var3.add(super.where, 108 + super.type.getTypeCodeOffset());
- }
- }
-