public class org.jruby.RubyFloat extends org.jruby.RubyNumeric
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.jruby.RubyFloat
super_class: org.jruby.RubyNumeric
{
public static final int ROUNDS;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 1
public static final int RADIX;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 2
public static final int MANT_DIG;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 53
public static final int DIG;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 15
public static final int MIN_EXP;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: -1021
public static final int MAX_EXP;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 1024
public static final int MAX_10_EXP;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 308
public static final int MIN_10_EXP;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: -307
public static final double EPSILON;
descriptor: D
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 2.220446049250313E-16
public static final double INFINITY;
descriptor: D
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: Infinity
public static final double NAN;
descriptor: D
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: NaN
public static final int FLOAT_DIG;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 17
final double value;
descriptor: D
flags: (0x0010) ACC_FINAL
static final int DBL_MANT_DIG;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 53
private static final org.jruby.util.ByteList NAN_BYTELIST;
descriptor: Lorg/jruby/util/ByteList;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final org.jruby.util.ByteList NEGATIVE_INFINITY_BYTELIST;
descriptor: Lorg/jruby/util/ByteList;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final org.jruby.util.ByteList INFINITY_BYTELIST;
descriptor: Lorg/jruby/util/ByteList;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static volatile int[] $SWITCH_TABLE$org$jruby$runtime$ClassIndex;
descriptor: [I
flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC
private static volatile int[] $SWITCH_TABLE$java$math$RoundingMode;
descriptor: [I
flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=3, locals=0, args_size=0
0: new org.jruby.util.ByteList
dup
ldc "nan"
invokevirtual java.lang.String.getBytes:()[B
invokespecial org.jruby.util.ByteList.<init>:([B)V
putstatic org.jruby.RubyFloat.NAN_BYTELIST:Lorg/jruby/util/ByteList;
1: new org.jruby.util.ByteList
dup
ldc "-inf"
invokevirtual java.lang.String.getBytes:()[B
invokespecial org.jruby.util.ByteList.<init>:([B)V
putstatic org.jruby.RubyFloat.NEGATIVE_INFINITY_BYTELIST:Lorg/jruby/util/ByteList;
2: new org.jruby.util.ByteList
dup
ldc "inf"
invokevirtual java.lang.String.getBytes:()[B
invokespecial org.jruby.util.ByteList.<init>:([B)V
putstatic org.jruby.RubyFloat.INFINITY_BYTELIST:Lorg/jruby/util/ByteList;
return
LocalVariableTable:
Start End Slot Name Signature
public static org.jruby.RubyClass createFloatClass(org.jruby.Ruby);
descriptor: (Lorg/jruby/Ruby;)Lorg/jruby/RubyClass;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=7, locals=2, args_size=1
start local 0 0: aload 0
ldc "Float"
aload 0
invokevirtual org.jruby.Ruby.getNumeric:()Lorg/jruby/RubyClass;
getstatic org.jruby.runtime.ObjectAllocator.NOT_ALLOCATABLE_ALLOCATOR:Lorg/jruby/runtime/ObjectAllocator;
invokevirtual org.jruby.Ruby.defineClass:(Ljava/lang/String;Lorg/jruby/RubyClass;Lorg/jruby/runtime/ObjectAllocator;)Lorg/jruby/RubyClass;
astore 1
start local 1 1: aload 1
getstatic org.jruby.runtime.ClassIndex.FLOAT:Lorg/jruby/runtime/ClassIndex;
invokevirtual org.jruby.RubyClass.setClassIndex:(Lorg/jruby/runtime/ClassIndex;)V
2: aload 1
ldc Lorg/jruby/RubyFloat;
invokevirtual org.jruby.RubyClass.setReifiedClass:(Ljava/lang/Class;)V
3: aload 1
new org.jruby.RubyModule$JavaClassKindOf
dup
ldc Lorg/jruby/RubyFloat;
invokespecial org.jruby.RubyModule$JavaClassKindOf.<init>:(Ljava/lang/Class;)V
putfield org.jruby.RubyClass.kindOf:Lorg/jruby/RubyModule$KindOf;
4: aload 1
invokevirtual org.jruby.RubyClass.getSingletonClass:()Lorg/jruby/RubyClass;
ldc "new"
invokevirtual org.jruby.RubyClass.undefineMethod:(Ljava/lang/String;)V
5: aload 1
ldc "ROUNDS"
aload 0
lconst_1
invokestatic org.jruby.RubyFixnum.newFixnum:(Lorg/jruby/Ruby;J)Lorg/jruby/RubyFixnum;
invokevirtual org.jruby.RubyClass.defineConstant:(Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)V
6: aload 1
ldc "RADIX"
aload 0
ldc 2
invokestatic org.jruby.RubyFixnum.newFixnum:(Lorg/jruby/Ruby;J)Lorg/jruby/RubyFixnum;
invokevirtual org.jruby.RubyClass.defineConstant:(Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)V
7: aload 1
ldc "MANT_DIG"
aload 0
ldc 53
invokestatic org.jruby.RubyFixnum.newFixnum:(Lorg/jruby/Ruby;J)Lorg/jruby/RubyFixnum;
invokevirtual org.jruby.RubyClass.defineConstant:(Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)V
8: aload 1
ldc "DIG"
aload 0
ldc 15
invokestatic org.jruby.RubyFixnum.newFixnum:(Lorg/jruby/Ruby;J)Lorg/jruby/RubyFixnum;
invokevirtual org.jruby.RubyClass.defineConstant:(Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)V
9: aload 1
ldc "MIN_EXP"
aload 0
ldc -1021
invokestatic org.jruby.RubyFixnum.newFixnum:(Lorg/jruby/Ruby;J)Lorg/jruby/RubyFixnum;
invokevirtual org.jruby.RubyClass.defineConstant:(Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)V
10: aload 1
ldc "MAX_EXP"
aload 0
ldc 1024
invokestatic org.jruby.RubyFixnum.newFixnum:(Lorg/jruby/Ruby;J)Lorg/jruby/RubyFixnum;
invokevirtual org.jruby.RubyClass.defineConstant:(Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)V
11: aload 1
ldc "MIN_10_EXP"
aload 0
ldc -307
invokestatic org.jruby.RubyFixnum.newFixnum:(Lorg/jruby/Ruby;J)Lorg/jruby/RubyFixnum;
invokevirtual org.jruby.RubyClass.defineConstant:(Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)V
12: aload 1
ldc "MAX_10_EXP"
aload 0
ldc 308
invokestatic org.jruby.RubyFixnum.newFixnum:(Lorg/jruby/Ruby;J)Lorg/jruby/RubyFixnum;
invokevirtual org.jruby.RubyClass.defineConstant:(Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)V
13: aload 1
ldc "MIN"
new org.jruby.RubyFloat
dup
aload 1
ldc 2.2250738585072014E-308
invokespecial org.jruby.RubyFloat.<init>:(Lorg/jruby/RubyClass;D)V
invokevirtual org.jruby.RubyClass.defineConstant:(Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)V
14: aload 1
ldc "MAX"
new org.jruby.RubyFloat
dup
aload 1
ldc 1.7976931348623157E308
invokespecial org.jruby.RubyFloat.<init>:(Lorg/jruby/RubyClass;D)V
invokevirtual org.jruby.RubyClass.defineConstant:(Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)V
15: aload 1
ldc "EPSILON"
new org.jruby.RubyFloat
dup
aload 1
ldc 2.220446049250313E-16
invokespecial org.jruby.RubyFloat.<init>:(Lorg/jruby/RubyClass;D)V
invokevirtual org.jruby.RubyClass.defineConstant:(Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)V
16: aload 1
ldc "INFINITY"
new org.jruby.RubyFloat
dup
aload 1
ldc Infinity
invokespecial org.jruby.RubyFloat.<init>:(Lorg/jruby/RubyClass;D)V
invokevirtual org.jruby.RubyClass.defineConstant:(Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)V
17: aload 1
ldc "NAN"
new org.jruby.RubyFloat
dup
aload 1
ldc NaN
invokespecial org.jruby.RubyFloat.<init>:(Lorg/jruby/RubyClass;D)V
invokevirtual org.jruby.RubyClass.defineConstant:(Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)V
18: aload 1
ldc Lorg/jruby/RubyFloat;
invokevirtual org.jruby.RubyClass.defineAnnotatedMethods:(Ljava/lang/Class;)V
19: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 20 0 runtime Lorg/jruby/Ruby;
1 20 1 floatc Lorg/jruby/RubyClass;
MethodParameters:
Name Flags
runtime
public org.jruby.runtime.ClassIndex getNativeClassIndex();
descriptor: ()Lorg/jruby/runtime/ClassIndex;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: getstatic org.jruby.runtime.ClassIndex.FLOAT:Lorg/jruby/runtime/ClassIndex;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyFloat;
public void <init>(org.jruby.Ruby);
descriptor: (Lorg/jruby/Ruby;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
dconst_0
invokespecial org.jruby.RubyFloat.<init>:(Lorg/jruby/Ruby;D)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/jruby/RubyFloat;
0 2 1 runtime Lorg/jruby/Ruby;
MethodParameters:
Name Flags
runtime
public void <init>(org.jruby.Ruby, double);
descriptor: (Lorg/jruby/Ruby;D)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
invokevirtual org.jruby.Ruby.getFloat:()Lorg/jruby/RubyClass;
invokespecial org.jruby.RubyNumeric.<init>:(Lorg/jruby/RubyClass;)V
1: aload 0
dload 2
putfield org.jruby.RubyFloat.value:D
2: aload 0
dup
getfield org.jruby.RubyFloat.flags:I
getstatic org.jruby.RubyFloat.FROZEN_F:I
ior
putfield org.jruby.RubyFloat.flags:I
3: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/jruby/RubyFloat;
0 4 1 runtime Lorg/jruby/Ruby;
0 4 2 value D
MethodParameters:
Name Flags
runtime
value
private void <init>(org.jruby.RubyClass, double);
descriptor: (Lorg/jruby/RubyClass;D)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
invokespecial org.jruby.RubyNumeric.<init>:(Lorg/jruby/RubyClass;)V
1: aload 0
dload 2
putfield org.jruby.RubyFloat.value:D
2: aload 0
dup
getfield org.jruby.RubyFloat.flags:I
getstatic org.jruby.RubyFloat.FROZEN_F:I
ior
putfield org.jruby.RubyFloat.flags:I
3: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/jruby/RubyFloat;
0 4 1 klass Lorg/jruby/RubyClass;
0 4 2 value D
MethodParameters:
Name Flags
klass
value
public org.jruby.RubyClass getSingletonClass();
descriptor: ()Lorg/jruby/RubyClass;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual org.jruby.RubyFloat.getRuntime:()Lorg/jruby/Ruby;
ldc "can't define singleton"
invokevirtual org.jruby.Ruby.newTypeError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyFloat;
public java.lang.Class<?> getJavaClass();
descriptor: ()Ljava/lang/Class;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: getstatic java.lang.Double.TYPE:Ljava/lang/Class;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyFloat;
Signature: ()Ljava/lang/Class<*>;
public double getValue();
descriptor: ()D
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield org.jruby.RubyFloat.value:D
dreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyFloat;
public double getDoubleValue();
descriptor: ()D
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield org.jruby.RubyFloat.value:D
dreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyFloat;
public long getLongValue();
descriptor: ()J
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield org.jruby.RubyFloat.value:D
d2l
lreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyFloat;
public int getIntValue();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield org.jruby.RubyFloat.value:D
d2i
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyFloat;
public java.math.BigInteger getBigIntegerValue();
descriptor: ()Ljava/math/BigInteger;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield org.jruby.RubyFloat.value:D
invokestatic org.jruby.RubyBignum.toBigInteger:(D)Ljava/math/BigInteger;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyFloat;
public org.jruby.RubyFloat convertToFloat();
descriptor: ()Lorg/jruby/RubyFloat;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyFloat;
public org.jruby.RubyInteger convertToInteger();
descriptor: ()Lorg/jruby/RubyInteger;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
aload 0
getfield org.jruby.RubyFloat.metaClass:Lorg/jruby/RubyClass;
getfield org.jruby.RubyClass.runtime:Lorg/jruby/Ruby;
invokevirtual org.jruby.RubyFloat.toInteger:(Lorg/jruby/Ruby;)Lorg/jruby/RubyInteger;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyFloat;
private org.jruby.RubyInteger toInteger(org.jruby.Ruby);
descriptor: (Lorg/jruby/Ruby;)Lorg/jruby/RubyInteger;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.jruby.RubyFloat.value:D
dconst_0
dcmpl
ifle 1
aload 1
aload 0
getfield org.jruby.RubyFloat.value:D
invokestatic java.lang.Math.floor:(D)D
invokestatic org.jruby.RubyFloat.dbl2ival:(Lorg/jruby/Ruby;D)Lorg/jruby/RubyInteger;
areturn
1: StackMap locals:
StackMap stack:
aload 1
aload 0
getfield org.jruby.RubyFloat.value:D
invokestatic java.lang.Math.ceil:(D)D
invokestatic org.jruby.RubyFloat.dbl2ival:(Lorg/jruby/Ruby;D)Lorg/jruby/RubyInteger;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/jruby/RubyFloat;
0 2 1 runtime Lorg/jruby/Ruby;
MethodParameters:
Name Flags
runtime final
public int signum();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield org.jruby.RubyFloat.value:D
invokestatic java.lang.Math.signum:(D)D
d2i
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyFloat;
public org.jruby.runtime.builtin.IRubyObject isNegative(org.jruby.runtime.ThreadContext);
descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
aload 0
invokevirtual org.jruby.RubyFloat.isNegative:()Z
invokestatic org.jruby.RubyBoolean.newBoolean:(Lorg/jruby/runtime/ThreadContext;Z)Lorg/jruby/RubyBoolean;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyFloat;
0 1 1 context Lorg/jruby/runtime/ThreadContext;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"negative?"})
MethodParameters:
Name Flags
context
public org.jruby.runtime.builtin.IRubyObject isPositive(org.jruby.runtime.ThreadContext);
descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
aload 0
invokevirtual org.jruby.RubyFloat.isPositive:()Z
invokestatic org.jruby.RubyBoolean.newBoolean:(Lorg/jruby/runtime/ThreadContext;Z)Lorg/jruby/RubyBoolean;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyFloat;
0 1 1 context Lorg/jruby/runtime/ThreadContext;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"positive?"})
MethodParameters:
Name Flags
context
public boolean isNegative();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual org.jruby.RubyFloat.signum:()I
ifge 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/jruby/RubyFloat;
public boolean isPositive();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual org.jruby.RubyFloat.signum:()I
ifle 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/jruby/RubyFloat;
public static org.jruby.RubyFloat newFloat(org.jruby.Ruby, double);
descriptor: (Lorg/jruby/Ruby;D)Lorg/jruby/RubyFloat;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=3, args_size=2
start local 0 start local 1 0: new org.jruby.RubyFloat
dup
aload 0
dload 1
invokespecial org.jruby.RubyFloat.<init>:(Lorg/jruby/Ruby;D)V
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 runtime Lorg/jruby/Ruby;
0 1 1 value D
MethodParameters:
Name Flags
runtime
value
public static org.jruby.runtime.builtin.IRubyObject induced_from(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 2
instanceof org.jruby.RubyFixnum
ifne 1
aload 2
instanceof org.jruby.RubyBignum
ifne 1
aload 2
instanceof org.jruby.RubyRational
ifeq 2
1: StackMap locals:
StackMap stack:
aload 2
aload 0
ldc "to_f"
invokeinterface org.jruby.runtime.builtin.IRubyObject.callMethod:(Lorg/jruby/runtime/ThreadContext;Ljava/lang/String;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
2: StackMap locals:
StackMap stack:
aload 2
instanceof org.jruby.RubyFloat
ifeq 4
3: aload 2
areturn
4: StackMap locals:
StackMap stack:
aload 0
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
new java.lang.StringBuilder
dup
ldc "failed to convert "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
invokeinterface org.jruby.runtime.builtin.IRubyObject.getMetaClass:()Lorg/jruby/RubyClass;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc " into Float"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual org.jruby.Ruby.newTypeError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 context Lorg/jruby/runtime/ThreadContext;
0 5 1 recv Lorg/jruby/runtime/builtin/IRubyObject;
0 5 2 number Lorg/jruby/runtime/builtin/IRubyObject;
RuntimeVisibleAnnotations:
java.lang.Deprecated()
MethodParameters:
Name Flags
context
recv
number
public org.jruby.runtime.builtin.IRubyObject to_s();
descriptor: ()Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=6, args_size=1
start local 0 0: aload 0
getfield org.jruby.RubyFloat.metaClass:Lorg/jruby/RubyClass;
getfield org.jruby.RubyClass.runtime:Lorg/jruby/Ruby;
astore 1
start local 1 1: aload 0
getfield org.jruby.RubyFloat.value:D
invokestatic java.lang.Double.isInfinite:(D)Z
ifeq 5
2: aload 1
aload 0
getfield org.jruby.RubyFloat.value:D
dconst_0
dcmpg
ifge 3
ldc "-Infinity"
goto 4
StackMap locals: org.jruby.RubyFloat org.jruby.Ruby
StackMap stack: org.jruby.Ruby
3: ldc "Infinity"
StackMap locals: org.jruby.RubyFloat org.jruby.Ruby
StackMap stack: org.jruby.Ruby java.lang.String
4: invokestatic org.jruby.RubyString.newString:(Lorg/jruby/Ruby;Ljava/lang/String;)Lorg/jruby/RubyString;
areturn
5: StackMap locals:
StackMap stack:
aload 0
getfield org.jruby.RubyFloat.value:D
invokestatic java.lang.Double.isNaN:(D)Z
ifeq 7
6: aload 1
ldc "NaN"
invokestatic org.jruby.RubyString.newString:(Lorg/jruby/Ruby;Ljava/lang/String;)Lorg/jruby/RubyString;
areturn
7: StackMap locals:
StackMap stack:
new org.jruby.util.ByteList
dup
invokespecial org.jruby.util.ByteList.<init>:()V
astore 2
start local 2 8: aload 2
getstatic java.util.Locale.US:Ljava/util/Locale;
ldc "%#.20g"
aload 0
invokestatic org.jruby.util.Sprintf.sprintf:(Lorg/jruby/util/ByteList;Ljava/util/Locale;Ljava/lang/CharSequence;Lorg/jruby/runtime/builtin/IRubyObject;)Z
pop
9: aload 2
bipush 101
invokevirtual org.jruby.util.ByteList.indexOf:(I)I
istore 3
start local 3 10: iload 3
iconst_m1
if_icmpne 11
aload 2
invokevirtual org.jruby.util.ByteList.getRealSize:()I
istore 3
11: StackMap locals: org.jruby.util.ByteList int
StackMap stack:
getstatic org.jcodings.specific.ASCIIEncoding.INSTANCE:Lorg/jcodings/specific/ASCIIEncoding;
astore 4
start local 4 12: aload 4
aload 2
iload 3
iconst_1
isub
invokevirtual org.jruby.util.ByteList.get:(I)I
invokevirtual org.jcodings.specific.ASCIIEncoding.isDigit:(I)Z
ifne 17
13: aload 2
iconst_0
invokevirtual org.jruby.util.ByteList.setRealSize:(I)V
14: aload 2
getstatic java.util.Locale.US:Ljava/util/Locale;
ldc "%#.14e"
aload 0
invokestatic org.jruby.util.Sprintf.sprintf:(Lorg/jruby/util/ByteList;Ljava/util/Locale;Ljava/lang/CharSequence;Lorg/jruby/runtime/builtin/IRubyObject;)Z
pop
15: aload 2
bipush 101
invokevirtual org.jruby.util.ByteList.indexOf:(I)I
istore 3
16: iload 3
iconst_m1
if_icmpne 17
aload 2
invokevirtual org.jruby.util.ByteList.getRealSize:()I
istore 3
17: StackMap locals: org.jcodings.specific.ASCIIEncoding
StackMap stack:
iload 3
istore 5
start local 5 18: goto 20
StackMap locals: int
StackMap stack:
19: iinc 5 -1
StackMap locals:
StackMap stack:
20: aload 2
iload 5
iconst_1
isub
invokevirtual org.jruby.util.ByteList.get:(I)I
bipush 48
if_icmpne 21
aload 4
aload 2
iload 5
iconst_2
isub
invokevirtual org.jruby.util.ByteList.get:(I)I
invokevirtual org.jcodings.specific.ASCIIEncoding.isDigit:(I)Z
ifne 19
21: StackMap locals:
StackMap stack:
aload 2
invokevirtual org.jruby.util.ByteList.getUnsafeBytes:()[B
iload 3
aload 2
invokevirtual org.jruby.util.ByteList.getUnsafeBytes:()[B
iload 5
aload 2
invokevirtual org.jruby.util.ByteList.getRealSize:()I
iload 3
isub
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
22: aload 2
iload 5
aload 2
invokevirtual org.jruby.util.ByteList.getRealSize:()I
iadd
iload 3
isub
invokevirtual org.jruby.util.ByteList.setRealSize:(I)V
23: aload 2
getstatic org.jcodings.specific.USASCIIEncoding.INSTANCE:Lorg/jcodings/specific/USASCIIEncoding;
invokevirtual org.jruby.util.ByteList.setEncoding:(Lorg/jcodings/Encoding;)V
24: aload 1
aload 2
invokevirtual org.jruby.Ruby.newString:(Lorg/jruby/util/ByteList;)Lorg/jruby/RubyString;
areturn
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 25 0 this Lorg/jruby/RubyFloat;
1 25 1 runtime Lorg/jruby/Ruby;
8 25 2 buf Lorg/jruby/util/ByteList;
10 25 3 e I
12 25 4 ascii Lorg/jcodings/specific/ASCIIEncoding;
18 25 5 p I
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"to_s", "inspect"})
public org.jruby.runtime.builtin.IRubyObject coerce(org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield org.jruby.RubyFloat.metaClass:Lorg/jruby/RubyClass;
getfield org.jruby.RubyClass.runtime:Lorg/jruby/Ruby;
astore 2
start local 2 1: aload 2
aload 2
aload 1
invokestatic org.jruby.RubyKernel.new_float:(Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyFloat;
aload 0
invokevirtual org.jruby.Ruby.newArray:(Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyArray;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/jruby/RubyFloat;
0 2 1 other Lorg/jruby/runtime/builtin/IRubyObject;
1 2 2 runtime Lorg/jruby/Ruby;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"coerce"}, required = 1)
MethodParameters:
Name Flags
other
public org.jruby.runtime.builtin.IRubyObject op_uminus(org.jruby.runtime.ThreadContext);
descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
aload 0
getfield org.jruby.RubyFloat.value:D
dneg
invokestatic org.jruby.RubyFloat.newFloat:(Lorg/jruby/Ruby;D)Lorg/jruby/RubyFloat;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyFloat;
0 1 1 context Lorg/jruby/runtime/ThreadContext;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"-@"})
MethodParameters:
Name Flags
context
public org.jruby.runtime.builtin.IRubyObject op_uminus();
descriptor: ()Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual org.jruby.RubyFloat.getRuntime:()Lorg/jruby/Ruby;
aload 0
getfield org.jruby.RubyFloat.value:D
dneg
invokestatic org.jruby.RubyFloat.newFloat:(Lorg/jruby/Ruby;D)Lorg/jruby/RubyFloat;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyFloat;
RuntimeVisibleAnnotations:
java.lang.Deprecated()
public org.jruby.runtime.builtin.IRubyObject op_plus(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=3
start local 0 start local 1 start local 2 0: invokestatic org.jruby.RubyFloat.$SWITCH_TABLE$org$jruby$runtime$ClassIndex:()[I
aload 2
invokeinterface org.jruby.runtime.builtin.IRubyObject.getMetaClass:()Lorg/jruby/RubyClass;
invokevirtual org.jruby.RubyClass.getClassIndex:()Lorg/jruby/runtime/ClassIndex;
invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
iaload
lookupswitch { // 2
12: 1
17: 1
default: 2
}
1: StackMap locals:
StackMap stack:
aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
aload 0
getfield org.jruby.RubyFloat.value:D
aload 2
checkcast org.jruby.RubyNumeric
invokevirtual org.jruby.RubyNumeric.getDoubleValue:()D
dadd
invokestatic org.jruby.RubyFloat.newFloat:(Lorg/jruby/Ruby;D)Lorg/jruby/RubyFloat;
areturn
2: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 1
invokestatic org.jruby.RubyFloat.sites:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/JavaSites$FloatSites;
getfield org.jruby.runtime.JavaSites$FloatSites.op_plus:Lorg/jruby/runtime/CallSite;
aload 2
invokevirtual org.jruby.RubyFloat.coerceBin:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/CallSite;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/jruby/RubyFloat;
0 3 1 context Lorg/jruby/runtime/ThreadContext;
0 3 2 other Lorg/jruby/runtime/builtin/IRubyObject;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"+"}, required = 1)
MethodParameters:
Name Flags
context
other
public org.jruby.runtime.builtin.IRubyObject op_plus(org.jruby.runtime.ThreadContext, double);
descriptor: (Lorg/jruby/runtime/ThreadContext;D)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
aload 0
getfield org.jruby.RubyFloat.value:D
dload 2
dadd
invokestatic org.jruby.RubyFloat.newFloat:(Lorg/jruby/Ruby;D)Lorg/jruby/RubyFloat;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyFloat;
0 1 1 context Lorg/jruby/runtime/ThreadContext;
0 1 2 other D
MethodParameters:
Name Flags
context
other
public org.jruby.runtime.builtin.IRubyObject op_minus(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=3
start local 0 start local 1 start local 2 0: invokestatic org.jruby.RubyFloat.$SWITCH_TABLE$org$jruby$runtime$ClassIndex:()[I
aload 2
invokeinterface org.jruby.runtime.builtin.IRubyObject.getMetaClass:()Lorg/jruby/RubyClass;
invokevirtual org.jruby.RubyClass.getClassIndex:()Lorg/jruby/runtime/ClassIndex;
invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
iaload
lookupswitch { // 2
12: 1
17: 1
default: 2
}
1: StackMap locals:
StackMap stack:
aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
aload 0
getfield org.jruby.RubyFloat.value:D
aload 2
checkcast org.jruby.RubyNumeric
invokevirtual org.jruby.RubyNumeric.getDoubleValue:()D
dsub
invokestatic org.jruby.RubyFloat.newFloat:(Lorg/jruby/Ruby;D)Lorg/jruby/RubyFloat;
areturn
2: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 1
invokestatic org.jruby.RubyFloat.sites:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/JavaSites$FloatSites;
getfield org.jruby.runtime.JavaSites$FloatSites.op_minus:Lorg/jruby/runtime/CallSite;
aload 2
invokevirtual org.jruby.RubyFloat.coerceBin:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/CallSite;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/jruby/RubyFloat;
0 3 1 context Lorg/jruby/runtime/ThreadContext;
0 3 2 other Lorg/jruby/runtime/builtin/IRubyObject;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"-"}, required = 1)
MethodParameters:
Name Flags
context
other
public org.jruby.runtime.builtin.IRubyObject op_minus(org.jruby.runtime.ThreadContext, double);
descriptor: (Lorg/jruby/runtime/ThreadContext;D)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
aload 0
getfield org.jruby.RubyFloat.value:D
dload 2
dsub
invokestatic org.jruby.RubyFloat.newFloat:(Lorg/jruby/Ruby;D)Lorg/jruby/RubyFloat;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyFloat;
0 1 1 context Lorg/jruby/runtime/ThreadContext;
0 1 2 other D
MethodParameters:
Name Flags
context
other
public org.jruby.runtime.builtin.IRubyObject op_mul(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=3
start local 0 start local 1 start local 2 0: invokestatic org.jruby.RubyFloat.$SWITCH_TABLE$org$jruby$runtime$ClassIndex:()[I
aload 2
invokeinterface org.jruby.runtime.builtin.IRubyObject.getMetaClass:()Lorg/jruby/RubyClass;
invokevirtual org.jruby.RubyClass.getClassIndex:()Lorg/jruby/runtime/ClassIndex;
invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
iaload
lookupswitch { // 2
12: 1
17: 1
default: 2
}
1: StackMap locals:
StackMap stack:
aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
aload 0
getfield org.jruby.RubyFloat.value:D
aload 2
checkcast org.jruby.RubyNumeric
invokevirtual org.jruby.RubyNumeric.getDoubleValue:()D
dmul
invokestatic org.jruby.RubyFloat.newFloat:(Lorg/jruby/Ruby;D)Lorg/jruby/RubyFloat;
areturn
2: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 1
invokestatic org.jruby.RubyFloat.sites:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/JavaSites$FloatSites;
getfield org.jruby.runtime.JavaSites$FloatSites.op_times:Lorg/jruby/runtime/CallSite;
aload 2
invokevirtual org.jruby.RubyFloat.coerceBin:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/CallSite;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/jruby/RubyFloat;
0 3 1 context Lorg/jruby/runtime/ThreadContext;
0 3 2 other Lorg/jruby/runtime/builtin/IRubyObject;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"*"}, required = 1)
MethodParameters:
Name Flags
context
other
public org.jruby.runtime.builtin.IRubyObject op_mul(org.jruby.runtime.ThreadContext, double);
descriptor: (Lorg/jruby/runtime/ThreadContext;D)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
aload 0
getfield org.jruby.RubyFloat.value:D
dload 2
dmul
invokestatic org.jruby.RubyFloat.newFloat:(Lorg/jruby/Ruby;D)Lorg/jruby/RubyFloat;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyFloat;
0 1 1 context Lorg/jruby/runtime/ThreadContext;
0 1 2 other D
MethodParameters:
Name Flags
context
other
public org.jruby.runtime.builtin.IRubyObject op_div(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=3
start local 0 start local 1 start local 2 0: invokestatic org.jruby.RubyFloat.$SWITCH_TABLE$org$jruby$runtime$ClassIndex:()[I
aload 2
invokestatic org.jruby.RubyFloat.getMetaClass:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyClass;
invokevirtual org.jruby.RubyClass.getClassIndex:()Lorg/jruby/runtime/ClassIndex;
invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
iaload
lookupswitch { // 2
12: 1
17: 1
default: 5
}
1: StackMap locals:
StackMap stack:
aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
aload 0
getfield org.jruby.RubyFloat.value:D
aload 2
checkcast org.jruby.RubyNumeric
invokevirtual org.jruby.RubyNumeric.getDoubleValue:()D
ddiv
invokestatic org.jruby.RubyFloat.newFloat:(Lorg/jruby/Ruby;D)Lorg/jruby/RubyFloat;
2: areturn
3: StackMap locals:
StackMap stack: java.lang.NumberFormatException
pop
4: aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
aload 2
invokevirtual java.lang.Object.toString:()Ljava/lang/String;
invokevirtual org.jruby.Ruby.newFloatDomainError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
athrow
5: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 1
invokestatic org.jruby.RubyFloat.sites:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/JavaSites$FloatSites;
getfield org.jruby.runtime.JavaSites$FloatSites.op_quo:Lorg/jruby/runtime/CallSite;
aload 2
invokevirtual org.jruby.RubyFloat.coerceBin:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/CallSite;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/jruby/RubyFloat;
0 6 1 context Lorg/jruby/runtime/ThreadContext;
0 6 2 other Lorg/jruby/runtime/builtin/IRubyObject;
Exception table:
from to target type
1 2 3 Class java.lang.NumberFormatException
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"/"}, required = 1)
MethodParameters:
Name Flags
context
other
public org.jruby.runtime.builtin.IRubyObject op_div(org.jruby.runtime.ThreadContext, double);
descriptor: (Lorg/jruby/runtime/ThreadContext;D)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
aload 0
getfield org.jruby.RubyFloat.value:D
dload 2
ddiv
invokestatic org.jruby.RubyFloat.newFloat:(Lorg/jruby/Ruby;D)Lorg/jruby/RubyFloat;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyFloat;
0 1 1 context Lorg/jruby/runtime/ThreadContext;
0 1 2 other D
MethodParameters:
Name Flags
context
other
public org.jruby.runtime.builtin.IRubyObject quo(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
aload 0
aload 1
invokestatic org.jruby.RubyFloat.sites:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/JavaSites$FloatSites;
getfield org.jruby.runtime.JavaSites$FloatSites.op_quo:Lorg/jruby/runtime/CallSite;
aload 2
invokestatic org.jruby.RubyFloat.numFuncall:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/CallSite;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyFloat;
0 1 1 context Lorg/jruby/runtime/ThreadContext;
0 1 2 other Lorg/jruby/runtime/builtin/IRubyObject;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"quo", "fdiv"})
MethodParameters:
Name Flags
context
other
public org.jruby.runtime.builtin.IRubyObject op_mod(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: invokestatic org.jruby.RubyFloat.$SWITCH_TABLE$org$jruby$runtime$ClassIndex:()[I
aload 2
invokestatic org.jruby.RubyFloat.getMetaClass:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyClass;
invokevirtual org.jruby.RubyClass.getClassIndex:()Lorg/jruby/runtime/ClassIndex;
invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
iaload
lookupswitch { // 2
12: 1
17: 1
default: 2
}
1: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
checkcast org.jruby.RubyNumeric
invokevirtual org.jruby.RubyNumeric.getDoubleValue:()D
invokevirtual org.jruby.RubyFloat.op_mod:(Lorg/jruby/runtime/ThreadContext;D)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
2: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 1
invokestatic org.jruby.RubyFloat.sites:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/JavaSites$FloatSites;
getfield org.jruby.runtime.JavaSites$FloatSites.op_mod:Lorg/jruby/runtime/CallSite;
aload 2
invokevirtual org.jruby.RubyFloat.coerceBin:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/CallSite;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/jruby/RubyFloat;
0 3 1 context Lorg/jruby/runtime/ThreadContext;
0 3 2 other Lorg/jruby/runtime/builtin/IRubyObject;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"%", "modulo"}, required = 1)
MethodParameters:
Name Flags
context
other
public org.jruby.runtime.builtin.IRubyObject op_mod(org.jruby.runtime.ThreadContext, double);
descriptor: (Lorg/jruby/runtime/ThreadContext;D)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=8, args_size=3
start local 0 start local 1 start local 2 0: dload 2
dconst_0
dcmpl
ifne 1
aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
invokevirtual org.jruby.Ruby.newZeroDivisionError:()Lorg/jruby/exceptions/RaiseException;
athrow
1: StackMap locals:
StackMap stack:
aload 0
getfield org.jruby.RubyFloat.value:D
dstore 4
start local 4 2: dload 4
dload 2
invokestatic java.lang.Math.IEEEremainder:(DD)D
dstore 6
start local 6 3: dload 2
dload 6
dmul
dconst_0
dcmpg
ifge 5
4: dload 6
dload 2
dadd
dstore 6
5: StackMap locals: double double
StackMap stack:
aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
dload 6
invokestatic org.jruby.RubyFloat.newFloat:(Lorg/jruby/Ruby;D)Lorg/jruby/RubyFloat;
areturn
end local 6 end local 4 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/jruby/RubyFloat;
0 6 1 context Lorg/jruby/runtime/ThreadContext;
0 6 2 other D
2 6 4 x D
3 6 6 mod D
MethodParameters:
Name Flags
context
other
public final org.jruby.runtime.builtin.IRubyObject op_mod19(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
invokevirtual org.jruby.RubyFloat.op_mod:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyFloat;
0 1 1 context Lorg/jruby/runtime/ThreadContext;
0 1 2 other Lorg/jruby/runtime/builtin/IRubyObject;
RuntimeVisibleAnnotations:
java.lang.Deprecated()
MethodParameters:
Name Flags
context
other
public org.jruby.runtime.builtin.IRubyObject divmod(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=14, args_size=3
start local 0 start local 1 start local 2 0: invokestatic org.jruby.RubyFloat.$SWITCH_TABLE$org$jruby$runtime$ClassIndex:()[I
aload 2
invokestatic org.jruby.RubyFloat.getMetaClass:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyClass;
invokevirtual org.jruby.RubyClass.getClassIndex:()Lorg/jruby/runtime/ClassIndex;
invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
iaload
lookupswitch { // 2
12: 1
17: 1
default: 14
}
1: StackMap locals:
StackMap stack:
aload 2
checkcast org.jruby.RubyNumeric
invokevirtual org.jruby.RubyNumeric.getDoubleValue:()D
dstore 3
start local 3 2: dload 3
dconst_0
dcmpl
ifne 3
aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
invokevirtual org.jruby.Ruby.newZeroDivisionError:()Lorg/jruby/exceptions/RaiseException;
athrow
3: StackMap locals: double
StackMap stack:
aload 0
getfield org.jruby.RubyFloat.value:D
dstore 5
start local 5 4: dload 5
dload 3
invokestatic java.lang.Math.IEEEremainder:(DD)D
dstore 7
start local 7 5: dload 7
invokestatic java.lang.Double.isNaN:(D)Z
ifeq 7
6: aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
ldc "NaN"
invokevirtual org.jruby.Ruby.newFloatDomainError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
athrow
7: StackMap locals: double double
StackMap stack:
dload 5
dload 3
ddiv
invokestatic java.lang.Math.floor:(D)D
dstore 9
start local 9 8: dload 3
dload 7
dmul
dconst_0
dcmpg
ifge 10
9: dload 7
dload 3
dadd
dstore 7
10: StackMap locals: double
StackMap stack:
aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
astore 11
start local 11 11: aload 11
dload 9
invokestatic org.jruby.RubyFloat.dbl2ival:(Lorg/jruby/Ruby;D)Lorg/jruby/RubyInteger;
astore 12
start local 12 12: aload 11
dload 7
invokestatic org.jruby.RubyFloat.newFloat:(Lorg/jruby/Ruby;D)Lorg/jruby/RubyFloat;
astore 13
start local 13 13: aload 11
aload 12
aload 13
invokestatic org.jruby.RubyArray.newArray:(Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyArray;
areturn
end local 13 end local 12 end local 11 end local 9 end local 7 end local 5 end local 3 14: StackMap locals: org.jruby.RubyFloat org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject
StackMap stack:
aload 0
aload 1
aload 1
invokestatic org.jruby.RubyFloat.sites:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/JavaSites$FloatSites;
getfield org.jruby.runtime.JavaSites$FloatSites.divmod:Lorg/jruby/runtime/CallSite;
aload 2
invokevirtual org.jruby.RubyFloat.coerceBin:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/CallSite;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Lorg/jruby/RubyFloat;
0 15 1 context Lorg/jruby/runtime/ThreadContext;
0 15 2 other Lorg/jruby/runtime/builtin/IRubyObject;
2 14 3 y D
4 14 5 x D
5 14 7 mod D
8 14 9 div D
11 14 11 runtime Lorg/jruby/Ruby;
12 14 12 car Lorg/jruby/RubyInteger;
13 14 13 cdr Lorg/jruby/RubyFloat;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"divmod"}, required = 1)
MethodParameters:
Name Flags
context
other
public org.jruby.runtime.builtin.IRubyObject op_pow(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=6, args_size=3
start local 0 start local 1 start local 2 0: invokestatic org.jruby.RubyFloat.$SWITCH_TABLE$org$jruby$runtime$ClassIndex:()[I
aload 2
invokeinterface org.jruby.runtime.builtin.IRubyObject.getMetaClass:()Lorg/jruby/RubyClass;
invokevirtual org.jruby.RubyClass.getClassIndex:()Lorg/jruby/runtime/ClassIndex;
invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
iaload
lookupswitch { // 2
12: 1
17: 1
default: 6
}
1: StackMap locals:
StackMap stack:
aload 2
checkcast org.jruby.RubyNumeric
invokevirtual org.jruby.RubyNumeric.getDoubleValue:()D
dstore 3
start local 3 2: aload 0
getfield org.jruby.RubyFloat.value:D
dconst_0
dcmpg
ifge 5
dload 3
dload 3
invokestatic java.lang.Math.round:(D)J
l2d
dcmpl
ifeq 5
3: aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
aload 0
invokestatic org.jruby.RubyComplex.newComplexRaw:(Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyComplex;
astore 5
start local 5 4: aload 1
invokestatic org.jruby.RubyFloat.sites:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/JavaSites$FloatSites;
getfield org.jruby.runtime.JavaSites$FloatSites.op_exp:Lorg/jruby/runtime/CallSite;
aload 1
aload 5
aload 5
aload 2
invokevirtual org.jruby.runtime.CallSite.call:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 5 5: StackMap locals: double
StackMap stack:
aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
aload 0
getfield org.jruby.RubyFloat.value:D
dload 3
invokestatic java.lang.Math.pow:(DD)D
invokestatic org.jruby.RubyFloat.newFloat:(Lorg/jruby/Ruby;D)Lorg/jruby/RubyFloat;
areturn
end local 3 6: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 1
invokestatic org.jruby.RubyFloat.sites:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/JavaSites$FloatSites;
getfield org.jruby.runtime.JavaSites$FloatSites.op_exp:Lorg/jruby/runtime/CallSite;
aload 2
invokevirtual org.jruby.RubyFloat.coerceBin:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/CallSite;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/jruby/RubyFloat;
0 7 1 context Lorg/jruby/runtime/ThreadContext;
0 7 2 other Lorg/jruby/runtime/builtin/IRubyObject;
2 6 3 d_other D
4 5 5 complex Lorg/jruby/RubyComplex;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"**"}, required = 1)
MethodParameters:
Name Flags
context
other
public org.jruby.runtime.builtin.IRubyObject op_pow(org.jruby.runtime.ThreadContext, double);
descriptor: (Lorg/jruby/runtime/ThreadContext;D)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
aload 0
getfield org.jruby.RubyFloat.value:D
dload 2
invokestatic java.lang.Math.pow:(DD)D
invokestatic org.jruby.RubyFloat.newFloat:(Lorg/jruby/Ruby;D)Lorg/jruby/RubyFloat;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyFloat;
0 1 1 context Lorg/jruby/runtime/ThreadContext;
0 1 2 other D
MethodParameters:
Name Flags
context
other
public org.jruby.runtime.builtin.IRubyObject op_pow19(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
invokevirtual org.jruby.RubyFloat.op_pow:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyFloat;
0 1 1 context Lorg/jruby/runtime/ThreadContext;
0 1 2 other Lorg/jruby/runtime/builtin/IRubyObject;
RuntimeVisibleAnnotations:
java.lang.Deprecated()
MethodParameters:
Name Flags
context
other
public org.jruby.runtime.builtin.IRubyObject op_equal(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.jruby.RubyFloat.value:D
invokestatic java.lang.Double.isNaN:(D)Z
ifeq 2
1: aload 1
getfield org.jruby.runtime.ThreadContext.fals:Lorg/jruby/RubyBoolean;
areturn
2: StackMap locals:
StackMap stack:
invokestatic org.jruby.RubyFloat.$SWITCH_TABLE$org$jruby$runtime$ClassIndex:()[I
aload 2
invokeinterface org.jruby.runtime.builtin.IRubyObject.getMetaClass:()Lorg/jruby/RubyClass;
invokevirtual org.jruby.RubyClass.getClassIndex:()Lorg/jruby/runtime/ClassIndex;
invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
iaload
lookupswitch { // 2
12: 3
17: 3
default: 6
}
3: StackMap locals:
StackMap stack:
aload 1
aload 0
getfield org.jruby.RubyFloat.value:D
aload 2
checkcast org.jruby.RubyNumeric
invokevirtual org.jruby.RubyNumeric.getDoubleValue:()D
dcmpl
ifne 4
iconst_1
goto 5
StackMap locals:
StackMap stack: org.jruby.runtime.ThreadContext
4: iconst_0
StackMap locals: org.jruby.RubyFloat org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject
StackMap stack: org.jruby.runtime.ThreadContext int
5: invokestatic org.jruby.RubyBoolean.newBoolean:(Lorg/jruby/runtime/ThreadContext;Z)Lorg/jruby/RubyBoolean;
areturn
6: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
invokespecial org.jruby.RubyNumeric.op_num_equal:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/jruby/RubyFloat;
0 7 1 context Lorg/jruby/runtime/ThreadContext;
0 7 2 other Lorg/jruby/runtime/builtin/IRubyObject;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"==", "==="}, required = 1)
MethodParameters:
Name Flags
context
other
public org.jruby.runtime.builtin.IRubyObject op_equal(org.jruby.runtime.ThreadContext, double);
descriptor: (Lorg/jruby/runtime/ThreadContext;D)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.jruby.RubyFloat.value:D
invokestatic java.lang.Double.isNaN:(D)Z
ifeq 2
1: aload 1
getfield org.jruby.runtime.ThreadContext.fals:Lorg/jruby/RubyBoolean;
areturn
2: StackMap locals:
StackMap stack:
aload 1
aload 0
getfield org.jruby.RubyFloat.value:D
dload 2
dcmpl
ifne 3
iconst_1
goto 4
StackMap locals:
StackMap stack: org.jruby.runtime.ThreadContext
3: iconst_0
StackMap locals: org.jruby.RubyFloat org.jruby.runtime.ThreadContext double
StackMap stack: org.jruby.runtime.ThreadContext int
4: invokestatic org.jruby.RubyBoolean.newBoolean:(Lorg/jruby/runtime/ThreadContext;Z)Lorg/jruby/RubyBoolean;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/jruby/RubyFloat;
0 5 1 context Lorg/jruby/runtime/ThreadContext;
0 5 2 other D
MethodParameters:
Name Flags
context
other
public boolean fastEqual(org.jruby.RubyFloat);
descriptor: (Lorg/jruby/RubyFloat;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.jruby.RubyFloat.value:D
invokestatic java.lang.Double.isNaN:(D)Z
ifeq 1
iconst_0
goto 3
StackMap locals:
StackMap stack:
1: aload 0
getfield org.jruby.RubyFloat.value:D
aload 1
getfield org.jruby.RubyFloat.value:D
dcmpl
ifne 2
iconst_1
goto 3
StackMap locals:
StackMap stack:
2: iconst_0
StackMap locals:
StackMap stack: int
3: ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/jruby/RubyFloat;
0 4 1 other Lorg/jruby/RubyFloat;
MethodParameters:
Name Flags
other
public final int compareTo(org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;)I
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: invokestatic org.jruby.RubyFloat.$SWITCH_TABLE$org$jruby$runtime$ClassIndex:()[I
aload 1
invokeinterface org.jruby.runtime.builtin.IRubyObject.getMetaClass:()Lorg/jruby/RubyClass;
invokevirtual org.jruby.RubyClass.getClassIndex:()Lorg/jruby/runtime/ClassIndex;
invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
iaload
lookupswitch { // 2
12: 1
17: 1
default: 2
}
1: StackMap locals:
StackMap stack:
aload 0
getfield org.jruby.RubyFloat.value:D
aload 1
checkcast org.jruby.RubyNumeric
invokevirtual org.jruby.RubyNumeric.getDoubleValue:()D
invokestatic java.lang.Double.compare:(DD)I
ireturn
2: StackMap locals:
StackMap stack:
aload 0
getfield org.jruby.RubyFloat.metaClass:Lorg/jruby/RubyClass;
getfield org.jruby.RubyClass.runtime:Lorg/jruby/Ruby;
invokevirtual org.jruby.Ruby.getCurrentContext:()Lorg/jruby/runtime/ThreadContext;
astore 2
start local 2 3: aload 0
aload 2
aload 2
invokestatic org.jruby.RubyFloat.sites:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/JavaSites$FloatSites;
getfield org.jruby.runtime.JavaSites$FloatSites.op_cmp:Lorg/jruby/runtime/CallSite;
aload 1
invokevirtual org.jruby.RubyFloat.coerceCmp:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/CallSite;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
invokeinterface org.jruby.runtime.builtin.IRubyObject.convertToInteger:()Lorg/jruby/RubyInteger;
invokevirtual org.jruby.RubyInteger.getLongValue:()J
l2i
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/jruby/RubyFloat;
0 4 1 other Lorg/jruby/runtime/builtin/IRubyObject;
3 4 2 context Lorg/jruby/runtime/ThreadContext;
MethodParameters:
Name Flags
other
public org.jruby.runtime.builtin.IRubyObject op_cmp(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=10, args_size=3
start local 0 start local 1 start local 2 0: aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
astore 3
start local 3 1: invokestatic org.jruby.RubyFloat.$SWITCH_TABLE$org$jruby$runtime$ClassIndex:()[I
aload 2
invokeinterface org.jruby.runtime.builtin.IRubyObject.getMetaClass:()Lorg/jruby/RubyClass;
invokevirtual org.jruby.RubyClass.getClassIndex:()Lorg/jruby/runtime/ClassIndex;
invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
iaload
lookupswitch { // 2
12: 6
17: 2
default: 8
}
2: StackMap locals: org.jruby.Ruby
StackMap stack:
aload 0
getfield org.jruby.RubyFloat.value:D
invokestatic java.lang.Double.isInfinite:(D)Z
ifeq 6
3: aload 0
getfield org.jruby.RubyFloat.value:D
dconst_0
dcmpl
ifle 4
aload 3
invokestatic org.jruby.RubyFixnum.one:(Lorg/jruby/Ruby;)Lorg/jruby/RubyFixnum;
goto 5
StackMap locals:
StackMap stack:
4: aload 3
invokestatic org.jruby.RubyFixnum.minus_one:(Lorg/jruby/Ruby;)Lorg/jruby/RubyFixnum;
StackMap locals:
StackMap stack: org.jruby.RubyFixnum
5: areturn
6: StackMap locals:
StackMap stack:
aload 2
checkcast org.jruby.RubyNumeric
invokevirtual org.jruby.RubyNumeric.getDoubleValue:()D
dstore 4
start local 4 7: aload 3
aload 0
getfield org.jruby.RubyFloat.value:D
dload 4
invokestatic org.jruby.RubyFloat.dbl_cmp:(Lorg/jruby/Ruby;DD)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 4 8: StackMap locals:
StackMap stack:
aload 1
invokestatic org.jruby.RubyFloat.sites:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/JavaSites$FloatSites;
astore 6
start local 6 9: aload 0
getfield org.jruby.RubyFloat.value:D
invokestatic java.lang.Double.isInfinite:(D)Z
ifeq 23
aload 6
getfield org.jruby.runtime.JavaSites$FloatSites.respond_to_infinite:Lorg/jruby/runtime/callsite/RespondToCallSite;
aload 1
aload 2
aload 2
iconst_1
invokevirtual org.jruby.runtime.callsite.RespondToCallSite.respondsTo:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Z)Z
ifeq 23
10: aload 6
getfield org.jruby.runtime.JavaSites$FloatSites.infinite:Lorg/jruby/runtime/CallSite;
aload 1
aload 2
aload 2
invokevirtual org.jruby.runtime.CallSite.call:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
astore 7
start local 7 11: aload 7
invokeinterface org.jruby.runtime.builtin.IRubyObject.isNil:()Z
ifeq 15
12: aload 0
getfield org.jruby.RubyFloat.value:D
dconst_0
dcmpl
ifle 13
aload 3
invokestatic org.jruby.RubyFixnum.one:(Lorg/jruby/Ruby;)Lorg/jruby/RubyFixnum;
goto 14
StackMap locals: org.jruby.RubyFloat org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject org.jruby.Ruby top top org.jruby.runtime.JavaSites$FloatSites org.jruby.runtime.builtin.IRubyObject
StackMap stack:
13: aload 3
invokestatic org.jruby.RubyFixnum.minus_one:(Lorg/jruby/Ruby;)Lorg/jruby/RubyFixnum;
StackMap locals:
StackMap stack: org.jruby.RubyFixnum
14: areturn
15: StackMap locals:
StackMap stack:
aload 7
invokestatic org.jruby.RubyFixnum.fix2long:(Lorg/jruby/runtime/builtin/IRubyObject;)J
lstore 8
start local 8 16: lload 8
lconst_0
lcmp
ifle 20
17: aload 0
getfield org.jruby.RubyFloat.value:D
dconst_0
dcmpl
ifle 18
aload 3
invokestatic org.jruby.RubyFixnum.zero:(Lorg/jruby/Ruby;)Lorg/jruby/RubyFixnum;
goto 19
StackMap locals: long
StackMap stack:
18: aload 3
invokestatic org.jruby.RubyFixnum.minus_one:(Lorg/jruby/Ruby;)Lorg/jruby/RubyFixnum;
StackMap locals:
StackMap stack: org.jruby.RubyFixnum
19: areturn
20: StackMap locals:
StackMap stack:
aload 0
getfield org.jruby.RubyFloat.value:D
dconst_0
dcmpg
ifge 21
aload 3
invokestatic org.jruby.RubyFixnum.zero:(Lorg/jruby/Ruby;)Lorg/jruby/RubyFixnum;
goto 22
StackMap locals:
StackMap stack:
21: aload 3
invokestatic org.jruby.RubyFixnum.one:(Lorg/jruby/Ruby;)Lorg/jruby/RubyFixnum;
StackMap locals:
StackMap stack: org.jruby.RubyFixnum
22: areturn
end local 8 end local 7 23: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 6
getfield org.jruby.runtime.JavaSites$FloatSites.op_cmp:Lorg/jruby/runtime/CallSite;
aload 2
invokevirtual org.jruby.RubyFloat.coerceCmp:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/CallSite;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 6 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 24 0 this Lorg/jruby/RubyFloat;
0 24 1 context Lorg/jruby/runtime/ThreadContext;
0 24 2 other Lorg/jruby/runtime/builtin/IRubyObject;
1 24 3 runtime Lorg/jruby/Ruby;
7 8 4 b D
9 24 6 sites Lorg/jruby/runtime/JavaSites$FloatSites;
11 23 7 infinite Lorg/jruby/runtime/builtin/IRubyObject;
16 23 8 sign J
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"<=>"}, required = 1)
MethodParameters:
Name Flags
context
other
public org.jruby.runtime.builtin.IRubyObject op_cmp(org.jruby.runtime.ThreadContext, double);
descriptor: (Lorg/jruby/runtime/ThreadContext;D)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
aload 0
getfield org.jruby.RubyFloat.value:D
dload 2
invokestatic org.jruby.RubyFloat.dbl_cmp:(Lorg/jruby/Ruby;DD)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyFloat;
0 1 1 context Lorg/jruby/runtime/ThreadContext;
0 1 2 other D
MethodParameters:
Name Flags
context
other
public org.jruby.runtime.builtin.IRubyObject op_gt(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=5, args_size=3
start local 0 start local 1 start local 2 0: invokestatic org.jruby.RubyFloat.$SWITCH_TABLE$org$jruby$runtime$ClassIndex:()[I
aload 2
invokeinterface org.jruby.runtime.builtin.IRubyObject.getMetaClass:()Lorg/jruby/RubyClass;
invokevirtual org.jruby.RubyClass.getClassIndex:()Lorg/jruby/runtime/ClassIndex;
invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
iaload
lookupswitch { // 2
12: 1
17: 1
default: 5
}
1: StackMap locals:
StackMap stack:
aload 2
checkcast org.jruby.RubyNumeric
invokevirtual org.jruby.RubyNumeric.getDoubleValue:()D
dstore 3
start local 3 2: aload 1
dload 3
invokestatic java.lang.Double.isNaN:(D)Z
ifne 3
aload 0
getfield org.jruby.RubyFloat.value:D
dload 3
dcmpl
ifle 3
iconst_1
goto 4
StackMap locals: org.jruby.RubyFloat org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject double
StackMap stack: org.jruby.runtime.ThreadContext
3: iconst_0
StackMap locals: org.jruby.RubyFloat org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject double
StackMap stack: org.jruby.runtime.ThreadContext int
4: invokestatic org.jruby.RubyBoolean.newBoolean:(Lorg/jruby/runtime/ThreadContext;Z)Lorg/jruby/RubyBoolean;
areturn
end local 3 5: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 1
invokestatic org.jruby.RubyFloat.sites:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/JavaSites$FloatSites;
getfield org.jruby.runtime.JavaSites$FloatSites.op_gt:Lorg/jruby/runtime/CallSite;
aload 2
invokevirtual org.jruby.RubyFloat.coerceRelOp:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/CallSite;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/jruby/RubyFloat;
0 6 1 context Lorg/jruby/runtime/ThreadContext;
0 6 2 other Lorg/jruby/runtime/builtin/IRubyObject;
2 5 3 b D
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {">"}, required = 1)
MethodParameters:
Name Flags
context
other
public org.jruby.runtime.builtin.IRubyObject op_gt(org.jruby.runtime.ThreadContext, double);
descriptor: (Lorg/jruby/runtime/ThreadContext;D)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 1
dload 2
invokestatic java.lang.Double.isNaN:(D)Z
ifne 1
aload 0
getfield org.jruby.RubyFloat.value:D
dload 2
dcmpl
ifle 1
iconst_1
goto 2
StackMap locals:
StackMap stack: org.jruby.runtime.ThreadContext
1: iconst_0
StackMap locals: org.jruby.RubyFloat org.jruby.runtime.ThreadContext double
StackMap stack: org.jruby.runtime.ThreadContext int
2: invokestatic org.jruby.RubyBoolean.newBoolean:(Lorg/jruby/runtime/ThreadContext;Z)Lorg/jruby/RubyBoolean;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/jruby/RubyFloat;
0 3 1 context Lorg/jruby/runtime/ThreadContext;
0 3 2 other D
MethodParameters:
Name Flags
context
other
public org.jruby.runtime.builtin.IRubyObject op_ge(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=5, args_size=3
start local 0 start local 1 start local 2 0: invokestatic org.jruby.RubyFloat.$SWITCH_TABLE$org$jruby$runtime$ClassIndex:()[I
aload 2
invokeinterface org.jruby.runtime.builtin.IRubyObject.getMetaClass:()Lorg/jruby/RubyClass;
invokevirtual org.jruby.RubyClass.getClassIndex:()Lorg/jruby/runtime/ClassIndex;
invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
iaload
lookupswitch { // 2
12: 1
17: 1
default: 5
}
1: StackMap locals:
StackMap stack:
aload 2
checkcast org.jruby.RubyNumeric
invokevirtual org.jruby.RubyNumeric.getDoubleValue:()D
dstore 3
start local 3 2: aload 1
dload 3
invokestatic java.lang.Double.isNaN:(D)Z
ifne 3
aload 0
getfield org.jruby.RubyFloat.value:D
dload 3
dcmpl
iflt 3
iconst_1
goto 4
StackMap locals: org.jruby.RubyFloat org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject double
StackMap stack: org.jruby.runtime.ThreadContext
3: iconst_0
StackMap locals: org.jruby.RubyFloat org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject double
StackMap stack: org.jruby.runtime.ThreadContext int
4: invokestatic org.jruby.RubyBoolean.newBoolean:(Lorg/jruby/runtime/ThreadContext;Z)Lorg/jruby/RubyBoolean;
areturn
end local 3 5: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 1
invokestatic org.jruby.RubyFloat.sites:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/JavaSites$FloatSites;
getfield org.jruby.runtime.JavaSites$FloatSites.op_ge:Lorg/jruby/runtime/CallSite;
aload 2
invokevirtual org.jruby.RubyFloat.coerceRelOp:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/CallSite;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/jruby/RubyFloat;
0 6 1 context Lorg/jruby/runtime/ThreadContext;
0 6 2 other Lorg/jruby/runtime/builtin/IRubyObject;
2 5 3 b D
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {">="}, required = 1)
MethodParameters:
Name Flags
context
other
public org.jruby.runtime.builtin.IRubyObject op_ge(org.jruby.runtime.ThreadContext, double);
descriptor: (Lorg/jruby/runtime/ThreadContext;D)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 1
dload 2
invokestatic java.lang.Double.isNaN:(D)Z
ifne 1
aload 0
getfield org.jruby.RubyFloat.value:D
dload 2
dcmpl
iflt 1
iconst_1
goto 2
StackMap locals:
StackMap stack: org.jruby.runtime.ThreadContext
1: iconst_0
StackMap locals: org.jruby.RubyFloat org.jruby.runtime.ThreadContext double
StackMap stack: org.jruby.runtime.ThreadContext int
2: invokestatic org.jruby.RubyBoolean.newBoolean:(Lorg/jruby/runtime/ThreadContext;Z)Lorg/jruby/RubyBoolean;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/jruby/RubyFloat;
0 3 1 context Lorg/jruby/runtime/ThreadContext;
0 3 2 other D
MethodParameters:
Name Flags
context
other
public org.jruby.runtime.builtin.IRubyObject op_lt(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=5, args_size=3
start local 0 start local 1 start local 2 0: invokestatic org.jruby.RubyFloat.$SWITCH_TABLE$org$jruby$runtime$ClassIndex:()[I
aload 2
invokeinterface org.jruby.runtime.builtin.IRubyObject.getMetaClass:()Lorg/jruby/RubyClass;
invokevirtual org.jruby.RubyClass.getClassIndex:()Lorg/jruby/runtime/ClassIndex;
invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
iaload
lookupswitch { // 2
12: 1
17: 1
default: 5
}
1: StackMap locals:
StackMap stack:
aload 2
checkcast org.jruby.RubyNumeric
invokevirtual org.jruby.RubyNumeric.getDoubleValue:()D
dstore 3
start local 3 2: aload 1
dload 3
invokestatic java.lang.Double.isNaN:(D)Z
ifne 3
aload 0
getfield org.jruby.RubyFloat.value:D
dload 3
dcmpg
ifge 3
iconst_1
goto 4
StackMap locals: org.jruby.RubyFloat org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject double
StackMap stack: org.jruby.runtime.ThreadContext
3: iconst_0
StackMap locals: org.jruby.RubyFloat org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject double
StackMap stack: org.jruby.runtime.ThreadContext int
4: invokestatic org.jruby.RubyBoolean.newBoolean:(Lorg/jruby/runtime/ThreadContext;Z)Lorg/jruby/RubyBoolean;
areturn
end local 3 5: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 1
invokestatic org.jruby.RubyFloat.sites:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/JavaSites$FloatSites;
getfield org.jruby.runtime.JavaSites$FloatSites.op_lt:Lorg/jruby/runtime/CallSite;
aload 2
invokevirtual org.jruby.RubyFloat.coerceRelOp:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/CallSite;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/jruby/RubyFloat;
0 6 1 context Lorg/jruby/runtime/ThreadContext;
0 6 2 other Lorg/jruby/runtime/builtin/IRubyObject;
2 5 3 b D
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"<"}, required = 1)
MethodParameters:
Name Flags
context
other
public org.jruby.runtime.builtin.IRubyObject op_lt(org.jruby.runtime.ThreadContext, double);
descriptor: (Lorg/jruby/runtime/ThreadContext;D)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 1
dload 2
invokestatic java.lang.Double.isNaN:(D)Z
ifne 1
aload 0
getfield org.jruby.RubyFloat.value:D
dload 2
dcmpg
ifge 1
iconst_1
goto 2
StackMap locals:
StackMap stack: org.jruby.runtime.ThreadContext
1: iconst_0
StackMap locals: org.jruby.RubyFloat org.jruby.runtime.ThreadContext double
StackMap stack: org.jruby.runtime.ThreadContext int
2: invokestatic org.jruby.RubyBoolean.newBoolean:(Lorg/jruby/runtime/ThreadContext;Z)Lorg/jruby/RubyBoolean;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/jruby/RubyFloat;
0 3 1 context Lorg/jruby/runtime/ThreadContext;
0 3 2 other D
MethodParameters:
Name Flags
context
other
public org.jruby.runtime.builtin.IRubyObject op_le(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=5, args_size=3
start local 0 start local 1 start local 2 0: invokestatic org.jruby.RubyFloat.$SWITCH_TABLE$org$jruby$runtime$ClassIndex:()[I
aload 2
invokeinterface org.jruby.runtime.builtin.IRubyObject.getMetaClass:()Lorg/jruby/RubyClass;
invokevirtual org.jruby.RubyClass.getClassIndex:()Lorg/jruby/runtime/ClassIndex;
invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
iaload
lookupswitch { // 2
12: 1
17: 1
default: 5
}
1: StackMap locals:
StackMap stack:
aload 2
checkcast org.jruby.RubyNumeric
invokevirtual org.jruby.RubyNumeric.getDoubleValue:()D
dstore 3
start local 3 2: aload 1
dload 3
invokestatic java.lang.Double.isNaN:(D)Z
ifne 3
aload 0
getfield org.jruby.RubyFloat.value:D
dload 3
dcmpg
ifgt 3
iconst_1
goto 4
StackMap locals: org.jruby.RubyFloat org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject double
StackMap stack: org.jruby.runtime.ThreadContext
3: iconst_0
StackMap locals: org.jruby.RubyFloat org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject double
StackMap stack: org.jruby.runtime.ThreadContext int
4: invokestatic org.jruby.RubyBoolean.newBoolean:(Lorg/jruby/runtime/ThreadContext;Z)Lorg/jruby/RubyBoolean;
areturn
end local 3 5: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 1
invokestatic org.jruby.RubyFloat.sites:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/JavaSites$FloatSites;
getfield org.jruby.runtime.JavaSites$FloatSites.op_le:Lorg/jruby/runtime/CallSite;
aload 2
invokevirtual org.jruby.RubyFloat.coerceRelOp:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/CallSite;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/jruby/RubyFloat;
0 6 1 context Lorg/jruby/runtime/ThreadContext;
0 6 2 other Lorg/jruby/runtime/builtin/IRubyObject;
2 5 3 b D
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"<="}, required = 1)
MethodParameters:
Name Flags
context
other
public org.jruby.runtime.builtin.IRubyObject op_le(org.jruby.runtime.ThreadContext, double);
descriptor: (Lorg/jruby/runtime/ThreadContext;D)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 1
dload 2
invokestatic java.lang.Double.isNaN:(D)Z
ifne 1
aload 0
getfield org.jruby.RubyFloat.value:D
dload 2
dcmpg
ifgt 1
iconst_1
goto 2
StackMap locals:
StackMap stack: org.jruby.runtime.ThreadContext
1: iconst_0
StackMap locals: org.jruby.RubyFloat org.jruby.runtime.ThreadContext double
StackMap stack: org.jruby.runtime.ThreadContext int
2: invokestatic org.jruby.RubyBoolean.newBoolean:(Lorg/jruby/runtime/ThreadContext;Z)Lorg/jruby/RubyBoolean;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/jruby/RubyFloat;
0 3 1 context Lorg/jruby/runtime/ThreadContext;
0 3 2 other D
MethodParameters:
Name Flags
context
other
public org.jruby.runtime.builtin.IRubyObject eql_p(org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.jruby.RubyFloat.metaClass:Lorg/jruby/RubyClass;
getfield org.jruby.RubyClass.runtime:Lorg/jruby/Ruby;
aload 0
aload 1
invokevirtual org.jruby.RubyFloat.equals:(Ljava/lang/Object;)Z
invokevirtual org.jruby.Ruby.newBoolean:(Z)Lorg/jruby/RubyBoolean;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyFloat;
0 1 1 other Lorg/jruby/runtime/builtin/IRubyObject;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"eql?"}, required = 1)
MethodParameters:
Name Flags
other
public boolean equals(java.lang.Object);
descriptor: (Ljava/lang/Object;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
instanceof org.jruby.RubyFloat
ifeq 1
aload 0
aload 1
checkcast org.jruby.RubyFloat
invokevirtual org.jruby.RubyFloat.equals:(Lorg/jruby/RubyFloat;)Z
ifeq 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/jruby/RubyFloat;
0 2 1 other Ljava/lang/Object;
MethodParameters:
Name Flags
other
private boolean equals(org.jruby.RubyFloat);
descriptor: (Lorg/jruby/RubyFloat;)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=6, args_size=2
start local 0 start local 1 0: aload 0
getfield org.jruby.RubyFloat.value:D
invokestatic java.lang.Double.isNaN:(D)Z
ifne 1
aload 1
getfield org.jruby.RubyFloat.value:D
invokestatic java.lang.Double.isNaN:(D)Z
ifeq 2
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
2: StackMap locals:
StackMap stack:
aload 0
getfield org.jruby.RubyFloat.value:D
ldc -0.0
dcmpl
ifne 3
dconst_0
goto 4
StackMap locals:
StackMap stack:
3: aload 0
getfield org.jruby.RubyFloat.value:D
StackMap locals:
StackMap stack: double
4: dstore 2
start local 2 5: aload 1
getfield org.jruby.RubyFloat.value:D
ldc -0.0
dcmpl
ifne 6
dconst_0
goto 7
StackMap locals: double
StackMap stack:
6: aload 1
getfield org.jruby.RubyFloat.value:D
StackMap locals:
StackMap stack: double
7: dstore 4
start local 4 8: dload 2
invokestatic java.lang.Double.doubleToLongBits:(D)J
dload 4
invokestatic java.lang.Double.doubleToLongBits:(D)J
lcmp
ifne 9
iconst_1
ireturn
StackMap locals: double
StackMap stack:
9: iconst_0
ireturn
end local 4 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lorg/jruby/RubyFloat;
0 10 1 that Lorg/jruby/RubyFloat;
5 10 2 val1 D
8 10 4 val2 D
MethodParameters:
Name Flags
that
public org.jruby.RubyFixnum hash();
descriptor: ()Lorg/jruby/RubyFixnum;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=1
start local 0 0: aload 0
getfield org.jruby.RubyFloat.metaClass:Lorg/jruby/RubyClass;
getfield org.jruby.RubyClass.runtime:Lorg/jruby/Ruby;
astore 1
start local 1 1: aload 1
aload 1
aload 0
getfield org.jruby.RubyFloat.value:D
invokestatic org.jruby.RubyFloat.floatHash:(Lorg/jruby/Ruby;D)J
invokestatic org.jruby.RubyFixnum.newFixnum:(Lorg/jruby/Ruby;J)Lorg/jruby/RubyFixnum;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/jruby/RubyFloat;
1 2 1 runtime Lorg/jruby/Ruby;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"hash"})
public final int hashCode();
descriptor: ()I
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual org.jruby.RubyFloat.getRuntime:()Lorg/jruby/Ruby;
aload 0
getfield org.jruby.RubyFloat.value:D
invokestatic org.jruby.RubyFloat.floatHash:(Lorg/jruby/Ruby;D)J
l2i
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyFloat;
private static long floatHash(org.jruby.Ruby, double);
descriptor: (Lorg/jruby/Ruby;D)J
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=7, args_size=2
start local 0 start local 1 0: dload 1
dconst_0
dcmpl
ifne 1
ldc -0.0
goto 2
StackMap locals:
StackMap stack:
1: dload 1
StackMap locals:
StackMap stack: double
2: dstore 3
start local 3 3: dload 3
invokestatic java.lang.Double.doubleToLongBits:(D)J
lstore 5
start local 5 4: aload 0
invokevirtual org.jruby.Ruby.getHashSeedK0:()J
lload 5
invokestatic org.jruby.runtime.Helpers.multAndMix:(JJ)J
lreturn
end local 5 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 runtime Lorg/jruby/Ruby;
0 5 1 value D
3 5 3 val D
4 5 5 hashLong J
MethodParameters:
Name Flags
runtime
value
public org.jruby.runtime.builtin.IRubyObject to_f();
descriptor: ()Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyFloat;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"to_f"})
public org.jruby.runtime.builtin.IRubyObject abs(org.jruby.runtime.ThreadContext);
descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.jruby.RubyFloat.value:D
invokestatic java.lang.Double.doubleToLongBits:(D)J
lconst_0
lcmp
ifge 2
1: aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
aload 0
getfield org.jruby.RubyFloat.value:D
invokestatic java.lang.Math.abs:(D)D
invokestatic org.jruby.RubyFloat.newFloat:(Lorg/jruby/Ruby;D)Lorg/jruby/RubyFloat;
areturn
2: StackMap locals:
StackMap stack:
aload 0
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/jruby/RubyFloat;
0 3 1 context Lorg/jruby/runtime/ThreadContext;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"abs"})
MethodParameters:
Name Flags
context
public org.jruby.runtime.builtin.IRubyObject magnitude(org.jruby.runtime.ThreadContext);
descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual org.jruby.RubyFloat.abs:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyFloat;
0 1 1 context Lorg/jruby/runtime/ThreadContext;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"magnitude"})
MethodParameters:
Name Flags
context
public org.jruby.runtime.builtin.IRubyObject zero_p(org.jruby.runtime.ThreadContext);
descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: aload 1
aload 0
getfield org.jruby.RubyFloat.value:D
dconst_0
dcmpl
ifne 1
iconst_1
goto 2
StackMap locals:
StackMap stack: org.jruby.runtime.ThreadContext
1: iconst_0
StackMap locals: org.jruby.RubyFloat org.jruby.runtime.ThreadContext
StackMap stack: org.jruby.runtime.ThreadContext int
2: invokestatic org.jruby.RubyBoolean.newBoolean:(Lorg/jruby/runtime/ThreadContext;Z)Lorg/jruby/RubyBoolean;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/jruby/RubyFloat;
0 3 1 context Lorg/jruby/runtime/ThreadContext;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"zero?"})
MethodParameters:
Name Flags
context
public final boolean isZero();
descriptor: ()Z
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=4, locals=1, args_size=1
start local 0 0: aload 0
getfield org.jruby.RubyFloat.value:D
dconst_0
dcmpl
ifne 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/jruby/RubyFloat;
public org.jruby.runtime.builtin.IRubyObject nonzero_p(org.jruby.runtime.ThreadContext);
descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.jruby.RubyFloat.isZero:()Z
ifeq 1
aload 1
getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
goto 2
StackMap locals:
StackMap stack:
1: aload 0
StackMap locals:
StackMap stack: org.jruby.runtime.builtin.IRubyObject
2: areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/jruby/RubyFloat;
0 3 1 context Lorg/jruby/runtime/ThreadContext;
MethodParameters:
Name Flags
context
public org.jruby.runtime.builtin.IRubyObject truncate(org.jruby.runtime.ThreadContext);
descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
invokevirtual org.jruby.RubyFloat.toInteger:(Lorg/jruby/Ruby;)Lorg/jruby/RubyInteger;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyFloat;
0 1 1 context Lorg/jruby/runtime/ThreadContext;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"truncate", "to_i", "to_int"})
MethodParameters:
Name Flags
context
public org.jruby.runtime.builtin.IRubyObject truncate(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.jruby.RubyFloat.value:D
dconst_0
dcmpl
ifle 1
aload 0
aload 1
aload 2
invokevirtual org.jruby.RubyFloat.floor:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
1: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
invokevirtual org.jruby.RubyFloat.ceil:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/jruby/RubyFloat;
0 2 1 context Lorg/jruby/runtime/ThreadContext;
0 2 2 n Lorg/jruby/runtime/builtin/IRubyObject;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"truncate", "to_i", "to_int"})
MethodParameters:
Name Flags
context
n
public org.jruby.runtime.builtin.IRubyObject numerator(org.jruby.runtime.ThreadContext);
descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.jruby.RubyFloat.value:D
invokestatic java.lang.Double.isInfinite:(D)Z
ifne 1
aload 0
getfield org.jruby.RubyFloat.value:D
invokestatic java.lang.Double.isNaN:(D)Z
ifeq 2
StackMap locals:
StackMap stack:
1: aload 0
areturn
2: StackMap locals:
StackMap stack:
aload 0
aload 1
invokespecial org.jruby.RubyNumeric.numerator:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/jruby/RubyFloat;
0 3 1 context Lorg/jruby/runtime/ThreadContext;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"numerator"})
MethodParameters:
Name Flags
context
public org.jruby.runtime.builtin.IRubyObject denominator(org.jruby.runtime.ThreadContext);
descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.jruby.RubyFloat.value:D
invokestatic java.lang.Double.isInfinite:(D)Z
ifne 1
aload 0
getfield org.jruby.RubyFloat.value:D
invokestatic java.lang.Double.isNaN:(D)Z
ifeq 2
1: StackMap locals:
StackMap stack:
aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
invokestatic org.jruby.RubyFixnum.one:(Lorg/jruby/Ruby;)Lorg/jruby/RubyFixnum;
areturn
2: StackMap locals:
StackMap stack:
aload 0
aload 1
invokespecial org.jruby.RubyNumeric.denominator:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/jruby/RubyFloat;
0 3 1 context Lorg/jruby/runtime/ThreadContext;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"denominator"})
MethodParameters:
Name Flags
context
public org.jruby.runtime.builtin.IRubyObject to_r(org.jruby.runtime.ThreadContext);
descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=10, args_size=2
start local 0 start local 1 0: iconst_1
newarray 11
astore 2
start local 2 1: aload 0
getfield org.jruby.RubyFloat.value:D
aload 2
invokestatic org.jruby.util.Numeric.frexp:(D[J)D
dstore 3
start local 3 2: dload 3
ldc 53
invokestatic org.jruby.util.Numeric.ldexp:(DJ)D
dstore 3
3: aload 2
iconst_0
laload
ldc 53
lsub
lstore 5
start local 5 4: aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
astore 7
start local 7 5: aload 7
dload 3
invokestatic org.jruby.RubyNumeric.dbl2ival:(Lorg/jruby/Ruby;D)Lorg/jruby/RubyInteger;
astore 8
start local 8 6: aload 7
lload 5
invokestatic org.jruby.RubyFixnum.newFixnum:(Lorg/jruby/Ruby;J)Lorg/jruby/RubyFixnum;
astore 9
start local 9 7: aload 1
aload 8
aload 1
aload 7
invokestatic org.jruby.RubyFixnum.two:(Lorg/jruby/Ruby;)Lorg/jruby/RubyFixnum;
aload 9
invokestatic org.jruby.util.Numeric.f_expt:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyInteger;Lorg/jruby/RubyInteger;)Lorg/jruby/RubyNumeric;
invokestatic org.jruby.util.Numeric.f_mul:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 9 end local 8 end local 7 end local 5 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/jruby/RubyFloat;
0 8 1 context Lorg/jruby/runtime/ThreadContext;
1 8 2 exp [J
2 8 3 f D
4 8 5 n J
5 8 7 runtime Lorg/jruby/Ruby;
6 8 8 rf Lorg/jruby/RubyInteger;
7 8 9 rn Lorg/jruby/RubyFixnum;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"to_r"})
MethodParameters:
Name Flags
context
public org.jruby.runtime.builtin.IRubyObject rationalize(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject[]);
descriptor: (Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=17, args_size=3
start local 0 start local 1 start local 2 0: aload 1
aload 0
invokestatic org.jruby.util.Numeric.f_negative_p:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyFloat;)Z
ifeq 2
1: aload 1
aload 1
aload 0
invokestatic org.jruby.util.Numeric.f_abs:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyFloat;)Lorg/jruby/RubyFloat;
aload 1
aload 2
invokevirtual org.jruby.RubyFloat.rationalize:(Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
invokestatic org.jruby.util.Numeric.f_negate:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
2: StackMap locals:
StackMap stack:
aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
astore 3
start local 3 3: aload 2
arraylength
ifeq 8
4: aload 1
aload 2
iconst_0
aaload
invokestatic org.jruby.util.Numeric.f_abs:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
astore 4
start local 4 5: aload 1
aload 0
aload 4
invokestatic org.jruby.util.Numeric.f_sub:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
astore 5
start local 5 6: aload 1
aload 0
aload 4
invokestatic org.jruby.util.Numeric.f_add:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
astore 6
start local 6 7: goto 21
end local 6 end local 5 end local 4 8: StackMap locals: org.jruby.Ruby
StackMap stack:
iconst_1
newarray 11
astore 7
start local 7 9: aload 0
getfield org.jruby.RubyFloat.value:D
aload 7
invokestatic org.jruby.util.Numeric.frexp:(D[J)D
dstore 8
start local 8 10: dload 8
ldc 53
invokestatic org.jruby.util.Numeric.ldexp:(DJ)D
dstore 8
11: aload 7
iconst_0
laload
ldc 53
lsub
lstore 10
start local 10 12: aload 3
dload 8
invokestatic org.jruby.RubyBignum.newBignorm:(Lorg/jruby/Ruby;D)Lorg/jruby/RubyInteger;
astore 12
start local 12 13: aload 3
lload 10
invokestatic org.jruby.RubyFixnum.newFixnum:(Lorg/jruby/Ruby;J)Lorg/jruby/RubyFixnum;
astore 13
start local 13 14: aload 12
invokevirtual org.jruby.RubyInteger.isZero:()Z
ifne 15
aload 13
invokestatic org.jruby.RubyFloat.fix2int:(Lorg/jruby/RubyFixnum;)I
iflt 16
15: StackMap locals: org.jruby.RubyFloat org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject[] org.jruby.Ruby top top top long[] double long org.jruby.RubyInteger org.jruby.RubyFixnum
StackMap stack:
aload 3
aload 12
aload 1
aload 13
invokevirtual org.jruby.RubyInteger.op_lshift:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
invokestatic org.jruby.RubyRational.newRationalRaw:(Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyRational;
areturn
16: StackMap locals:
StackMap stack:
aload 3
invokestatic org.jruby.RubyFixnum.one:(Lorg/jruby/Ruby;)Lorg/jruby/RubyFixnum;
astore 14
start local 14 17: aload 12
aload 1
ldc 2
invokevirtual org.jruby.RubyInteger.op_mul:(Lorg/jruby/runtime/ThreadContext;J)Lorg/jruby/runtime/builtin/IRubyObject;
checkcast org.jruby.RubyInteger
astore 16
start local 16 18: aload 14
aload 1
aload 3
invokestatic org.jruby.RubyFixnum.one:(Lorg/jruby/Ruby;)Lorg/jruby/RubyFixnum;
aload 1
lload 10
invokevirtual org.jruby.RubyFixnum.op_minus:(Lorg/jruby/runtime/ThreadContext;J)Lorg/jruby/runtime/builtin/IRubyObject;
invokevirtual org.jruby.RubyFixnum.op_lshift:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
checkcast org.jruby.RubyInteger
astore 15
start local 15 19: aload 3
aload 16
aload 1
lconst_1
invokevirtual org.jruby.RubyInteger.op_minus:(Lorg/jruby/runtime/ThreadContext;J)Lorg/jruby/runtime/builtin/IRubyObject;
aload 15
invokestatic org.jruby.RubyRational.newRationalRaw:(Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyRational;
astore 5
start local 5 20: aload 3
aload 16
aload 1
lconst_1
invokevirtual org.jruby.RubyInteger.op_plus:(Lorg/jruby/runtime/ThreadContext;J)Lorg/jruby/runtime/builtin/IRubyObject;
aload 15
invokestatic org.jruby.RubyRational.newRationalRaw:(Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyRational;
astore 6
end local 16 end local 15 end local 14 end local 13 end local 12 end local 10 end local 8 end local 7 start local 6 21: StackMap locals: org.jruby.RubyFloat org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject[] org.jruby.Ruby top org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject
StackMap stack:
aload 1
invokestatic org.jruby.RubyFloat.sites:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/JavaSites$FloatSites;
getfield org.jruby.runtime.JavaSites$FloatSites.op_equal:Lorg/jruby/runtime/CallSite;
aload 1
aload 5
aload 5
aload 6
invokevirtual org.jruby.runtime.CallSite.call:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
invokeinterface org.jruby.runtime.builtin.IRubyObject.isTrue:()Z
ifeq 22
aload 1
aload 0
invokestatic org.jruby.util.Numeric.f_to_r:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
22: StackMap locals:
StackMap stack:
aload 1
aload 5
aload 6
invokestatic org.jruby.util.Numeric.nurat_rationalize_internal:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)[Lorg/jruby/runtime/builtin/IRubyObject;
astore 7
start local 7 23: aload 3
aload 7
iconst_0
aaload
aload 7
iconst_1
aaload
invokestatic org.jruby.RubyRational.newRationalRaw:(Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyRational;
areturn
end local 7 end local 6 end local 5 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 24 0 this Lorg/jruby/RubyFloat;
0 24 1 context Lorg/jruby/runtime/ThreadContext;
0 24 2 args [Lorg/jruby/runtime/builtin/IRubyObject;
3 24 3 runtime Lorg/jruby/Ruby;
5 8 4 eps Lorg/jruby/runtime/builtin/IRubyObject;
6 8 5 a Lorg/jruby/runtime/builtin/IRubyObject;
20 24 5 a Lorg/jruby/runtime/builtin/IRubyObject;
7 8 6 b Lorg/jruby/runtime/builtin/IRubyObject;
21 24 6 b Lorg/jruby/runtime/builtin/IRubyObject;
9 21 7 exp [J
10 21 8 f D
12 21 10 n J
13 21 12 rf Lorg/jruby/RubyInteger;
14 21 13 rn Lorg/jruby/RubyFixnum;
17 21 14 one Lorg/jruby/RubyFixnum;
19 21 15 den Lorg/jruby/RubyInteger;
18 21 16 two_times_f Lorg/jruby/RubyInteger;
23 24 7 ans [Lorg/jruby/runtime/builtin/IRubyObject;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"rationalize"}, optional = 1)
MethodParameters:
Name Flags
context
args
public org.jruby.runtime.builtin.IRubyObject floor(org.jruby.runtime.ThreadContext);
descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
aload 0
getfield org.jruby.RubyFloat.value:D
invokestatic java.lang.Math.floor:(D)D
invokestatic org.jruby.RubyFloat.dbl2ival:(Lorg/jruby/Ruby;D)Lorg/jruby/RubyInteger;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyFloat;
0 1 1 context Lorg/jruby/runtime/ThreadContext;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"floor"})
MethodParameters:
Name Flags
context
public org.jruby.runtime.builtin.IRubyObject floor(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=11, args_size=3
start local 0 start local 1 start local 2 0: aload 2
invokestatic org.jruby.RubyFloat.num2int:(Lorg/jruby/runtime/builtin/IRubyObject;)I
istore 7
start local 7 1: iload 7
ifge 3
2: aload 0
aload 1
invokevirtual org.jruby.RubyFloat.truncate:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
checkcast org.jruby.RubyInteger
aload 1
aload 2
invokevirtual org.jruby.RubyInteger.floor:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
3: StackMap locals: org.jruby.RubyFloat org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject top top top top int
StackMap stack:
aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
astore 8
start local 8 4: aload 0
getfield org.jruby.RubyFloat.value:D
dstore 3
start local 3 5: dload 3
dconst_0
dcmpl
ifne 9
6: iload 7
ifle 7
aload 0
goto 8
StackMap locals: org.jruby.RubyFloat org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject double top top int org.jruby.Ruby
StackMap stack:
7: aload 8
invokestatic org.jruby.RubyFixnum.zero:(Lorg/jruby/Ruby;)Lorg/jruby/RubyFixnum;
StackMap locals:
StackMap stack: org.jruby.RubyNumeric
8: areturn
9: StackMap locals:
StackMap stack:
iload 7
ifle 19
10: iconst_1
anewarray org.jruby.RubyNumeric
dup
iconst_0
aload 0
aastore
astore 9
start local 9 11: iconst_1
newarray 11
astore 10
start local 10 12: dload 3
aload 10
invokestatic org.jruby.util.Numeric.frexp:(D[J)D
pop2
13: iload 7
aload 10
invokestatic org.jruby.RubyFloat.floatRoundOverflow:(I[J)Z
ifeq 14
aload 9
iconst_0
aaload
areturn
14: StackMap locals: org.jruby.RubyNumeric[] long[]
StackMap stack:
dload 3
dconst_0
dcmpl
ifle 16
iload 7
aload 10
invokestatic org.jruby.RubyFloat.floatRoundUnderflow:(I[J)Z
ifeq 16
15: aload 8
dconst_0
invokestatic org.jruby.RubyFloat.newFloat:(Lorg/jruby/Ruby;D)Lorg/jruby/RubyFloat;
areturn
16: StackMap locals:
StackMap stack:
ldc 10.0
iload 7
i2d
invokestatic java.lang.Math.pow:(DD)D
dstore 5
start local 5 17: dload 3
dload 5
dmul
invokestatic java.lang.Math.floor:(D)D
dload 5
ddiv
dstore 5
18: aload 8
dload 5
invokestatic org.jruby.RubyFloat.dbl2num:(Lorg/jruby/Ruby;D)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 10 end local 9 end local 5 19: StackMap locals:
StackMap stack:
aload 8
dload 3
invokestatic java.lang.Math.floor:(D)D
invokestatic org.jruby.RubyFloat.dbl2ival:(Lorg/jruby/Ruby;D)Lorg/jruby/RubyInteger;
astore 9
start local 9 20: iload 7
ifge 21
aload 9
aload 1
aload 2
invokevirtual org.jruby.RubyInteger.floor:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
checkcast org.jruby.RubyInteger
astore 9
21: StackMap locals: org.jruby.RubyInteger
StackMap stack:
aload 9
areturn
end local 9 end local 8 end local 7 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 22 0 this Lorg/jruby/RubyFloat;
0 22 1 context Lorg/jruby/runtime/ThreadContext;
0 22 2 digits Lorg/jruby/runtime/builtin/IRubyObject;
5 22 3 number D
17 19 5 f D
1 22 7 ndigits I
4 22 8 runtime Lorg/jruby/Ruby;
11 19 9 num [Lorg/jruby/RubyNumeric;
12 19 10 binexp [J
20 22 9 num Lorg/jruby/RubyInteger;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"floor"})
MethodParameters:
Name Flags
context
digits
private static boolean floatRoundOverflow(int, long[]);
descriptor: (I[J)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=8, locals=2, args_size=2
start local 0 start local 1 0: iload 0
i2l
ldc 17
aload 1
iconst_0
laload
lconst_0
lcmp
ifle 1
aload 1
iconst_0
laload
ldc 4
ldiv
goto 2
StackMap locals: int long[]
StackMap stack: long long
1: aload 1
iconst_0
laload
ldc 3
ldiv
lconst_1
lsub
StackMap locals: int long[]
StackMap stack: long long long
2: lsub
lcmp
iflt 3
iconst_1
ireturn
StackMap locals:
StackMap stack:
3: iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 ndigits I
0 4 1 binexp [J
MethodParameters:
Name Flags
ndigits
binexp
private static boolean floatRoundUnderflow(int, long[]);
descriptor: (I[J)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=6, locals=2, args_size=2
start local 0 start local 1 0: iload 0
i2l
aload 1
iconst_0
laload
lconst_0
lcmp
ifle 1
aload 1
iconst_0
laload
ldc 3
ldiv
lconst_1
ladd
goto 2
StackMap locals:
StackMap stack: long
1: aload 1
iconst_0
laload
ldc 4
ldiv
StackMap locals: int long[]
StackMap stack: long long
2: lneg
lcmp
ifge 3
iconst_1
ireturn
StackMap locals:
StackMap stack:
3: iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 ndigits I
0 4 1 binexp [J
MethodParameters:
Name Flags
ndigits
binexp
public org.jruby.runtime.builtin.IRubyObject ceil(org.jruby.runtime.ThreadContext);
descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
aload 0
getfield org.jruby.RubyFloat.value:D
invokestatic java.lang.Math.ceil:(D)D
invokestatic org.jruby.RubyFloat.dbl2ival:(Lorg/jruby/Ruby;D)Lorg/jruby/RubyInteger;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyFloat;
0 1 1 context Lorg/jruby/runtime/ThreadContext;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"ceil"})
MethodParameters:
Name Flags
context
public org.jruby.runtime.builtin.IRubyObject ceil(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=10, args_size=3
start local 0 start local 1 start local 2 0: aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
astore 3
start local 3 1: aload 2
invokestatic org.jruby.RubyFloat.num2int:(Lorg/jruby/runtime/builtin/IRubyObject;)I
istore 8
start local 8 2: aload 0
getfield org.jruby.RubyFloat.value:D
dstore 4
start local 4 3: dload 4
dconst_0
dcmpl
ifne 7
4: iload 8
ifle 5
aload 0
goto 6
StackMap locals: org.jruby.RubyFloat org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject org.jruby.Ruby double top top int
StackMap stack:
5: aload 3
invokestatic org.jruby.RubyFixnum.zero:(Lorg/jruby/Ruby;)Lorg/jruby/RubyFixnum;
StackMap locals:
StackMap stack: org.jruby.RubyNumeric
6: areturn
7: StackMap locals:
StackMap stack:
iload 8
ifle 16
8: iconst_1
newarray 11
astore 9
start local 9 9: dload 4
aload 9
invokestatic org.jruby.util.Numeric.frexp:(D[J)D
pop2
10: iload 8
aload 9
invokestatic org.jruby.RubyFloat.floatRoundOverflow:(I[J)Z
ifeq 11
aload 0
areturn
11: StackMap locals: long[]
StackMap stack:
dload 4
dconst_0
dcmpg
ifge 13
iload 8
aload 9
invokestatic org.jruby.RubyFloat.floatRoundUnderflow:(I[J)Z
ifeq 13
12: aload 3
dconst_0
invokestatic org.jruby.RubyFloat.newFloat:(Lorg/jruby/Ruby;D)Lorg/jruby/RubyFloat;
areturn
13: StackMap locals:
StackMap stack:
ldc 10.0
iload 8
i2d
invokestatic java.lang.Math.pow:(DD)D
dstore 6
start local 6 14: dload 4
dload 6
dmul
invokestatic java.lang.Math.ceil:(D)D
dload 6
ddiv
dstore 6
15: aload 3
dload 6
invokestatic org.jruby.RubyFloat.newFloat:(Lorg/jruby/Ruby;D)Lorg/jruby/RubyFloat;
areturn
end local 9 end local 6 16: StackMap locals:
StackMap stack:
aload 3
dload 4
invokestatic java.lang.Math.ceil:(D)D
invokestatic org.jruby.RubyFloat.dbl2ival:(Lorg/jruby/Ruby;D)Lorg/jruby/RubyInteger;
astore 9
start local 9 17: iload 8
ifge 18
aload 9
checkcast org.jruby.RubyInteger
aload 1
aload 2
invokevirtual org.jruby.RubyInteger.ceil:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
astore 9
18: StackMap locals: org.jruby.runtime.builtin.IRubyObject
StackMap stack:
aload 9
areturn
end local 9 end local 8 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 19 0 this Lorg/jruby/RubyFloat;
0 19 1 context Lorg/jruby/runtime/ThreadContext;
0 19 2 digits Lorg/jruby/runtime/builtin/IRubyObject;
1 19 3 runtime Lorg/jruby/Ruby;
3 19 4 number D
14 16 6 f D
2 19 8 ndigits I
9 16 9 binexp [J
17 19 9 num Lorg/jruby/runtime/builtin/IRubyObject;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"ceil"})
MethodParameters:
Name Flags
context
digits
public org.jruby.runtime.builtin.IRubyObject round(org.jruby.runtime.ThreadContext);
descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
iconst_0
getstatic java.math.RoundingMode.HALF_UP:Ljava/math/RoundingMode;
invokevirtual org.jruby.RubyFloat.roundShared:(Lorg/jruby/runtime/ThreadContext;ILjava/math/RoundingMode;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyFloat;
0 1 1 context Lorg/jruby/runtime/ThreadContext;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"round"})
MethodParameters:
Name Flags
context
public org.jruby.runtime.builtin.IRubyObject round(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=7, args_size=3
start local 0 start local 1 start local 2 0: aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
astore 3
start local 3 1: iconst_0
istore 4
start local 4 2: aload 3
aload 2
invokestatic org.jruby.ast.util.ArgsUtil.getOptionsArg:(Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
astore 5
start local 5 3: aload 5
invokeinterface org.jruby.runtime.builtin.IRubyObject.isNil:()Z
ifeq 5
4: aload 2
invokestatic org.jruby.RubyFloat.num2int:(Lorg/jruby/runtime/builtin/IRubyObject;)I
istore 4
5: StackMap locals: org.jruby.Ruby int org.jruby.runtime.builtin.IRubyObject
StackMap stack:
aload 1
aload 5
invokestatic org.jruby.RubyFloat.getRoundingMode:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Ljava/math/RoundingMode;
astore 6
start local 6 6: aload 0
aload 1
iload 4
aload 6
invokevirtual org.jruby.RubyFloat.roundShared:(Lorg/jruby/runtime/ThreadContext;ILjava/math/RoundingMode;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/jruby/RubyFloat;
0 7 1 context Lorg/jruby/runtime/ThreadContext;
0 7 2 arg0 Lorg/jruby/runtime/builtin/IRubyObject;
1 7 3 runtime Lorg/jruby/Ruby;
2 7 4 digits I
3 7 5 opts Lorg/jruby/runtime/builtin/IRubyObject;
6 7 6 roundingMode Ljava/math/RoundingMode;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"round"})
MethodParameters:
Name Flags
context
arg0
public org.jruby.runtime.builtin.IRubyObject round(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=8, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
astore 4
start local 4 1: aload 4
aload 3
invokestatic org.jruby.ast.util.ArgsUtil.getOptionsArg:(Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
astore 5
start local 5 2: aload 2
invokestatic org.jruby.RubyFloat.num2int:(Lorg/jruby/runtime/builtin/IRubyObject;)I
istore 6
start local 6 3: aload 1
aload 5
invokestatic org.jruby.RubyFloat.getRoundingMode:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Ljava/math/RoundingMode;
astore 7
start local 7 4: aload 0
aload 1
iload 6
aload 7
invokevirtual org.jruby.RubyFloat.roundShared:(Lorg/jruby/runtime/ThreadContext;ILjava/math/RoundingMode;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/jruby/RubyFloat;
0 5 1 context Lorg/jruby/runtime/ThreadContext;
0 5 2 _digits Lorg/jruby/runtime/builtin/IRubyObject;
0 5 3 _opts Lorg/jruby/runtime/builtin/IRubyObject;
1 5 4 runtime Lorg/jruby/Ruby;
2 5 5 opts Lorg/jruby/runtime/builtin/IRubyObject;
3 5 6 digits I
4 5 7 roundingMode Ljava/math/RoundingMode;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"round"})
MethodParameters:
Name Flags
context
_digits
_opts
public org.jruby.runtime.builtin.IRubyObject roundShared(org.jruby.runtime.ThreadContext, int, java.math.RoundingMode);
descriptor: (Lorg/jruby/runtime/ThreadContext;ILjava/math/RoundingMode;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=12, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
astore 4
start local 4 1: aload 0
getfield org.jruby.RubyFloat.value:D
dstore 5
start local 5 2: dload 5
dconst_0
dcmpl
ifne 6
3: iload 2
ifle 4
aload 0
goto 5
StackMap locals: org.jruby.Ruby double
StackMap stack:
4: aload 4
invokestatic org.jruby.RubyFixnum.zero:(Lorg/jruby/Ruby;)Lorg/jruby/RubyFixnum;
StackMap locals:
StackMap stack: org.jruby.RubyNumeric
5: areturn
6: StackMap locals:
StackMap stack:
iload 2
ifge 8
7: aload 0
aload 1
invokevirtual org.jruby.RubyFloat.to_int:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
checkcast org.jruby.RubyInteger
aload 1
iload 2
aload 3
invokevirtual org.jruby.RubyInteger.roundShared:(Lorg/jruby/runtime/ThreadContext;ILjava/math/RoundingMode;)Lorg/jruby/RubyNumeric;
areturn
8: StackMap locals:
StackMap stack:
iload 2
ifne 11
9: aload 1
aload 3
dload 5
dconst_1
invokestatic org.jruby.RubyFloat.doRound:(Lorg/jruby/runtime/ThreadContext;Ljava/math/RoundingMode;DD)D
dstore 9
start local 9 10: aload 4
dload 9
invokestatic org.jruby.RubyFloat.dbl2ival:(Lorg/jruby/Ruby;D)Lorg/jruby/RubyInteger;
areturn
end local 9 11: StackMap locals:
StackMap stack:
aload 0
getfield org.jruby.RubyFloat.value:D
invokestatic java.lang.Double.isFinite:(D)Z
ifeq 19
12: iconst_1
newarray 11
astore 11
start local 11 13: dload 5
aload 11
invokestatic org.jruby.util.Numeric.frexp:(D[J)D
pop2
14: iload 2
aload 11
invokestatic org.jruby.RubyFloat.floatRoundOverflow:(I[J)Z
ifeq 15
aload 0
areturn
15: StackMap locals: org.jruby.RubyFloat org.jruby.runtime.ThreadContext int java.math.RoundingMode org.jruby.Ruby double top top top top long[]
StackMap stack:
iload 2
aload 11
invokestatic org.jruby.RubyFloat.floatRoundUnderflow:(I[J)Z
ifeq 16
aload 4
dconst_0
invokestatic org.jruby.RubyFloat.newFloat:(Lorg/jruby/Ruby;D)Lorg/jruby/RubyFloat;
areturn
16: StackMap locals:
StackMap stack:
ldc 10.0
iload 2
i2d
invokestatic java.lang.Math.pow:(DD)D
dstore 7
start local 7 17: aload 1
aload 3
dload 5
dload 7
invokestatic org.jruby.RubyFloat.doRound:(Lorg/jruby/runtime/ThreadContext;Ljava/math/RoundingMode;DD)D
dstore 9
start local 9 18: aload 4
dload 9
dload 7
ddiv
invokestatic org.jruby.RubyFloat.newFloat:(Lorg/jruby/Ruby;D)Lorg/jruby/RubyFloat;
areturn
end local 11 end local 9 end local 7 19: StackMap locals: org.jruby.RubyFloat org.jruby.runtime.ThreadContext int java.math.RoundingMode org.jruby.Ruby double
StackMap stack:
aload 0
areturn
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 20 0 this Lorg/jruby/RubyFloat;
0 20 1 context Lorg/jruby/runtime/ThreadContext;
0 20 2 ndigits I
0 20 3 mode Ljava/math/RoundingMode;
1 20 4 runtime Lorg/jruby/Ruby;
2 20 5 number D
17 19 7 f D
10 11 9 x D
18 19 9 x D
13 19 11 binexp [J
MethodParameters:
Name Flags
context
ndigits
mode
private static double doRound(org.jruby.runtime.ThreadContext, java.math.RoundingMode, double, double);
descriptor: (Lorg/jruby/runtime/ThreadContext;Ljava/math/RoundingMode;DD)D
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=6, args_size=4
start local 0 start local 1 start local 2 start local 4 0: invokestatic org.jruby.RubyFloat.$SWITCH_TABLE$java$math$RoundingMode:()[I
aload 1
invokevirtual java.math.RoundingMode.ordinal:()I
iaload
tableswitch { // 5 - 7
5: 1
6: 2
7: 3
default: 4
}
1: StackMap locals:
StackMap stack:
dload 2
dload 4
invokestatic org.jruby.RubyFloat.roundHalfUp:(DD)D
dreturn
2: StackMap locals:
StackMap stack:
dload 2
dload 4
invokestatic org.jruby.RubyFloat.roundHalfDown:(DD)D
dreturn
3: StackMap locals:
StackMap stack:
dload 2
dload 4
invokestatic org.jruby.RubyFloat.roundHalfEven:(DD)D
dreturn
4: StackMap locals:
StackMap stack:
aload 0
5: getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
new java.lang.StringBuilder
dup
ldc "invalid rounding mode: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual org.jruby.Ruby.newArgumentError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
athrow
end local 4 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 context Lorg/jruby/runtime/ThreadContext;
0 6 1 roundingMode Ljava/math/RoundingMode;
0 6 2 number D
0 6 4 scale D
MethodParameters:
Name Flags
context
roundingMode
number
scale
private static double roundHalfUp(double, double);
descriptor: (DD)D
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=9, args_size=2
start local 0 start local 2 0: dload 0
dload 2
dmul
dstore 6
start local 6 1: dload 0
dconst_0
dcmpl
iflt 2
iconst_1
goto 3
StackMap locals: double double top top double
StackMap stack:
2: iconst_m1
StackMap locals:
StackMap stack: int
3: istore 8
start local 8 4: dload 6
iload 8
i2d
dmul
dstore 6
5: dload 6
invokestatic org.jruby.RubyFloat.roundHalfUp:(D)D
dstore 4
start local 4 6: dload 4
iload 8
i2d
dmul
dstore 4
7: dload 2
dconst_1
dcmpl
ifne 8
dload 4
dreturn
8: StackMap locals: double double double double int
StackMap stack:
dload 0
dconst_0
dcmpl
ifle 12
9: dload 4
ldc 0.5
dadd
dload 2
ddiv
dload 0
dcmpg
ifgt 10
dload 4
dconst_1
dadd
dstore 4
10: StackMap locals:
StackMap stack:
dload 4
dstore 0
11: goto 14
12: StackMap locals:
StackMap stack:
dload 4
ldc 0.5
dsub
dload 2
ddiv
dload 0
dcmpl
iflt 13
dload 4
dconst_1
dsub
dstore 4
13: StackMap locals:
StackMap stack:
dload 4
dstore 0
14: StackMap locals:
StackMap stack:
dload 0
dreturn
end local 8 end local 6 end local 4 end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 x D
0 15 2 s D
6 15 4 f D
1 15 6 xs D
4 15 8 signum I
MethodParameters:
Name Flags
x
s
private static double roundHalfDown(double, double);
descriptor: (DD)D
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=9, args_size=2
start local 0 start local 2 0: dload 0
dload 2
dmul
dstore 6
start local 6 1: dload 0
dconst_0
dcmpl
iflt 2
iconst_1
goto 3
StackMap locals: double double top top double
StackMap stack:
2: iconst_m1
StackMap locals:
StackMap stack: int
3: istore 8
start local 8 4: dload 6
iload 8
i2d
dmul
dstore 6
5: dload 6
invokestatic org.jruby.RubyFloat.roundHalfUp:(D)D
dstore 4
start local 4 6: dload 4
iload 8
i2d
dmul
dstore 4
7: dload 0
dconst_0
dcmpl
ifle 11
8: dload 4
ldc 0.5
dsub
dload 2
ddiv
dload 0
dcmpl
iflt 9
dload 4
dconst_1
dsub
dstore 4
9: StackMap locals: double double double double int
StackMap stack:
dload 4
dstore 0
10: goto 13
11: StackMap locals:
StackMap stack:
dload 4
ldc 0.5
dadd
dload 2
ddiv
dload 0
dcmpg
ifgt 12
dload 4
dconst_1
dadd
dstore 4
12: StackMap locals:
StackMap stack:
dload 4
dstore 0
13: StackMap locals:
StackMap stack:
dload 0
dreturn
end local 8 end local 6 end local 4 end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 x D
0 14 2 s D
6 14 4 f D
1 14 6 xs D
4 14 8 signum I
MethodParameters:
Name Flags
x
s
private static double roundHalfUp(double);
descriptor: (D)D
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=4, args_size=1
start local 0 0: dload 0
dstore 2
start local 2 1: dload 2
dconst_0
dcmpl
iflt 6
2: dload 2
invokestatic java.lang.Math.floor:(D)D
dstore 2
3: dload 0
dload 2
dsub
ldc 0.5
dcmpl
iflt 9
4: dload 2
dconst_1
dadd
dstore 2
5: goto 9
6: StackMap locals: double
StackMap stack:
dload 2
invokestatic java.lang.Math.ceil:(D)D
dstore 2
7: dload 2
dload 0
dsub
ldc 0.5
dcmpl
iflt 9
8: dload 2
dconst_1
dsub
dstore 2
9: StackMap locals:
StackMap stack:
dload 2
dreturn
end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 n D
1 10 2 f D
MethodParameters:
Name Flags
n
private static double roundHalfEven(double, double);
descriptor: (DD)D
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=10, args_size=2
start local 0 start local 2 0: dload 0
dload 2
dmul
dstore 8
start local 8 1: dload 0
dconst_0
dcmpl
ifle 11
2: dload 8
invokestatic java.lang.Math.floor:(D)D
dstore 4
start local 4 3: dload 8
dload 4
dsub
dstore 6
start local 6 4: dload 6
ldc 0.5
dcmpl
ifle 6
5: dconst_1
dstore 6
goto 9
6: StackMap locals: double double double
StackMap stack:
dload 6
ldc 0.5
dcmpl
ifeq 7
dload 4
ldc 0.5
dadd
dload 2
ddiv
dload 0
dcmpg
ifgt 8
7: StackMap locals:
StackMap stack:
dload 4
ldc 2.0
drem
dstore 6
goto 9
8: StackMap locals:
StackMap stack:
dconst_0
dstore 6
9: StackMap locals:
StackMap stack:
dload 4
dload 6
dadd
dstore 0
10: goto 20
end local 6 end local 4 11: StackMap locals: double double top top top top double
StackMap stack:
dload 0
dconst_0
dcmpg
ifge 20
12: dload 8
invokestatic java.lang.Math.ceil:(D)D
dstore 4
start local 4 13: dload 4
dload 8
dsub
dstore 6
start local 6 14: dload 6
ldc 0.5
dcmpl
ifle 16
15: dconst_1
dstore 6
goto 19
16: StackMap locals: double double double double double
StackMap stack:
dload 6
ldc 0.5
dcmpl
ifeq 17
dload 4
ldc 0.5
dsub
dload 2
ddiv
dload 0
dcmpl
iflt 18
17: StackMap locals:
StackMap stack:
dload 4
dneg
ldc 2.0
drem
dstore 6
goto 19
18: StackMap locals:
StackMap stack:
dconst_0
dstore 6
19: StackMap locals:
StackMap stack:
dload 4
dload 6
dsub
dstore 0
end local 6 end local 4 20: StackMap locals: double double top top top top double
StackMap stack:
dload 0
dreturn
end local 8 end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 21 0 x D
0 21 2 s D
3 11 4 f D
13 20 4 f D
4 11 6 d D
14 20 6 d D
1 21 8 xs D
MethodParameters:
Name Flags
x
s
public org.jruby.runtime.builtin.IRubyObject nan_p();
descriptor: ()Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield org.jruby.RubyFloat.metaClass:Lorg/jruby/RubyClass;
getfield org.jruby.RubyClass.runtime:Lorg/jruby/Ruby;
aload 0
invokevirtual org.jruby.RubyFloat.isNaN:()Z
invokestatic org.jruby.RubyBoolean.newBoolean:(Lorg/jruby/Ruby;Z)Lorg/jruby/RubyBoolean;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyFloat;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"nan?"})
public boolean isNaN();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield org.jruby.RubyFloat.value:D
invokestatic java.lang.Double.isNaN:(D)Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyFloat;
public org.jruby.runtime.builtin.IRubyObject infinite_p();
descriptor: ()Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=1, args_size=1
start local 0 0: aload 0
getfield org.jruby.RubyFloat.value:D
invokestatic java.lang.Double.isInfinite:(D)Z
ifeq 4
1: aload 0
getfield org.jruby.RubyFloat.metaClass:Lorg/jruby/RubyClass;
getfield org.jruby.RubyClass.runtime:Lorg/jruby/Ruby;
aload 0
getfield org.jruby.RubyFloat.value:D
dconst_0
dcmpg
ifge 2
iconst_m1
goto 3
StackMap locals:
StackMap stack: org.jruby.Ruby
2: iconst_1
StackMap locals: org.jruby.RubyFloat
StackMap stack: org.jruby.Ruby int
3: i2l
invokestatic org.jruby.RubyFixnum.newFixnum:(Lorg/jruby/Ruby;J)Lorg/jruby/RubyFixnum;
areturn
4: StackMap locals:
StackMap stack:
aload 0
getfield org.jruby.RubyFloat.metaClass:Lorg/jruby/RubyClass;
getfield org.jruby.RubyClass.runtime:Lorg/jruby/Ruby;
invokevirtual org.jruby.Ruby.getNil:()Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/jruby/RubyFloat;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"infinite?"})
public boolean isInfinite();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield org.jruby.RubyFloat.value:D
invokestatic java.lang.Double.isInfinite:(D)Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyFloat;
public org.jruby.runtime.builtin.IRubyObject finite_p();
descriptor: ()Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
getfield org.jruby.RubyFloat.metaClass:Lorg/jruby/RubyClass;
getfield org.jruby.RubyClass.runtime:Lorg/jruby/Ruby;
astore 1
start local 1 1: aload 0
getfield org.jruby.RubyFloat.value:D
invokestatic java.lang.Double.isInfinite:(D)Z
ifne 2
aload 0
getfield org.jruby.RubyFloat.value:D
invokestatic java.lang.Double.isNaN:(D)Z
ifeq 3
2: StackMap locals: org.jruby.Ruby
StackMap stack:
aload 1
invokevirtual org.jruby.Ruby.getFalse:()Lorg/jruby/RubyBoolean;
areturn
3: StackMap locals:
StackMap stack:
aload 1
invokevirtual org.jruby.Ruby.getTrue:()Lorg/jruby/RubyBoolean;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/jruby/RubyFloat;
1 4 1 runtime Lorg/jruby/Ruby;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"finite?"})
private org.jruby.util.ByteList marshalDump();
descriptor: ()Lorg/jruby/util/ByteList;
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=2, args_size=1
start local 0 0: aload 0
getfield org.jruby.RubyFloat.value:D
invokestatic java.lang.Double.isInfinite:(D)Z
ifeq 3
aload 0
getfield org.jruby.RubyFloat.value:D
dconst_0
dcmpg
ifge 1
getstatic org.jruby.RubyFloat.NEGATIVE_INFINITY_BYTELIST:Lorg/jruby/util/ByteList;
goto 2
StackMap locals:
StackMap stack:
1: getstatic org.jruby.RubyFloat.INFINITY_BYTELIST:Lorg/jruby/util/ByteList;
StackMap locals:
StackMap stack: org.jruby.util.ByteList
2: areturn
3: StackMap locals:
StackMap stack:
aload 0
getfield org.jruby.RubyFloat.value:D
invokestatic java.lang.Double.isNaN:(D)Z
ifeq 4
getstatic org.jruby.RubyFloat.NAN_BYTELIST:Lorg/jruby/util/ByteList;
areturn
4: StackMap locals:
StackMap stack:
new org.jruby.util.ByteList
dup
invokespecial org.jruby.util.ByteList.<init>:()V
astore 1
start local 1 5: aload 1
getstatic java.util.Locale.US:Ljava/util/Locale;
ldc "%.17g"
aload 0
invokevirtual org.jruby.RubyFloat.getRuntime:()Lorg/jruby/Ruby;
aload 0
invokestatic org.jruby.RubyArray.newArray:(Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyArray;
invokestatic org.jruby.util.Sprintf.sprintf:(Lorg/jruby/util/ByteList;Ljava/util/Locale;Ljava/lang/CharSequence;Lorg/jruby/runtime/builtin/IRubyObject;)Z
pop
6: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/jruby/RubyFloat;
5 7 1 byteList Lorg/jruby/util/ByteList;
public static void marshalTo(org.jruby.RubyFloat, org.jruby.runtime.marshal.MarshalStream);
descriptor: (Lorg/jruby/RubyFloat;Lorg/jruby/runtime/marshal/MarshalStream;)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
aload 0
invokevirtual org.jruby.runtime.marshal.MarshalStream.registerLinkTarget:(Lorg/jruby/runtime/builtin/IRubyObject;)V
1: aload 1
aload 0
invokevirtual org.jruby.RubyFloat.marshalDump:()Lorg/jruby/util/ByteList;
invokevirtual org.jruby.runtime.marshal.MarshalStream.writeString:(Lorg/jruby/util/ByteList;)V
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 aFloat Lorg/jruby/RubyFloat;
0 3 1 output Lorg/jruby/runtime/marshal/MarshalStream;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
aFloat
output
public static org.jruby.RubyFloat unmarshalFrom(org.jruby.runtime.marshal.UnmarshalStream);
descriptor: (Lorg/jruby/runtime/marshal/UnmarshalStream;)Lorg/jruby/RubyFloat;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=3, args_size=1
start local 0 0: aload 0
invokevirtual org.jruby.runtime.marshal.UnmarshalStream.unmarshalString:()Lorg/jruby/util/ByteList;
astore 1
start local 1 1: aload 1
getstatic org.jruby.RubyFloat.NAN_BYTELIST:Lorg/jruby/util/ByteList;
invokevirtual org.jruby.util.ByteList.equals:(Ljava/lang/Object;)Z
ifeq 4
2: aload 0
invokevirtual org.jruby.runtime.marshal.UnmarshalStream.getRuntime:()Lorg/jruby/Ruby;
ldc NaN
invokestatic org.jruby.RubyFloat.newFloat:(Lorg/jruby/Ruby;D)Lorg/jruby/RubyFloat;
astore 2
start local 2 3: goto 13
end local 2 StackMap locals: org.jruby.util.ByteList
StackMap stack:
4: aload 1
getstatic org.jruby.RubyFloat.NEGATIVE_INFINITY_BYTELIST:Lorg/jruby/util/ByteList;
invokevirtual org.jruby.util.ByteList.equals:(Ljava/lang/Object;)Z
ifeq 7
5: aload 0
invokevirtual org.jruby.runtime.marshal.UnmarshalStream.getRuntime:()Lorg/jruby/Ruby;
ldc -Infinity
invokestatic org.jruby.RubyFloat.newFloat:(Lorg/jruby/Ruby;D)Lorg/jruby/RubyFloat;
astore 2
start local 2 6: goto 13
end local 2 StackMap locals:
StackMap stack:
7: aload 1
getstatic org.jruby.RubyFloat.INFINITY_BYTELIST:Lorg/jruby/util/ByteList;
invokevirtual org.jruby.util.ByteList.equals:(Ljava/lang/Object;)Z
ifeq 10
8: aload 0
invokevirtual org.jruby.runtime.marshal.UnmarshalStream.getRuntime:()Lorg/jruby/Ruby;
ldc Infinity
invokestatic org.jruby.RubyFloat.newFloat:(Lorg/jruby/Ruby;D)Lorg/jruby/RubyFloat;
astore 2
start local 2 9: goto 13
end local 2 10: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.jruby.runtime.marshal.UnmarshalStream.getRuntime:()Lorg/jruby/Ruby;
11: aload 1
iconst_0
invokestatic org.jruby.util.ConvertDouble.byteListToDouble19:(Lorg/jruby/util/ByteList;Z)D
12: invokestatic org.jruby.RubyFloat.newFloat:(Lorg/jruby/Ruby;D)Lorg/jruby/RubyFloat;
astore 2
start local 2 13: StackMap locals: org.jruby.RubyFloat
StackMap stack:
aload 0
aload 2
invokevirtual org.jruby.runtime.marshal.UnmarshalStream.registerLinkTarget:(Lorg/jruby/runtime/builtin/IRubyObject;)V
14: aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 input Lorg/jruby/runtime/marshal/UnmarshalStream;
1 15 1 value Lorg/jruby/util/ByteList;
3 4 2 result Lorg/jruby/RubyFloat;
6 7 2 result Lorg/jruby/RubyFloat;
9 10 2 result Lorg/jruby/RubyFloat;
13 15 2 result Lorg/jruby/RubyFloat;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
input
public org.jruby.runtime.builtin.IRubyObject next_float();
descriptor: ()Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=1, args_size=1
start local 0 0: aload 0
getfield org.jruby.RubyFloat.metaClass:Lorg/jruby/RubyClass;
getfield org.jruby.RubyClass.runtime:Lorg/jruby/Ruby;
aload 0
getfield org.jruby.RubyFloat.value:D
ldc Infinity
invokestatic java.lang.Math.nextAfter:(DD)D
invokestatic org.jruby.RubyFloat.newFloat:(Lorg/jruby/Ruby;D)Lorg/jruby/RubyFloat;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyFloat;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"next_float"})
public org.jruby.runtime.builtin.IRubyObject prev_float();
descriptor: ()Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=1, args_size=1
start local 0 0: aload 0
getfield org.jruby.RubyFloat.metaClass:Lorg/jruby/RubyClass;
getfield org.jruby.RubyClass.runtime:Lorg/jruby/Ruby;
aload 0
getfield org.jruby.RubyFloat.value:D
ldc -Infinity
invokestatic java.lang.Math.nextAfter:(DD)D
invokestatic org.jruby.RubyFloat.newFloat:(Lorg/jruby/Ruby;D)Lorg/jruby/RubyFloat;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyFloat;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"prev_float"})
public org.jruby.runtime.builtin.IRubyObject zero_p();
descriptor: ()Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
aload 0
invokevirtual org.jruby.RubyFloat.getRuntime:()Lorg/jruby/Ruby;
invokevirtual org.jruby.Ruby.getCurrentContext:()Lorg/jruby/runtime/ThreadContext;
invokevirtual org.jruby.RubyFloat.zero_p:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyFloat;
RuntimeVisibleAnnotations:
java.lang.Deprecated()
public org.jruby.runtime.builtin.IRubyObject floor(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject[]);
descriptor: (Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 2
arraylength
tableswitch { // 0 - 1
0: 1
1: 2
default: 3
}
1: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual org.jruby.RubyFloat.floor:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
2: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
iconst_0
aaload
invokevirtual org.jruby.RubyFloat.floor:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
3: StackMap locals:
StackMap stack:
aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
ldc "floor"
aload 2
arraylength
iconst_1
invokevirtual org.jruby.Ruby.newArgumentError:(Ljava/lang/String;II)Lorg/jruby/exceptions/RaiseException;
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/jruby/RubyFloat;
0 4 1 context Lorg/jruby/runtime/ThreadContext;
0 4 2 args [Lorg/jruby/runtime/builtin/IRubyObject;
RuntimeVisibleAnnotations:
java.lang.Deprecated()
MethodParameters:
Name Flags
context
args
public org.jruby.runtime.builtin.IRubyObject round(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject[]);
descriptor: (Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 2
arraylength
tableswitch { // 0 - 2
0: 1
1: 2
2: 3
default: 4
}
1: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual org.jruby.RubyFloat.round:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
2: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
iconst_0
aaload
invokevirtual org.jruby.RubyFloat.round:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
3: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
iconst_0
aaload
aload 2
iconst_1
aaload
invokevirtual org.jruby.RubyFloat.round:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
4: StackMap locals:
StackMap stack:
aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
ldc "round"
aload 2
arraylength
iconst_2
invokevirtual org.jruby.Ruby.newArgumentError:(Ljava/lang/String;II)Lorg/jruby/exceptions/RaiseException;
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/jruby/RubyFloat;
0 5 1 context Lorg/jruby/runtime/ThreadContext;
0 5 2 args [Lorg/jruby/runtime/builtin/IRubyObject;
RuntimeVisibleAnnotations:
java.lang.Deprecated()
MethodParameters:
Name Flags
context
args
private static org.jruby.runtime.JavaSites$FloatSites sites(org.jruby.runtime.ThreadContext);
descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/JavaSites$FloatSites;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.jruby.runtime.ThreadContext.sites:Lorg/jruby/runtime/JavaSites;
getfield org.jruby.runtime.JavaSites.Float:Lorg/jruby/runtime/JavaSites$FloatSites;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 context Lorg/jruby/runtime/ThreadContext;
MethodParameters:
Name Flags
context
static int[] $SWITCH_TABLE$org$jruby$runtime$ClassIndex();
descriptor: ()[I
flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=1, args_size=0
0: getstatic org.jruby.RubyFloat.$SWITCH_TABLE$org$jruby$runtime$ClassIndex:[I
dup
ifnull 1
areturn
StackMap locals:
StackMap stack: int[]
1: pop
invokestatic org.jruby.runtime.ClassIndex.values:()[Lorg/jruby/runtime/ClassIndex;
arraylength
newarray 10
astore 0
2: aload 0
getstatic org.jruby.runtime.ClassIndex.ARRAY:Lorg/jruby/runtime/ClassIndex;
invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
iconst_4
iastore
3: goto 5
StackMap locals: int[]
StackMap stack: java.lang.NoSuchFieldError
4: pop
StackMap locals:
StackMap stack:
5: aload 0
getstatic org.jruby.runtime.ClassIndex.BASICOBJECT:Lorg/jruby/runtime/ClassIndex;
invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
bipush 39
iastore
6: goto 8
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
7: pop
StackMap locals:
StackMap stack:
8: aload 0
getstatic org.jruby.runtime.ClassIndex.BIGDECIMAL:Lorg/jruby/runtime/ClassIndex;
invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
bipush 40
iastore
9: goto 11
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
10: pop
StackMap locals:
StackMap stack:
11: aload 0
getstatic org.jruby.runtime.ClassIndex.BIGNUM:Lorg/jruby/runtime/ClassIndex;
invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
iconst_3
iastore
12: goto 14
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
13: pop
StackMap locals:
StackMap stack:
14: aload 0
getstatic org.jruby.runtime.ClassIndex.BINDING:Lorg/jruby/runtime/ClassIndex;
invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
bipush 33
iastore
15: goto 17
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
16: pop
StackMap locals:
StackMap stack:
17: aload 0
getstatic org.jruby.runtime.ClassIndex.CLASS:Lorg/jruby/runtime/ClassIndex;
invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
bipush 14
iastore
18: goto 20
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
19: pop
StackMap locals:
StackMap stack:
20: aload 0
getstatic org.jruby.runtime.ClassIndex.COMPLEX:Lorg/jruby/runtime/ClassIndex;
invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
bipush 21
iastore
21: goto 23
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
22: pop
StackMap locals:
StackMap stack:
23: aload 0
getstatic org.jruby.runtime.ClassIndex.CONTINUATION:Lorg/jruby/runtime/ClassIndex;
invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
bipush 38
iastore
24: goto 26
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
25: pop
StackMap locals:
StackMap stack:
26: aload 0
getstatic org.jruby.runtime.ClassIndex.CONVERTER:Lorg/jruby/runtime/ClassIndex;
invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
bipush 24
iastore
27: goto 29
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
28: pop
StackMap locals:
StackMap stack:
29: aload 0
getstatic org.jruby.runtime.ClassIndex.DIR:Lorg/jruby/runtime/ClassIndex;
invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
bipush 36
iastore
30: goto 32
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
31: pop
StackMap locals:
StackMap stack:
32: aload 0
getstatic org.jruby.runtime.ClassIndex.ENCODING:Lorg/jruby/runtime/ClassIndex;
invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
bipush 23
iastore
33: goto 35
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
34: pop
StackMap locals:
StackMap stack:
35: aload 0
getstatic org.jruby.runtime.ClassIndex.EXCEPTION:Lorg/jruby/runtime/ClassIndex;
invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
bipush 31
iastore
36: goto 38
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
37: pop
StackMap locals:
StackMap stack:
38: aload 0
getstatic org.jruby.runtime.ClassIndex.FALSE:Lorg/jruby/runtime/ClassIndex;
invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
bipush 8
iastore
39: goto 41
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
40: pop
StackMap locals:
StackMap stack:
41: aload 0
getstatic org.jruby.runtime.ClassIndex.FILE:Lorg/jruby/runtime/ClassIndex;
invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
bipush 27
iastore
42: goto 44
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
43: pop
StackMap locals:
StackMap stack:
44: aload 0
getstatic org.jruby.runtime.ClassIndex.FIXNUM:Lorg/jruby/runtime/ClassIndex;
invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
iconst_2
iastore
45: goto 47
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
46: pop
StackMap locals:
StackMap stack:
47: aload 0
getstatic org.jruby.runtime.ClassIndex.FLOAT:Lorg/jruby/runtime/ClassIndex;
invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
bipush 12
iastore
48: goto 50
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
49: pop
StackMap locals:
StackMap stack:
50: aload 0
getstatic org.jruby.runtime.ClassIndex.GENERATOR:Lorg/jruby/runtime/ClassIndex;
invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
bipush 25
iastore
51: goto 53
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
52: pop
StackMap locals:
StackMap stack:
53: aload 0
getstatic org.jruby.runtime.ClassIndex.HASH:Lorg/jruby/runtime/ClassIndex;
invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
bipush 11
iastore
54: goto 56
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
55: pop
StackMap locals:
StackMap stack:
56: aload 0
getstatic org.jruby.runtime.ClassIndex.INTEGER:Lorg/jruby/runtime/ClassIndex;
invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
bipush 17
iastore
57: goto 59
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
58: pop
StackMap locals:
StackMap stack:
59: aload 0
getstatic org.jruby.runtime.ClassIndex.IO:Lorg/jruby/runtime/ClassIndex;
invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
bipush 32
iastore
60: goto 62
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
61: pop
StackMap locals:
StackMap stack:
62: aload 0
getstatic org.jruby.runtime.ClassIndex.MATCHDATA:Lorg/jruby/runtime/ClassIndex;
invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
bipush 28
iastore
63: goto 65
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
64: pop
StackMap locals:
StackMap stack:
65: aload 0
getstatic org.jruby.runtime.ClassIndex.MAX_CLASSES:Lorg/jruby/runtime/ClassIndex;
invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
bipush 41
iastore
66: goto 68
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
67: pop
StackMap locals:
StackMap stack:
68: aload 0
getstatic org.jruby.runtime.ClassIndex.METHOD:Lorg/jruby/runtime/ClassIndex;
invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
bipush 35
iastore
69: goto 71
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
70: pop
StackMap locals:
StackMap stack:
71: aload 0
getstatic org.jruby.runtime.ClassIndex.MODULE:Lorg/jruby/runtime/ClassIndex;
invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
bipush 13
iastore
72: goto 74
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
73: pop
StackMap locals:
StackMap stack:
74: aload 0
getstatic org.jruby.runtime.ClassIndex.NIL:Lorg/jruby/runtime/ClassIndex;
invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
bipush 6
iastore
75: goto 77
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
76: pop
StackMap locals:
StackMap stack:
77: aload 0
getstatic org.jruby.runtime.ClassIndex.NO_INDEX:Lorg/jruby/runtime/ClassIndex;
invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
iconst_1
iastore
78: goto 80
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
79: pop
StackMap locals:
StackMap stack:
80: aload 0
getstatic org.jruby.runtime.ClassIndex.NUMERIC:Lorg/jruby/runtime/ClassIndex;
invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
bipush 18
iastore
81: goto 83
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
82: pop
StackMap locals:
StackMap stack:
83: aload 0
getstatic org.jruby.runtime.ClassIndex.OBJECT:Lorg/jruby/runtime/ClassIndex;
invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
bipush 15
iastore
84: goto 86
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
85: pop
StackMap locals:
StackMap stack:
86: aload 0
getstatic org.jruby.runtime.ClassIndex.PROC:Lorg/jruby/runtime/ClassIndex;
invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
bipush 34
iastore
87: goto 89
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
88: pop
StackMap locals:
StackMap stack:
89: aload 0
getstatic org.jruby.runtime.ClassIndex.RANGE:Lorg/jruby/runtime/ClassIndex;
invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
bipush 19
iastore
90: goto 92
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
91: pop
StackMap locals:
StackMap stack:
92: aload 0
getstatic org.jruby.runtime.ClassIndex.RATIONAL:Lorg/jruby/runtime/ClassIndex;
invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
bipush 22
iastore
93: goto 95
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
94: pop
StackMap locals:
StackMap stack:
95: aload 0
getstatic org.jruby.runtime.ClassIndex.REGEXP:Lorg/jruby/runtime/ClassIndex;
invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
bipush 10
iastore
96: goto 98
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
97: pop
StackMap locals:
StackMap stack:
98: aload 0
getstatic org.jruby.runtime.ClassIndex.STRING:Lorg/jruby/runtime/ClassIndex;
invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
iconst_5
iastore
99: goto 101
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
100: pop
StackMap locals:
StackMap stack:
101: aload 0
getstatic org.jruby.runtime.ClassIndex.STRUCT:Lorg/jruby/runtime/ClassIndex;
invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
bipush 16
iastore
102: goto 104
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
103: pop
StackMap locals:
StackMap stack:
104: aload 0
getstatic org.jruby.runtime.ClassIndex.SYMBOL:Lorg/jruby/runtime/ClassIndex;
invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
bipush 9
iastore
105: goto 107
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
106: pop
StackMap locals:
StackMap stack:
107: aload 0
getstatic org.jruby.runtime.ClassIndex.THREAD:Lorg/jruby/runtime/ClassIndex;
invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
bipush 30
iastore
108: goto 110
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
109: pop
StackMap locals:
StackMap stack:
110: aload 0
getstatic org.jruby.runtime.ClassIndex.THREADGROUP:Lorg/jruby/runtime/ClassIndex;
invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
bipush 29
iastore
111: goto 113
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
112: pop
StackMap locals:
StackMap stack:
113: aload 0
getstatic org.jruby.runtime.ClassIndex.TIME:Lorg/jruby/runtime/ClassIndex;
invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
bipush 20
iastore
114: goto 116
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
115: pop
StackMap locals:
StackMap stack:
116: aload 0
getstatic org.jruby.runtime.ClassIndex.TRUE:Lorg/jruby/runtime/ClassIndex;
invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
bipush 7
iastore
117: goto 119
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
118: pop
StackMap locals:
StackMap stack:
119: aload 0
getstatic org.jruby.runtime.ClassIndex.UNBOUNDMETHOD:Lorg/jruby/runtime/ClassIndex;
invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
bipush 37
iastore
120: goto 122
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
121: pop
StackMap locals:
StackMap stack:
122: aload 0
getstatic org.jruby.runtime.ClassIndex.YIELDER:Lorg/jruby/runtime/ClassIndex;
invokevirtual org.jruby.runtime.ClassIndex.ordinal:()I
bipush 26
iastore
123: goto 125
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
124: pop
StackMap locals:
StackMap stack:
125: aload 0
dup
putstatic org.jruby.RubyFloat.$SWITCH_TABLE$org$jruby$runtime$ClassIndex:[I
areturn
LocalVariableTable:
Start End Slot Name Signature
Exception table:
from to target type
2 3 4 Class java.lang.NoSuchFieldError
5 6 7 Class java.lang.NoSuchFieldError
8 9 10 Class java.lang.NoSuchFieldError
11 12 13 Class java.lang.NoSuchFieldError
14 15 16 Class java.lang.NoSuchFieldError
17 18 19 Class java.lang.NoSuchFieldError
20 21 22 Class java.lang.NoSuchFieldError
23 24 25 Class java.lang.NoSuchFieldError
26 27 28 Class java.lang.NoSuchFieldError
29 30 31 Class java.lang.NoSuchFieldError
32 33 34 Class java.lang.NoSuchFieldError
35 36 37 Class java.lang.NoSuchFieldError
38 39 40 Class java.lang.NoSuchFieldError
41 42 43 Class java.lang.NoSuchFieldError
44 45 46 Class java.lang.NoSuchFieldError
47 48 49 Class java.lang.NoSuchFieldError
50 51 52 Class java.lang.NoSuchFieldError
53 54 55 Class java.lang.NoSuchFieldError
56 57 58 Class java.lang.NoSuchFieldError
59 60 61 Class java.lang.NoSuchFieldError
62 63 64 Class java.lang.NoSuchFieldError
65 66 67 Class java.lang.NoSuchFieldError
68 69 70 Class java.lang.NoSuchFieldError
71 72 73 Class java.lang.NoSuchFieldError
74 75 76 Class java.lang.NoSuchFieldError
77 78 79 Class java.lang.NoSuchFieldError
80 81 82 Class java.lang.NoSuchFieldError
83 84 85 Class java.lang.NoSuchFieldError
86 87 88 Class java.lang.NoSuchFieldError
89 90 91 Class java.lang.NoSuchFieldError
92 93 94 Class java.lang.NoSuchFieldError
95 96 97 Class java.lang.NoSuchFieldError
98 99 100 Class java.lang.NoSuchFieldError
101 102 103 Class java.lang.NoSuchFieldError
104 105 106 Class java.lang.NoSuchFieldError
107 108 109 Class java.lang.NoSuchFieldError
110 111 112 Class java.lang.NoSuchFieldError
113 114 115 Class java.lang.NoSuchFieldError
116 117 118 Class java.lang.NoSuchFieldError
119 120 121 Class java.lang.NoSuchFieldError
122 123 124 Class java.lang.NoSuchFieldError
static int[] $SWITCH_TABLE$java$math$RoundingMode();
descriptor: ()[I
flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=1, args_size=0
0: getstatic org.jruby.RubyFloat.$SWITCH_TABLE$java$math$RoundingMode:[I
dup
ifnull 1
areturn
StackMap locals:
StackMap stack: int[]
1: pop
invokestatic java.math.RoundingMode.values:()[Ljava/math/RoundingMode;
arraylength
newarray 10
astore 0
2: aload 0
getstatic java.math.RoundingMode.CEILING:Ljava/math/RoundingMode;
invokevirtual java.math.RoundingMode.ordinal:()I
iconst_3
iastore
3: goto 5
StackMap locals: int[]
StackMap stack: java.lang.NoSuchFieldError
4: pop
StackMap locals:
StackMap stack:
5: aload 0
getstatic java.math.RoundingMode.DOWN:Ljava/math/RoundingMode;
invokevirtual java.math.RoundingMode.ordinal:()I
iconst_2
iastore
6: goto 8
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
7: pop
StackMap locals:
StackMap stack:
8: aload 0
getstatic java.math.RoundingMode.FLOOR:Ljava/math/RoundingMode;
invokevirtual java.math.RoundingMode.ordinal:()I
iconst_4
iastore
9: goto 11
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
10: pop
StackMap locals:
StackMap stack:
11: aload 0
getstatic java.math.RoundingMode.HALF_DOWN:Ljava/math/RoundingMode;
invokevirtual java.math.RoundingMode.ordinal:()I
bipush 6
iastore
12: goto 14
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
13: pop
StackMap locals:
StackMap stack:
14: aload 0
getstatic java.math.RoundingMode.HALF_EVEN:Ljava/math/RoundingMode;
invokevirtual java.math.RoundingMode.ordinal:()I
bipush 7
iastore
15: goto 17
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
16: pop
StackMap locals:
StackMap stack:
17: aload 0
getstatic java.math.RoundingMode.HALF_UP:Ljava/math/RoundingMode;
invokevirtual java.math.RoundingMode.ordinal:()I
iconst_5
iastore
18: goto 20
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
19: pop
StackMap locals:
StackMap stack:
20: aload 0
getstatic java.math.RoundingMode.UNNECESSARY:Ljava/math/RoundingMode;
invokevirtual java.math.RoundingMode.ordinal:()I
bipush 8
iastore
21: goto 23
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
22: pop
StackMap locals:
StackMap stack:
23: aload 0
getstatic java.math.RoundingMode.UP:Ljava/math/RoundingMode;
invokevirtual java.math.RoundingMode.ordinal:()I
iconst_1
iastore
24: goto 26
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
25: pop
StackMap locals:
StackMap stack:
26: aload 0
dup
putstatic org.jruby.RubyFloat.$SWITCH_TABLE$java$math$RoundingMode:[I
areturn
LocalVariableTable:
Start End Slot Name Signature
Exception table:
from to target type
2 3 4 Class java.lang.NoSuchFieldError
5 6 7 Class java.lang.NoSuchFieldError
8 9 10 Class java.lang.NoSuchFieldError
11 12 13 Class java.lang.NoSuchFieldError
14 15 16 Class java.lang.NoSuchFieldError
17 18 19 Class java.lang.NoSuchFieldError
20 21 22 Class java.lang.NoSuchFieldError
23 24 25 Class java.lang.NoSuchFieldError
}
SourceFile: "RubyFloat.java"
InnerClasses:
public final JavaClassKindOf = org.jruby.RubyModule$JavaClassKindOf of org.jruby.RubyModule
public FloatSites = org.jruby.runtime.JavaSites$FloatSites of org.jruby.runtime.JavaSites
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyClass(name = {"Float"}, parent = "Numeric")