home *** CD-ROM | disk | FTP | other *** search
- package sun.tools.tree;
-
- import sun.tools.asm.Assembler;
- import sun.tools.java.Environment;
-
- public class SubtractExpression extends BinaryArithmeticExpression {
- public SubtractExpression(int var1, Expression var2, Expression var3) {
- super(30, 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.type.inMask(62)) {
- if (super.left.equals(0)) {
- return new NegativeExpression(super.where, super.right);
- }
-
- if (super.right.equals(0)) {
- return super.left;
- }
- }
-
- return this;
- }
-
- void codeOperation(Environment var1, Context var2, Assembler var3) {
- var3.add(super.where, 100 + super.type.getTypeCodeOffset());
- }
- }
-