@GwtIncompatible // Floats.tryParse public void testTryParseOfToHexStringIsOriginal() { for (float f : NUMBERS) { checkTryParse(f, Float.toHexString(f)); } }
private void transformA(StringBuilder result) { if (arg instanceof Float) { result.append(Float.toHexString(((Float) arg).floatValue())); } else if (arg instanceof Double) { result.append(Double.toHexString(((Double) arg).doubleValue())); } else { throw badArgumentType(); } if (!formatToken.isPrecisionSet()) { return; } int precision = formatToken.getPrecision(); if (precision == 0) { precision = 1; } int indexOfFirstFractionalDigit = result.indexOf(".") + 1; int indexOfP = result.indexOf("p"); int fractionalLength = indexOfP - indexOfFirstFractionalDigit; if (fractionalLength == precision) { return; } if (fractionalLength < precision) { char[] zeros = new char[precision - fractionalLength]; Arrays.fill(zeros, '0'); // %a shouldn't be localized. result.insert(indexOfP, zeros); return; } result.delete(indexOfFirstFractionalDigit + precision, indexOfP); }
@Override public void visit(WasmFloat32Constant expression) { open().append("f32.const " + Float.toHexString(expression.getValue())).close(); }
@Override public void visit(WasmFloat32Constant expression) { if (Float.isInfinite(expression.getValue())) { value = CExpression.relocatable(expression.getValue() < 0 ? "-INFINITY" : "INFINITY"); } else if (Float.isNaN(expression.getValue())) { value = CExpression.relocatable("NAN"); } else { value = CExpression.relocatable(Float.toHexString(expression.getValue()) + "F"); } }
class Test { public static void main(String[] args) { System.out.println("3.2F is: "+Float.toHexString(3.2F)); System.out.println("3.2 is: "+Double.toHexString(3.2)); System.out.println("6.5F is: "+Float.toHexString(6.5F)); System.out.println("6.5 is: "+Double.toHexString(6.5)); } } $ java Test 3.2F is: 0x1.99999ap1 3.2 is: 0x1.999999999999ap1 6.5F is: 0x1.ap2 6.5 is: 0x1.ap2
/** * override * * @see Float#toHexString(float) */ private static Result toHexString(MethodCode methodCode, MethodArgs methodArgs, Frame frame) { float f = (float) methodArgs.invokeArgs[0]; String s = Float.toHexString(f); ObjectRef ref = frame.heap.newString(s); Result result = NativeMethod.result(methodCode, ref, frame); return result; }
@Override public void visit(WasmFloat32Constant expression) { value = CExpression.relocatable(Float.toHexString(expression.getValue()) + "F"); }
private void transformA(StringBuilder result) { if (arg instanceof Float) { result.append(Float.toHexString(((Float) arg).floatValue())); } else if (arg instanceof Double) { result.append(Double.toHexString(((Double) arg).doubleValue())); } else { throw badArgumentType(); } if (!formatToken.isPrecisionSet()) { return; } int precision = formatToken.getPrecision(); if (precision == 0) { precision = 1; } int indexOfFirstFractionalDigit = result.indexOf(".") + 1; int indexOfP = result.indexOf("p"); int fractionalLength = indexOfP - indexOfFirstFractionalDigit; if (fractionalLength == precision) { return; } if (fractionalLength < precision) { char[] zeros = new char[precision - fractionalLength]; Arrays.fill(zeros, '0'); // %a shouldn't be localized. result.insert(indexOfP, zeros); return; } result.delete(indexOfFirstFractionalDigit + precision, indexOfP); }
@Override public void visit(WasmFloat32Constant expression) { open().append("f32.const " + Float.toHexString(expression.getValue())).close(); }
private void transformA(StringBuilder result) { if (arg instanceof Float) { result.append(Float.toHexString(((Float) arg).floatValue())); } else if (arg instanceof Double) { result.append(Double.toHexString(((Double) arg).doubleValue())); } else { throw badArgumentType(); } if (!formatToken.isPrecisionSet()) { return; } int precision = formatToken.getPrecision(); if (precision == 0) { precision = 1; } int indexOfFirstFractionalDigit = result.indexOf(".") + 1; int indexOfP = result.indexOf("p"); int fractionalLength = indexOfP - indexOfFirstFractionalDigit; if (fractionalLength == precision) { return; } if (fractionalLength < precision) { char[] zeros = new char[precision - fractionalLength]; Arrays.fill(zeros, '0'); // %a shouldn't be localized. result.insert(indexOfP, zeros); return; } result.delete(indexOfFirstFractionalDigit + precision, indexOfP); }
private void transformA(StringBuilder result) { if (arg instanceof Float) { result.append(Float.toHexString(((Float) arg).floatValue())); } else if (arg instanceof Double) { result.append(Double.toHexString(((Double) arg).doubleValue())); } else { throw badArgumentType(); } if (!formatToken.isPrecisionSet()) { return; } int precision = formatToken.getPrecision(); if (precision == 0) { precision = 1; } int indexOfFirstFractionalDigit = result.indexOf(".") + 1; int indexOfP = result.indexOf("p"); int fractionalLength = indexOfP - indexOfFirstFractionalDigit; if (fractionalLength == precision) { return; } if (fractionalLength < precision) { char[] zeros = new char[precision - fractionalLength]; Arrays.fill(zeros, '0'); // %a shouldn't be localized. result.insert(indexOfP, zeros); return; } result.delete(indexOfFirstFractionalDigit + precision, indexOfP); }
private void transformA(StringBuilder result) { if (arg instanceof Float) { result.append(Float.toHexString(((Float) arg).floatValue())); } else if (arg instanceof Double) { result.append(Double.toHexString(((Double) arg).doubleValue())); } else { throw badArgumentType(); } if (!formatToken.isPrecisionSet()) { return; } int precision = formatToken.getPrecision(); if (precision == 0) { precision = 1; } int indexOfFirstFractionalDigit = result.indexOf(".") + 1; int indexOfP = result.indexOf("p"); int fractionalLength = indexOfP - indexOfFirstFractionalDigit; if (fractionalLength == precision) { return; } if (fractionalLength < precision) { char[] zeros = new char[precision - fractionalLength]; Arrays.fill(zeros, '0'); // %a shouldn't be localized. result.insert(indexOfP, zeros); return; } result.delete(indexOfFirstFractionalDigit + precision, indexOfP); }
private void transformA(StringBuilder result) { if (arg instanceof Float) { result.append(Float.toHexString(((Float) arg).floatValue())); } else if (arg instanceof Double) { result.append(Double.toHexString(((Double) arg).doubleValue())); } else { throw badArgumentType(); } if (!formatToken.isPrecisionSet()) { return; } int precision = formatToken.getPrecision(); if (precision == 0) { precision = 1; } int indexOfFirstFractionalDigit = result.indexOf(".") + 1; int indexOfP = result.indexOf("p"); int fractionalLength = indexOfP - indexOfFirstFractionalDigit; if (fractionalLength == precision) { return; } if (fractionalLength < precision) { char[] zeros = new char[precision - fractionalLength]; Arrays.fill(zeros, '0'); // %a shouldn't be localized. result.insert(indexOfP, zeros); return; } result.delete(indexOfFirstFractionalDigit + precision, indexOfP); }
private void transformA(StringBuilder result) { if (arg instanceof Float) { result.append(Float.toHexString(((Float) arg).floatValue())); } else if (arg instanceof Double) { result.append(Double.toHexString(((Double) arg).doubleValue())); } else { throw badArgumentType(); } if (!formatToken.isPrecisionSet()) { return; } int precision = formatToken.getPrecision(); if (precision == 0) { precision = 1; } int indexOfFirstFractionalDigit = result.indexOf(".") + 1; int indexOfP = result.indexOf("p"); int fractionalLength = indexOfP - indexOfFirstFractionalDigit; if (fractionalLength == precision) { return; } if (fractionalLength < precision) { char[] zeros = new char[precision - fractionalLength]; Arrays.fill(zeros, '0'); // %a shouldn't be localized. result.insert(indexOfP, zeros); return; } result.delete(indexOfFirstFractionalDigit + precision, indexOfP); }
private void transformA(StringBuilder result) { if (arg instanceof Float) { result.append(Float.toHexString(((Float) arg).floatValue())); } else if (arg instanceof Double) { result.append(Double.toHexString(((Double) arg).doubleValue())); } else { throw badArgumentType(); } if (!formatToken.isPrecisionSet()) { return; } int precision = formatToken.getPrecision(); if (precision == 0) { precision = 1; } int indexOfFirstFractionalDigit = result.indexOf(".") + 1; int indexOfP = result.indexOf("p"); int fractionalLength = indexOfP - indexOfFirstFractionalDigit; if (fractionalLength == precision) { return; } if (fractionalLength < precision) { char[] zeros = new char[precision - fractionalLength]; Arrays.fill(zeros, '0'); // %a shouldn't be localized. result.insert(indexOfP, zeros); return; } result.delete(indexOfFirstFractionalDigit + precision, indexOfP); }
if (actionParameters.getValue(name) instanceof Float) { type = "FLOAT"; value = Float.toHexString((Float) actionParameters.getValue(name));
@GwtIncompatible // Floats.tryParse public void testTryParseOfToHexStringIsOriginal() { for (float f : NUMBERS) { checkTryParse(f, Float.toHexString(f)); } }