1 21 package proguard.evaluation.value; 22 23 import proguard.classfile.ClassConstants; 24 25 30 public class DoubleValue extends Category2Value 31 { 32 35 public double value() 36 { 37 return 0.0; 38 } 39 40 41 43 47 public DoubleValue generalize(DoubleValue other) 48 { 49 return this; 50 } 51 52 53 56 public DoubleValue add(DoubleValue other) 57 { 58 return this; 59 } 60 61 64 public DoubleValue subtract(DoubleValue other) 65 { 66 return this; 67 } 68 69 72 public DoubleValue subtractFrom(DoubleValue other) 73 { 74 return this; 75 } 76 77 80 public DoubleValue multiply(DoubleValue other) 81 { 82 return this; 83 } 84 85 88 public DoubleValue divide(DoubleValue other) 89 { 90 return this; 91 } 92 93 96 public DoubleValue divideOf(DoubleValue other) 97 { 98 return this; 99 } 100 101 104 public DoubleValue remainder(DoubleValue other) 105 { 106 return this; 107 } 108 109 112 public DoubleValue remainderOf(DoubleValue other) 113 { 114 return this; 115 } 116 117 121 public IntegerValue compare(DoubleValue other, ValueFactory valueFactory) 122 { 123 return valueFactory.createIntegerValue(); 124 } 125 126 127 129 133 public final IntegerValue compareReverse(DoubleValue other, ValueFactory valueFactory) 134 { 135 return compare(other, valueFactory).negate(); 136 } 137 138 139 141 144 public DoubleValue negate() 145 { 146 return this; 147 } 148 149 152 public IntegerValue convertToInteger(ValueFactory valueFactory) 153 { 154 return valueFactory.createIntegerValue(); 155 } 156 157 160 public LongValue convertToLong(ValueFactory valueFactory) 161 { 162 return valueFactory.createLongValue(); 163 } 164 165 168 public FloatValue convertToFloat(ValueFactory valueFactory) 169 { 170 return valueFactory.createFloatValue(); 171 } 172 173 174 176 180 public DoubleValue generalize(SpecificDoubleValue other) 181 { 182 return this; 183 } 184 185 186 189 public DoubleValue add(SpecificDoubleValue other) 190 { 191 return this; 192 } 193 194 197 public DoubleValue subtract(SpecificDoubleValue other) 198 { 199 return this; 200 } 201 202 205 public DoubleValue subtractFrom(SpecificDoubleValue other) 206 { 207 return this; 208 } 209 210 213 public DoubleValue multiply(SpecificDoubleValue other) 214 { 215 return this; 216 } 217 218 221 public DoubleValue divide(SpecificDoubleValue other) 222 { 223 return this; 224 } 225 226 230 public DoubleValue divideOf(SpecificDoubleValue other) 231 { 232 return this; 233 } 234 235 239 public DoubleValue remainder(SpecificDoubleValue other) 240 { 241 return this; 242 } 243 244 248 public DoubleValue remainderOf(SpecificDoubleValue other) 249 { 250 return this; 251 } 252 253 258 public IntegerValue compare(SpecificDoubleValue other, ValueFactory valueFactory) 259 { 260 return valueFactory.createIntegerValue(); 261 } 262 263 264 266 271 public final IntegerValue compareReverse(SpecificDoubleValue other, ValueFactory valueFactory) 272 { 273 return compare(other, valueFactory).negate(); 274 } 275 276 277 279 public final DoubleValue doubleValue() 280 { 281 return this; 282 } 283 284 public final Value generalize(Value other) 285 { 286 return this.generalize(other.doubleValue()); 287 } 288 289 public final int computationalType() 290 { 291 return TYPE_DOUBLE; 292 } 293 294 public final String internalType() 295 { 296 return "" + ClassConstants.INTERNAL_TYPE_DOUBLE; 297 } 298 299 300 302 public boolean equals(Object object) 303 { 304 return object != null && 305 this.getClass() == object.getClass(); 306 } 307 308 309 public int hashCode() 310 { 311 return this.getClass().hashCode(); 312 } 313 314 315 public String toString() 316 { 317 return "d"; 318 } 319 } 320 | Popular Tags |