1 21 package com.db4o.nativequery.expr.cmp; 22 23 24 25 public class ArithmeticExpression implements ComparisonOperand { 26 private ArithmeticOperator _op; 27 private ComparisonOperand _left; 28 private ComparisonOperand _right; 29 30 public ArithmeticExpression(ComparisonOperand left, ComparisonOperand right,ArithmeticOperator op) { 31 this._op=op; 32 this._left = left; 33 this._right = right; 34 } 35 36 public ComparisonOperand left() { 37 return _left; 38 } 39 40 public ComparisonOperand right() { 41 return _right; 42 } 43 44 public ArithmeticOperator op() { 45 return _op; 46 } 47 48 public String toString() { 49 return "("+_left+_op+_right+")"; 50 } 51 52 public boolean equals(Object obj) { 53 if(this==obj) { 54 return true; 55 } 56 if(obj==null||obj.getClass()!=getClass()) { 57 return false; 58 } 59 ArithmeticExpression casted=(ArithmeticExpression)obj; 60 return _left.equals(casted._left)&&_right.equals(casted._right)&&_op.equals(casted._op); 61 } 62 63 public int hashCode() { 64 int hc=_left.hashCode(); 65 hc*=29+_right.hashCode(); 66 hc*=29+_op.hashCode(); 67 return hc; 68 } 69 70 public void accept(ComparisonOperandVisitor visitor) { 71 visitor.visit(this); 72 } 73 } 74 | Popular Tags |