final class com.oracle.truffle.api.interop.NumberUtils
  minor version: 0
  major version: 59
  flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
  this_class: com.oracle.truffle.api.interop.NumberUtils
  super_class: java.lang.Object
{
  private static final double DOUBLE_MAX_SAFE_INTEGER;
    descriptor: D
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 9.007199254740991E15

  static final long LONG_MAX_SAFE_DOUBLE;
    descriptor: J
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 9007199254740991

  private static final float FLOAT_MAX_SAFE_INTEGER;
    descriptor: F
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 1.6777215E7

  static final int INT_MAX_SAFE_FLOAT;
    descriptor: I
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 16777215

  private void <init>();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.api.interop.NumberUtils this
         0: .line 50
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 52
            return
        end local 0 // com.oracle.truffle.api.interop.NumberUtils this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/oracle/truffle/api/interop/NumberUtils;

  static boolean inSafeIntegerRange(double);
    descriptor: (D)Z
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // double d
         0: .line 55
            dload 0 /* d */
            ldc -9.007199254740991E15
            dcmpl
            iflt 1
            dload 0 /* d */
            ldc 9.007199254740991E15
            dcmpg
            ifgt 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // double d
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0     d  D
    MethodParameters:
      Name  Flags
      d     

  static boolean inSafeDoubleRange(long);
    descriptor: (J)Z
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // long l
         0: .line 59
            lload 0 /* l */
            ldc -9007199254740991
            lcmp
            iflt 1
            lload 0 /* l */
            ldc 9007199254740991
            lcmp
            ifgt 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // long l
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0     l  J
    MethodParameters:
      Name  Flags
      l     

  static boolean inSafeFloatRange(int);
    descriptor: (I)Z
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // int i
         0: .line 63
            iload 0 /* i */
            ldc -16777215
            if_icmplt 1
            iload 0 /* i */
            ldc 16777215
            if_icmpgt 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // int i
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0     i  I
    MethodParameters:
      Name  Flags
      i     

  static boolean inSafeIntegerRange(float);
    descriptor: (F)Z
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // float f
         0: .line 67
            fload 0 /* f */
            ldc -1.6777215E7
            fcmpl
            iflt 1
            fload 0 /* f */
            ldc 1.6777215E7
            fcmpg
            ifgt 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // float f
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0     f  F
    MethodParameters:
      Name  Flags
      f     

  static boolean inSafeFloatRange(long);
    descriptor: (J)Z
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // long l
         0: .line 71
            lload 0 /* l */
            ldc -16777215
            lcmp
            iflt 1
            lload 0 /* l */
            ldc 16777215
            lcmp
            ifgt 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // long l
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0     l  J
    MethodParameters:
      Name  Flags
      l     

  static boolean isNegativeZero(double);
    descriptor: (D)Z
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // double d
         0: .line 75
            dload 0 /* d */
            invokestatic java.lang.Double.doubleToRawLongBits:(D)J
            ldc -0.0
            invokestatic java.lang.Double.doubleToRawLongBits:(D)J
            lcmp
            ifne 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // double d
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0     d  D
    MethodParameters:
      Name  Flags
      d     

  static boolean isNegativeZero(float);
    descriptor: (F)Z
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // float f
         0: .line 79
            fload 0 /* f */
            invokestatic java.lang.Float.floatToRawIntBits:(F)I
            ldc -0.0
            invokestatic java.lang.Float.floatToRawIntBits:(F)I
            if_icmpne 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // float f
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0     f  F
    MethodParameters:
      Name  Flags
      f     
}
SourceFile: "NumberUtils.java"