1 21 package proguard.evaluation.value; 22 23 import proguard.classfile.ClassConstants; 24 25 30 public class FloatValue extends Category1Value 31 { 32 35 public float value() 36 { 37 return 0f; 38 } 39 40 41 43 47 public FloatValue generalize(FloatValue other) 48 { 49 return this; 50 } 51 52 53 56 public FloatValue add(FloatValue other) 57 { 58 return this; 59 } 60 61 64 public FloatValue subtract(FloatValue other) 65 { 66 return this; 67 } 68 69 72 public FloatValue subtractFrom(FloatValue other) 73 { 74 return this; 75 } 76 77 80 public FloatValue multiply(FloatValue other) 81 { 82 return this; 83 } 84 85 88 public FloatValue divide(FloatValue other) 89 { 90 return this; 91 } 92 93 96 public FloatValue divideOf(FloatValue other) 97 { 98 return this; 99 } 100 101 104 public FloatValue remainder(FloatValue other) 105 { 106 return this; 107 } 108 109 112 public FloatValue remainderOf(FloatValue other) 113 { 114 return this; 115 } 116 117 121 public IntegerValue compare(FloatValue other, ValueFactory valueFactory) 122 { 123 return valueFactory.createIntegerValue(); 124 } 125 126 127 129 133 public final IntegerValue compareReverse(FloatValue other, ValueFactory valueFactory) 134 { 135 return compare(other, valueFactory).negate(); 136 } 137 138 139 141 144 public FloatValue 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 DoubleValue convertToDouble(ValueFactory valueFactory) 169 { 170 return valueFactory.createDoubleValue(); 171 } 172 173 174 176 180 public FloatValue generalize(SpecificFloatValue other) 181 { 182 return this; 183 } 184 185 186 189 public FloatValue add(SpecificFloatValue other) 190 { 191 return this; 192 } 193 194 197 public FloatValue subtract(SpecificFloatValue other) 198 { 199 return this; 200 } 201 202 205 public FloatValue subtractFrom(SpecificFloatValue other) 206 { 207 return this; 208 } 209 210 213 public FloatValue multiply(SpecificFloatValue other) 214 { 215 return this; 216 } 217 218 221 public FloatValue divide(SpecificFloatValue other) 222 { 223 return this; 224 } 225 226 230 public FloatValue divideOf(SpecificFloatValue other) 231 { 232 return this; 233 } 234 235 239 public FloatValue remainder(SpecificFloatValue other) 240 { 241 return this; 242 } 243 244 248 public FloatValue remainderOf(SpecificFloatValue other) 249 { 250 return this; 251 } 252 253 258 public IntegerValue compare(SpecificFloatValue other, ValueFactory valueFactory) 259 { 260 return valueFactory.createIntegerValue(); 261 } 262 263 264 266 271 public final IntegerValue compareReverse(SpecificFloatValue other, ValueFactory valueFactory) 272 { 273 return compare(other, valueFactory).negate(); 274 } 275 276 277 279 public final FloatValue floatValue() 280 { 281 return this; 282 } 283 284 public final Value generalize(Value other) 285 { 286 return this.generalize(other.floatValue()); 287 } 288 289 public final int computationalType() 290 { 291 return TYPE_FLOAT; 292 } 293 294 public final String internalType() 295 { 296 return "" + ClassConstants.INTERNAL_TYPE_FLOAT; 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 "f"; 318 } 319 } 320 | Popular Tags |