public class org.apache.commons.math3.fraction.Fraction extends java.lang.Number implements org.apache.commons.math3.FieldElement<org.apache.commons.math3.fraction.Fraction>, java.lang.Comparable<org.apache.commons.math3.fraction.Fraction>, java.io.Serializable
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.apache.commons.math3.fraction.Fraction
super_class: java.lang.Number
{
public static final org.apache.commons.math3.fraction.Fraction TWO;
descriptor: Lorg/apache/commons/math3/fraction/Fraction;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final org.apache.commons.math3.fraction.Fraction ONE;
descriptor: Lorg/apache/commons/math3/fraction/Fraction;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final org.apache.commons.math3.fraction.Fraction ZERO;
descriptor: Lorg/apache/commons/math3/fraction/Fraction;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final org.apache.commons.math3.fraction.Fraction FOUR_FIFTHS;
descriptor: Lorg/apache/commons/math3/fraction/Fraction;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final org.apache.commons.math3.fraction.Fraction ONE_FIFTH;
descriptor: Lorg/apache/commons/math3/fraction/Fraction;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final org.apache.commons.math3.fraction.Fraction ONE_HALF;
descriptor: Lorg/apache/commons/math3/fraction/Fraction;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final org.apache.commons.math3.fraction.Fraction ONE_QUARTER;
descriptor: Lorg/apache/commons/math3/fraction/Fraction;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final org.apache.commons.math3.fraction.Fraction ONE_THIRD;
descriptor: Lorg/apache/commons/math3/fraction/Fraction;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final org.apache.commons.math3.fraction.Fraction THREE_FIFTHS;
descriptor: Lorg/apache/commons/math3/fraction/Fraction;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final org.apache.commons.math3.fraction.Fraction THREE_QUARTERS;
descriptor: Lorg/apache/commons/math3/fraction/Fraction;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final org.apache.commons.math3.fraction.Fraction TWO_FIFTHS;
descriptor: Lorg/apache/commons/math3/fraction/Fraction;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final org.apache.commons.math3.fraction.Fraction TWO_QUARTERS;
descriptor: Lorg/apache/commons/math3/fraction/Fraction;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final org.apache.commons.math3.fraction.Fraction TWO_THIRDS;
descriptor: Lorg/apache/commons/math3/fraction/Fraction;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final org.apache.commons.math3.fraction.Fraction MINUS_ONE;
descriptor: Lorg/apache/commons/math3/fraction/Fraction;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
private static final long serialVersionUID;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 3698073679419233275
private static final double DEFAULT_EPSILON;
descriptor: D
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 1.0E-5
private final int denominator;
descriptor: I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final int numerator;
descriptor: I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=0, args_size=0
0: new org.apache.commons.math3.fraction.Fraction
dup
iconst_2
iconst_1
invokespecial org.apache.commons.math3.fraction.Fraction.<init>:(II)V
putstatic org.apache.commons.math3.fraction.Fraction.TWO:Lorg/apache/commons/math3/fraction/Fraction;
1: new org.apache.commons.math3.fraction.Fraction
dup
iconst_1
iconst_1
invokespecial org.apache.commons.math3.fraction.Fraction.<init>:(II)V
putstatic org.apache.commons.math3.fraction.Fraction.ONE:Lorg/apache/commons/math3/fraction/Fraction;
2: new org.apache.commons.math3.fraction.Fraction
dup
iconst_0
iconst_1
invokespecial org.apache.commons.math3.fraction.Fraction.<init>:(II)V
putstatic org.apache.commons.math3.fraction.Fraction.ZERO:Lorg/apache/commons/math3/fraction/Fraction;
3: new org.apache.commons.math3.fraction.Fraction
dup
iconst_4
iconst_5
invokespecial org.apache.commons.math3.fraction.Fraction.<init>:(II)V
putstatic org.apache.commons.math3.fraction.Fraction.FOUR_FIFTHS:Lorg/apache/commons/math3/fraction/Fraction;
4: new org.apache.commons.math3.fraction.Fraction
dup
iconst_1
iconst_5
invokespecial org.apache.commons.math3.fraction.Fraction.<init>:(II)V
putstatic org.apache.commons.math3.fraction.Fraction.ONE_FIFTH:Lorg/apache/commons/math3/fraction/Fraction;
5: new org.apache.commons.math3.fraction.Fraction
dup
iconst_1
iconst_2
invokespecial org.apache.commons.math3.fraction.Fraction.<init>:(II)V
putstatic org.apache.commons.math3.fraction.Fraction.ONE_HALF:Lorg/apache/commons/math3/fraction/Fraction;
6: new org.apache.commons.math3.fraction.Fraction
dup
iconst_1
iconst_4
invokespecial org.apache.commons.math3.fraction.Fraction.<init>:(II)V
putstatic org.apache.commons.math3.fraction.Fraction.ONE_QUARTER:Lorg/apache/commons/math3/fraction/Fraction;
7: new org.apache.commons.math3.fraction.Fraction
dup
iconst_1
iconst_3
invokespecial org.apache.commons.math3.fraction.Fraction.<init>:(II)V
putstatic org.apache.commons.math3.fraction.Fraction.ONE_THIRD:Lorg/apache/commons/math3/fraction/Fraction;
8: new org.apache.commons.math3.fraction.Fraction
dup
iconst_3
iconst_5
invokespecial org.apache.commons.math3.fraction.Fraction.<init>:(II)V
putstatic org.apache.commons.math3.fraction.Fraction.THREE_FIFTHS:Lorg/apache/commons/math3/fraction/Fraction;
9: new org.apache.commons.math3.fraction.Fraction
dup
iconst_3
iconst_4
invokespecial org.apache.commons.math3.fraction.Fraction.<init>:(II)V
putstatic org.apache.commons.math3.fraction.Fraction.THREE_QUARTERS:Lorg/apache/commons/math3/fraction/Fraction;
10: new org.apache.commons.math3.fraction.Fraction
dup
iconst_2
iconst_5
invokespecial org.apache.commons.math3.fraction.Fraction.<init>:(II)V
putstatic org.apache.commons.math3.fraction.Fraction.TWO_FIFTHS:Lorg/apache/commons/math3/fraction/Fraction;
11: new org.apache.commons.math3.fraction.Fraction
dup
iconst_2
iconst_4
invokespecial org.apache.commons.math3.fraction.Fraction.<init>:(II)V
putstatic org.apache.commons.math3.fraction.Fraction.TWO_QUARTERS:Lorg/apache/commons/math3/fraction/Fraction;
12: new org.apache.commons.math3.fraction.Fraction
dup
iconst_2
iconst_3
invokespecial org.apache.commons.math3.fraction.Fraction.<init>:(II)V
putstatic org.apache.commons.math3.fraction.Fraction.TWO_THIRDS:Lorg/apache/commons/math3/fraction/Fraction;
13: new org.apache.commons.math3.fraction.Fraction
dup
iconst_m1
iconst_1
invokespecial org.apache.commons.math3.fraction.Fraction.<init>:(II)V
putstatic org.apache.commons.math3.fraction.Fraction.MINUS_ONE:Lorg/apache/commons/math3/fraction/Fraction;
14: return
LocalVariableTable:
Start End Slot Name Signature
public void <init>(double);
descriptor: (D)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=3, args_size=2
start local 0 start local 1 0: aload 0
dload 1
ldc 1.0E-5
bipush 100
invokespecial org.apache.commons.math3.fraction.Fraction.<init>:(DDI)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/apache/commons/math3/fraction/Fraction;
0 2 1 value D
Exceptions:
throws org.apache.commons.math3.fraction.FractionConversionException
MethodParameters:
Name Flags
value
public void <init>(double, double, int);
descriptor: (DDI)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=6, args_size=4
start local 0 start local 1 start local 3 start local 5 0: aload 0
dload 1
dload 3
ldc 2147483647
iload 5
invokespecial org.apache.commons.math3.fraction.Fraction.<init>:(DDII)V
1: return
end local 5 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/apache/commons/math3/fraction/Fraction;
0 2 1 value D
0 2 3 epsilon D
0 2 5 maxIterations I
Exceptions:
throws org.apache.commons.math3.fraction.FractionConversionException
MethodParameters:
Name Flags
value
epsilon
maxIterations
public void <init>(double, int);
descriptor: (DI)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=4, args_size=3
start local 0 start local 1 start local 3 0: aload 0
dload 1
dconst_0
iload 3
bipush 100
invokespecial org.apache.commons.math3.fraction.Fraction.<init>:(DDII)V
1: return
end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/apache/commons/math3/fraction/Fraction;
0 2 1 value D
0 2 3 maxDenominator I
Exceptions:
throws org.apache.commons.math3.fraction.FractionConversionException
MethodParameters:
Name Flags
value
maxDenominator
private void <init>(double, double, int, int);
descriptor: (DDII)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=8, locals=33, args_size=5
start local 0 start local 1 start local 3 start local 5 start local 6 0: aload 0
invokespecial java.lang.Number.<init>:()V
1: ldc 2147483647
lstore 7
start local 7 2: dload 1
dstore 9
start local 9 3: dload 9
invokestatic org.apache.commons.math3.util.FastMath.floor:(D)D
d2l
lstore 11
start local 11 4: lload 11
invokestatic org.apache.commons.math3.util.FastMath.abs:(J)J
lload 7
lcmp
ifle 6
5: new org.apache.commons.math3.fraction.FractionConversionException
dup
dload 1
lload 11
lconst_1
invokespecial org.apache.commons.math3.fraction.FractionConversionException.<init>:(DJJ)V
athrow
6: StackMap locals: org.apache.commons.math3.fraction.Fraction double double int int long double long
StackMap stack:
lload 11
l2d
dload 1
dsub
invokestatic org.apache.commons.math3.util.FastMath.abs:(D)D
dload 3
dcmpg
ifge 10
7: aload 0
lload 11
l2i
putfield org.apache.commons.math3.fraction.Fraction.numerator:I
8: aload 0
iconst_1
putfield org.apache.commons.math3.fraction.Fraction.denominator:I
9: return
10: StackMap locals:
StackMap stack:
lconst_1
lstore 13
start local 13 11: lconst_0
lstore 15
start local 15 12: lload 11
lstore 17
start local 17 13: lconst_1
lstore 19
start local 19 14: lconst_0
lstore 21
start local 21 15: lconst_1
lstore 23
start local 23 16: iconst_0
istore 25
start local 25 17: iconst_0
istore 26
start local 26 18: StackMap locals: org.apache.commons.math3.fraction.Fraction double double int int long double long long long long long long long int int
StackMap stack:
iinc 25 1
19: dconst_1
dload 9
lload 11
l2d
dsub
ddiv
dstore 27
start local 27 20: dload 27
invokestatic org.apache.commons.math3.util.FastMath.floor:(D)D
d2l
lstore 29
start local 29 21: lload 29
lload 17
lmul
lload 13
ladd
lstore 21
22: lload 29
lload 19
lmul
lload 15
ladd
lstore 23
23: lload 21
invokestatic org.apache.commons.math3.util.FastMath.abs:(J)J
lload 7
lcmp
ifgt 24
lload 23
invokestatic org.apache.commons.math3.util.FastMath.abs:(J)J
lload 7
lcmp
ifle 27
24: StackMap locals: double long
StackMap stack:
dload 3
dconst_0
dcmpl
ifne 26
lload 19
invokestatic org.apache.commons.math3.util.FastMath.abs:(J)J
iload 5
i2l
lcmp
ifge 26
25: goto 38
26: StackMap locals:
StackMap stack:
new org.apache.commons.math3.fraction.FractionConversionException
dup
dload 1
lload 21
lload 23
invokespecial org.apache.commons.math3.fraction.FractionConversionException.<init>:(DJJ)V
athrow
27: StackMap locals:
StackMap stack:
lload 21
l2d
lload 23
l2d
ddiv
dstore 31
start local 31 28: iload 25
iload 6
if_icmpge 36
dload 31
dload 1
dsub
invokestatic org.apache.commons.math3.util.FastMath.abs:(D)D
dload 3
dcmpl
ifle 36
lload 23
iload 5
i2l
lcmp
ifge 36
29: lload 17
lstore 13
30: lload 21
lstore 17
31: lload 19
lstore 15
32: lload 23
lstore 19
33: lload 29
lstore 11
34: dload 27
dstore 9
35: goto 37
36: StackMap locals: double
StackMap stack:
iconst_1
istore 26
end local 31 end local 29 end local 27 37: StackMap locals:
StackMap stack:
iload 26
ifeq 18
38: StackMap locals:
StackMap stack:
iload 25
iload 6
if_icmplt 40
39: new org.apache.commons.math3.fraction.FractionConversionException
dup
dload 1
iload 6
invokespecial org.apache.commons.math3.fraction.FractionConversionException.<init>:(DI)V
athrow
40: StackMap locals:
StackMap stack:
lload 23
iload 5
i2l
lcmp
ifge 44
41: aload 0
lload 21
l2i
putfield org.apache.commons.math3.fraction.Fraction.numerator:I
42: aload 0
lload 23
l2i
putfield org.apache.commons.math3.fraction.Fraction.denominator:I
43: goto 46
44: StackMap locals:
StackMap stack:
aload 0
lload 17
l2i
putfield org.apache.commons.math3.fraction.Fraction.numerator:I
45: aload 0
lload 19
l2i
putfield org.apache.commons.math3.fraction.Fraction.denominator:I
46: StackMap locals:
StackMap stack:
return
end local 26 end local 25 end local 23 end local 21 end local 19 end local 17 end local 15 end local 13 end local 11 end local 9 end local 7 end local 6 end local 5 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 47 0 this Lorg/apache/commons/math3/fraction/Fraction;
0 47 1 value D
0 47 3 epsilon D
0 47 5 maxDenominator I
0 47 6 maxIterations I
2 47 7 overflow J
3 47 9 r0 D
4 47 11 a0 J
11 47 13 p0 J
12 47 15 q0 J
13 47 17 p1 J
14 47 19 q1 J
15 47 21 p2 J
16 47 23 q2 J
17 47 25 n I
18 47 26 stop Z
20 37 27 r1 D
21 37 29 a1 J
28 37 31 convergent D
Exceptions:
throws org.apache.commons.math3.fraction.FractionConversionException
MethodParameters:
Name Flags
value
epsilon
maxDenominator
maxIterations
public void <init>(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
iconst_1
invokespecial org.apache.commons.math3.fraction.Fraction.<init>:(II)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/apache/commons/math3/fraction/Fraction;
0 2 1 num I
MethodParameters:
Name Flags
num
public void <init>(int, int);
descriptor: (II)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokespecial java.lang.Number.<init>:()V
1: iload 2
ifne 5
2: new org.apache.commons.math3.exception.MathArithmeticException
dup
getstatic org.apache.commons.math3.exception.util.LocalizedFormats.ZERO_DENOMINATOR_IN_FRACTION:Lorg/apache/commons/math3/exception/util/LocalizedFormats;
iconst_2
anewarray java.lang.Object
dup
iconst_0
3: iload 1
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
dup
iconst_1
iload 2
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
4: aastore
invokespecial org.apache.commons.math3.exception.MathArithmeticException.<init>:(Lorg/apache/commons/math3/exception/util/Localizable;[Ljava/lang/Object;)V
athrow
5: StackMap locals: org.apache.commons.math3.fraction.Fraction int int
StackMap stack:
iload 2
ifge 13
6: iload 1
ldc -2147483648
if_icmpeq 8
7: iload 2
ldc -2147483648
if_icmpne 11
8: StackMap locals:
StackMap stack:
new org.apache.commons.math3.exception.MathArithmeticException
dup
getstatic org.apache.commons.math3.exception.util.LocalizedFormats.OVERFLOW_IN_FRACTION:Lorg/apache/commons/math3/exception/util/LocalizedFormats;
iconst_2
anewarray java.lang.Object
dup
iconst_0
9: iload 1
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
dup
iconst_1
iload 2
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
10: aastore
invokespecial org.apache.commons.math3.exception.MathArithmeticException.<init>:(Lorg/apache/commons/math3/exception/util/Localizable;[Ljava/lang/Object;)V
athrow
11: StackMap locals:
StackMap stack:
iload 1
ineg
istore 1
12: iload 2
ineg
istore 2
13: StackMap locals:
StackMap stack:
iload 1
iload 2
invokestatic org.apache.commons.math3.util.ArithmeticUtils.gcd:(II)I
istore 3
start local 3 14: iload 3
iconst_1
if_icmple 17
15: iload 1
iload 3
idiv
istore 1
16: iload 2
iload 3
idiv
istore 2
17: StackMap locals: int
StackMap stack:
iload 2
ifge 20
18: iload 1
ineg
istore 1
19: iload 2
ineg
istore 2
20: StackMap locals:
StackMap stack:
aload 0
iload 1
putfield org.apache.commons.math3.fraction.Fraction.numerator:I
21: aload 0
iload 2
putfield org.apache.commons.math3.fraction.Fraction.denominator:I
22: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 23 0 this Lorg/apache/commons/math3/fraction/Fraction;
0 23 1 num I
0 23 2 den I
14 23 3 d I
MethodParameters:
Name Flags
num
den
public org.apache.commons.math3.fraction.Fraction abs();
descriptor: ()Lorg/apache/commons/math3/fraction/Fraction;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=1
start local 0 0: aload 0
getfield org.apache.commons.math3.fraction.Fraction.numerator:I
iflt 3
1: aload 0
astore 1
start local 1 2: goto 4
end local 1 3: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.apache.commons.math3.fraction.Fraction.negate:()Lorg/apache/commons/math3/fraction/Fraction;
astore 1
start local 1 4: StackMap locals: org.apache.commons.math3.fraction.Fraction
StackMap stack:
aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/apache/commons/math3/fraction/Fraction;
2 3 1 ret Lorg/apache/commons/math3/fraction/Fraction;
4 5 1 ret Lorg/apache/commons/math3/fraction/Fraction;
public int compareTo(org.apache.commons.math3.fraction.Fraction);
descriptor: (Lorg/apache/commons/math3/fraction/Fraction;)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=6, args_size=2
start local 0 start local 1 0: aload 0
getfield org.apache.commons.math3.fraction.Fraction.numerator:I
i2l
aload 1
getfield org.apache.commons.math3.fraction.Fraction.denominator:I
i2l
lmul
lstore 2
start local 2 1: aload 0
getfield org.apache.commons.math3.fraction.Fraction.denominator:I
i2l
aload 1
getfield org.apache.commons.math3.fraction.Fraction.numerator:I
i2l
lmul
lstore 4
start local 4 2: lload 2
lload 4
lcmp
ifge 3
iconst_m1
goto 5
StackMap locals: long long
StackMap stack:
3: lload 2
lload 4
lcmp
ifle 4
iconst_1
goto 5
StackMap locals:
StackMap stack:
4: iconst_0
StackMap locals:
StackMap stack: int
5: ireturn
end local 4 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/apache/commons/math3/fraction/Fraction;
0 6 1 object Lorg/apache/commons/math3/fraction/Fraction;
1 6 2 nOd J
2 6 4 dOn J
MethodParameters:
Name Flags
object
public double doubleValue();
descriptor: ()D
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: aload 0
getfield org.apache.commons.math3.fraction.Fraction.numerator:I
i2d
aload 0
getfield org.apache.commons.math3.fraction.Fraction.denominator:I
i2d
ddiv
dreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/commons/math3/fraction/Fraction;
public boolean equals(java.lang.Object);
descriptor: (Ljava/lang/Object;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
aload 1
if_acmpne 2
1: iconst_1
ireturn
2: StackMap locals:
StackMap stack:
aload 1
instanceof org.apache.commons.math3.fraction.Fraction
ifeq 8
3: aload 1
checkcast org.apache.commons.math3.fraction.Fraction
astore 2
start local 2 4: aload 0
getfield org.apache.commons.math3.fraction.Fraction.numerator:I
aload 2
getfield org.apache.commons.math3.fraction.Fraction.numerator:I
if_icmpne 7
5: aload 0
getfield org.apache.commons.math3.fraction.Fraction.denominator:I
aload 2
getfield org.apache.commons.math3.fraction.Fraction.denominator:I
if_icmpne 7
6: iconst_1
ireturn
StackMap locals: org.apache.commons.math3.fraction.Fraction
StackMap stack:
7: iconst_0
ireturn
end local 2 8: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/apache/commons/math3/fraction/Fraction;
0 9 1 other Ljava/lang/Object;
4 8 2 rhs Lorg/apache/commons/math3/fraction/Fraction;
MethodParameters:
Name Flags
other
public float floatValue();
descriptor: ()F
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual org.apache.commons.math3.fraction.Fraction.doubleValue:()D
d2f
freturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/commons/math3/fraction/Fraction;
public int getDenominator();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.apache.commons.math3.fraction.Fraction.denominator:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/commons/math3/fraction/Fraction;
public int getNumerator();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.apache.commons.math3.fraction.Fraction.numerator:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/commons/math3/fraction/Fraction;
public int hashCode();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: bipush 37
sipush 629
aload 0
getfield org.apache.commons.math3.fraction.Fraction.numerator:I
iadd
imul
aload 0
getfield org.apache.commons.math3.fraction.Fraction.denominator:I
iadd
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/commons/math3/fraction/Fraction;
public int intValue();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual org.apache.commons.math3.fraction.Fraction.doubleValue:()D
d2i
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/commons/math3/fraction/Fraction;
public long longValue();
descriptor: ()J
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual org.apache.commons.math3.fraction.Fraction.doubleValue:()D
d2l
lreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/commons/math3/fraction/Fraction;
public org.apache.commons.math3.fraction.Fraction negate();
descriptor: ()Lorg/apache/commons/math3/fraction/Fraction;
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=1, args_size=1
start local 0 0: aload 0
getfield org.apache.commons.math3.fraction.Fraction.numerator:I
ldc -2147483648
if_icmpne 2
1: new org.apache.commons.math3.exception.MathArithmeticException
dup
getstatic org.apache.commons.math3.exception.util.LocalizedFormats.OVERFLOW_IN_FRACTION:Lorg/apache/commons/math3/exception/util/LocalizedFormats;
iconst_2
anewarray java.lang.Object
dup
iconst_0
aload 0
getfield org.apache.commons.math3.fraction.Fraction.numerator:I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
dup
iconst_1
aload 0
getfield org.apache.commons.math3.fraction.Fraction.denominator:I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
invokespecial org.apache.commons.math3.exception.MathArithmeticException.<init>:(Lorg/apache/commons/math3/exception/util/Localizable;[Ljava/lang/Object;)V
athrow
2: StackMap locals:
StackMap stack:
new org.apache.commons.math3.fraction.Fraction
dup
aload 0
getfield org.apache.commons.math3.fraction.Fraction.numerator:I
ineg
aload 0
getfield org.apache.commons.math3.fraction.Fraction.denominator:I
invokespecial org.apache.commons.math3.fraction.Fraction.<init>:(II)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/apache/commons/math3/fraction/Fraction;
public org.apache.commons.math3.fraction.Fraction reciprocal();
descriptor: ()Lorg/apache/commons/math3/fraction/Fraction;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: new org.apache.commons.math3.fraction.Fraction
dup
aload 0
getfield org.apache.commons.math3.fraction.Fraction.denominator:I
aload 0
getfield org.apache.commons.math3.fraction.Fraction.numerator:I
invokespecial org.apache.commons.math3.fraction.Fraction.<init>:(II)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/commons/math3/fraction/Fraction;
public org.apache.commons.math3.fraction.Fraction add(org.apache.commons.math3.fraction.Fraction);
descriptor: (Lorg/apache/commons/math3/fraction/Fraction;)Lorg/apache/commons/math3/fraction/Fraction;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
iconst_1
invokevirtual org.apache.commons.math3.fraction.Fraction.addSub:(Lorg/apache/commons/math3/fraction/Fraction;Z)Lorg/apache/commons/math3/fraction/Fraction;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/commons/math3/fraction/Fraction;
0 1 1 fraction Lorg/apache/commons/math3/fraction/Fraction;
MethodParameters:
Name Flags
fraction
public org.apache.commons.math3.fraction.Fraction add(int);
descriptor: (I)Lorg/apache/commons/math3/fraction/Fraction;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: new org.apache.commons.math3.fraction.Fraction
dup
aload 0
getfield org.apache.commons.math3.fraction.Fraction.numerator:I
iload 1
aload 0
getfield org.apache.commons.math3.fraction.Fraction.denominator:I
imul
iadd
aload 0
getfield org.apache.commons.math3.fraction.Fraction.denominator:I
invokespecial org.apache.commons.math3.fraction.Fraction.<init>:(II)V
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/commons/math3/fraction/Fraction;
0 1 1 i I
MethodParameters:
Name Flags
i final
public org.apache.commons.math3.fraction.Fraction subtract(org.apache.commons.math3.fraction.Fraction);
descriptor: (Lorg/apache/commons/math3/fraction/Fraction;)Lorg/apache/commons/math3/fraction/Fraction;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
iconst_0
invokevirtual org.apache.commons.math3.fraction.Fraction.addSub:(Lorg/apache/commons/math3/fraction/Fraction;Z)Lorg/apache/commons/math3/fraction/Fraction;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/commons/math3/fraction/Fraction;
0 1 1 fraction Lorg/apache/commons/math3/fraction/Fraction;
MethodParameters:
Name Flags
fraction
public org.apache.commons.math3.fraction.Fraction subtract(int);
descriptor: (I)Lorg/apache/commons/math3/fraction/Fraction;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: new org.apache.commons.math3.fraction.Fraction
dup
aload 0
getfield org.apache.commons.math3.fraction.Fraction.numerator:I
iload 1
aload 0
getfield org.apache.commons.math3.fraction.Fraction.denominator:I
imul
isub
aload 0
getfield org.apache.commons.math3.fraction.Fraction.denominator:I
invokespecial org.apache.commons.math3.fraction.Fraction.<init>:(II)V
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/commons/math3/fraction/Fraction;
0 1 1 i I
MethodParameters:
Name Flags
i final
private org.apache.commons.math3.fraction.Fraction addSub(org.apache.commons.math3.fraction.Fraction, boolean);
descriptor: (Lorg/apache/commons/math3/fraction/Fraction;Z)Lorg/apache/commons/math3/fraction/Fraction;
flags: (0x0002) ACC_PRIVATE
Code:
stack=7, locals=10, args_size=3
start local 0 start local 1 start local 2 0: aload 1
ifnonnull 2
1: new org.apache.commons.math3.exception.NullArgumentException
dup
getstatic org.apache.commons.math3.exception.util.LocalizedFormats.FRACTION:Lorg/apache/commons/math3/exception/util/LocalizedFormats;
iconst_0
anewarray java.lang.Object
invokespecial org.apache.commons.math3.exception.NullArgumentException.<init>:(Lorg/apache/commons/math3/exception/util/Localizable;[Ljava/lang/Object;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.commons.math3.fraction.Fraction.numerator:I
ifne 6
3: iload 2
ifeq 4
aload 1
goto 5
StackMap locals:
StackMap stack:
4: aload 1
invokevirtual org.apache.commons.math3.fraction.Fraction.negate:()Lorg/apache/commons/math3/fraction/Fraction;
StackMap locals:
StackMap stack: org.apache.commons.math3.fraction.Fraction
5: areturn
6: StackMap locals:
StackMap stack:
aload 1
getfield org.apache.commons.math3.fraction.Fraction.numerator:I
ifne 8
7: aload 0
areturn
8: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.commons.math3.fraction.Fraction.denominator:I
aload 1
getfield org.apache.commons.math3.fraction.Fraction.denominator:I
invokestatic org.apache.commons.math3.util.ArithmeticUtils.gcd:(II)I
istore 3
start local 3 9: iload 3
iconst_1
if_icmpne 17
10: aload 0
getfield org.apache.commons.math3.fraction.Fraction.numerator:I
aload 1
getfield org.apache.commons.math3.fraction.Fraction.denominator:I
invokestatic org.apache.commons.math3.util.ArithmeticUtils.mulAndCheck:(II)I
istore 4
start local 4 11: aload 1
getfield org.apache.commons.math3.fraction.Fraction.numerator:I
aload 0
getfield org.apache.commons.math3.fraction.Fraction.denominator:I
invokestatic org.apache.commons.math3.util.ArithmeticUtils.mulAndCheck:(II)I
istore 5
start local 5 12: new org.apache.commons.math3.fraction.Fraction
dup
13: iload 2
ifeq 14
iload 4
iload 5
invokestatic org.apache.commons.math3.util.ArithmeticUtils.addAndCheck:(II)I
goto 15
14: StackMap locals: org.apache.commons.math3.fraction.Fraction org.apache.commons.math3.fraction.Fraction int int int int
StackMap stack: new 12 new 12
iload 4
iload 5
invokestatic org.apache.commons.math3.util.ArithmeticUtils.subAndCheck:(II)I
15: StackMap locals: org.apache.commons.math3.fraction.Fraction org.apache.commons.math3.fraction.Fraction int int int int
StackMap stack: new 12 new 12 int
aload 0
getfield org.apache.commons.math3.fraction.Fraction.denominator:I
aload 1
getfield org.apache.commons.math3.fraction.Fraction.denominator:I
invokestatic org.apache.commons.math3.util.ArithmeticUtils.mulAndCheck:(II)I
16: invokespecial org.apache.commons.math3.fraction.Fraction.<init>:(II)V
areturn
end local 5 end local 4 17: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.commons.math3.fraction.Fraction.numerator:I
i2l
invokestatic java.math.BigInteger.valueOf:(J)Ljava/math/BigInteger;
18: aload 1
getfield org.apache.commons.math3.fraction.Fraction.denominator:I
iload 3
idiv
i2l
invokestatic java.math.BigInteger.valueOf:(J)Ljava/math/BigInteger;
invokevirtual java.math.BigInteger.multiply:(Ljava/math/BigInteger;)Ljava/math/BigInteger;
19: astore 4
start local 4 20: aload 1
getfield org.apache.commons.math3.fraction.Fraction.numerator:I
i2l
invokestatic java.math.BigInteger.valueOf:(J)Ljava/math/BigInteger;
21: aload 0
getfield org.apache.commons.math3.fraction.Fraction.denominator:I
iload 3
idiv
i2l
invokestatic java.math.BigInteger.valueOf:(J)Ljava/math/BigInteger;
invokevirtual java.math.BigInteger.multiply:(Ljava/math/BigInteger;)Ljava/math/BigInteger;
22: astore 5
start local 5 23: iload 2
ifeq 24
aload 4
aload 5
invokevirtual java.math.BigInteger.add:(Ljava/math/BigInteger;)Ljava/math/BigInteger;
goto 25
StackMap locals: java.math.BigInteger java.math.BigInteger
StackMap stack:
24: aload 4
aload 5
invokevirtual java.math.BigInteger.subtract:(Ljava/math/BigInteger;)Ljava/math/BigInteger;
StackMap locals:
StackMap stack: java.math.BigInteger
25: astore 6
start local 6 26: aload 6
iload 3
i2l
invokestatic java.math.BigInteger.valueOf:(J)Ljava/math/BigInteger;
invokevirtual java.math.BigInteger.mod:(Ljava/math/BigInteger;)Ljava/math/BigInteger;
invokevirtual java.math.BigInteger.intValue:()I
istore 7
start local 7 27: iload 7
ifne 28
iload 3
goto 29
StackMap locals: java.math.BigInteger int
StackMap stack:
28: iload 7
iload 3
invokestatic org.apache.commons.math3.util.ArithmeticUtils.gcd:(II)I
StackMap locals:
StackMap stack: int
29: istore 8
start local 8 30: aload 6
iload 8
i2l
invokestatic java.math.BigInteger.valueOf:(J)Ljava/math/BigInteger;
invokevirtual java.math.BigInteger.divide:(Ljava/math/BigInteger;)Ljava/math/BigInteger;
astore 9
start local 9 31: aload 9
invokevirtual java.math.BigInteger.bitLength:()I
bipush 31
if_icmple 35
32: new org.apache.commons.math3.exception.MathArithmeticException
dup
getstatic org.apache.commons.math3.exception.util.LocalizedFormats.NUMERATOR_OVERFLOW_AFTER_MULTIPLY:Lorg/apache/commons/math3/exception/util/LocalizedFormats;
iconst_1
anewarray java.lang.Object
dup
iconst_0
33: aload 9
34: aastore
invokespecial org.apache.commons.math3.exception.MathArithmeticException.<init>:(Lorg/apache/commons/math3/exception/util/Localizable;[Ljava/lang/Object;)V
athrow
35: StackMap locals: int java.math.BigInteger
StackMap stack:
new org.apache.commons.math3.fraction.Fraction
dup
aload 9
invokevirtual java.math.BigInteger.intValue:()I
36: aload 0
getfield org.apache.commons.math3.fraction.Fraction.denominator:I
iload 3
idiv
37: aload 1
getfield org.apache.commons.math3.fraction.Fraction.denominator:I
iload 8
idiv
38: invokestatic org.apache.commons.math3.util.ArithmeticUtils.mulAndCheck:(II)I
39: invokespecial org.apache.commons.math3.fraction.Fraction.<init>:(II)V
areturn
end local 9 end local 8 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 40 0 this Lorg/apache/commons/math3/fraction/Fraction;
0 40 1 fraction Lorg/apache/commons/math3/fraction/Fraction;
0 40 2 isAdd Z
9 40 3 d1 I
11 17 4 uvp I
12 17 5 upv I
20 40 4 uvp Ljava/math/BigInteger;
23 40 5 upv Ljava/math/BigInteger;
26 40 6 t Ljava/math/BigInteger;
27 40 7 tmodd1 I
30 40 8 d2 I
31 40 9 w Ljava/math/BigInteger;
MethodParameters:
Name Flags
fraction
isAdd
public org.apache.commons.math3.fraction.Fraction multiply(org.apache.commons.math3.fraction.Fraction);
descriptor: (Lorg/apache/commons/math3/fraction/Fraction;)Lorg/apache/commons/math3/fraction/Fraction;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=2
start local 0 start local 1 0: aload 1
ifnonnull 2
1: new org.apache.commons.math3.exception.NullArgumentException
dup
getstatic org.apache.commons.math3.exception.util.LocalizedFormats.FRACTION:Lorg/apache/commons/math3/exception/util/LocalizedFormats;
iconst_0
anewarray java.lang.Object
invokespecial org.apache.commons.math3.exception.NullArgumentException.<init>:(Lorg/apache/commons/math3/exception/util/Localizable;[Ljava/lang/Object;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.commons.math3.fraction.Fraction.numerator:I
ifeq 3
aload 1
getfield org.apache.commons.math3.fraction.Fraction.numerator:I
ifne 4
3: StackMap locals:
StackMap stack:
getstatic org.apache.commons.math3.fraction.Fraction.ZERO:Lorg/apache/commons/math3/fraction/Fraction;
areturn
4: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.commons.math3.fraction.Fraction.numerator:I
aload 1
getfield org.apache.commons.math3.fraction.Fraction.denominator:I
invokestatic org.apache.commons.math3.util.ArithmeticUtils.gcd:(II)I
istore 2
start local 2 5: aload 1
getfield org.apache.commons.math3.fraction.Fraction.numerator:I
aload 0
getfield org.apache.commons.math3.fraction.Fraction.denominator:I
invokestatic org.apache.commons.math3.util.ArithmeticUtils.gcd:(II)I
istore 3
start local 3 6: aload 0
getfield org.apache.commons.math3.fraction.Fraction.numerator:I
iload 2
idiv
aload 1
getfield org.apache.commons.math3.fraction.Fraction.numerator:I
iload 3
idiv
invokestatic org.apache.commons.math3.util.ArithmeticUtils.mulAndCheck:(II)I
7: aload 0
getfield org.apache.commons.math3.fraction.Fraction.denominator:I
iload 3
idiv
aload 1
getfield org.apache.commons.math3.fraction.Fraction.denominator:I
iload 2
idiv
invokestatic org.apache.commons.math3.util.ArithmeticUtils.mulAndCheck:(II)I
8: invokestatic org.apache.commons.math3.fraction.Fraction.getReducedFraction:(II)Lorg/apache/commons/math3/fraction/Fraction;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/apache/commons/math3/fraction/Fraction;
0 9 1 fraction Lorg/apache/commons/math3/fraction/Fraction;
5 9 2 d1 I
6 9 3 d2 I
MethodParameters:
Name Flags
fraction
public org.apache.commons.math3.fraction.Fraction multiply(int);
descriptor: (I)Lorg/apache/commons/math3/fraction/Fraction;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
new org.apache.commons.math3.fraction.Fraction
dup
iload 1
invokespecial org.apache.commons.math3.fraction.Fraction.<init>:(I)V
invokevirtual org.apache.commons.math3.fraction.Fraction.multiply:(Lorg/apache/commons/math3/fraction/Fraction;)Lorg/apache/commons/math3/fraction/Fraction;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/commons/math3/fraction/Fraction;
0 1 1 i I
MethodParameters:
Name Flags
i final
public org.apache.commons.math3.fraction.Fraction divide(org.apache.commons.math3.fraction.Fraction);
descriptor: (Lorg/apache/commons/math3/fraction/Fraction;)Lorg/apache/commons/math3/fraction/Fraction;
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=2, args_size=2
start local 0 start local 1 0: aload 1
ifnonnull 2
1: new org.apache.commons.math3.exception.NullArgumentException
dup
getstatic org.apache.commons.math3.exception.util.LocalizedFormats.FRACTION:Lorg/apache/commons/math3/exception/util/LocalizedFormats;
iconst_0
anewarray java.lang.Object
invokespecial org.apache.commons.math3.exception.NullArgumentException.<init>:(Lorg/apache/commons/math3/exception/util/Localizable;[Ljava/lang/Object;)V
athrow
2: StackMap locals:
StackMap stack:
aload 1
getfield org.apache.commons.math3.fraction.Fraction.numerator:I
ifne 6
3: new org.apache.commons.math3.exception.MathArithmeticException
dup
getstatic org.apache.commons.math3.exception.util.LocalizedFormats.ZERO_FRACTION_TO_DIVIDE_BY:Lorg/apache/commons/math3/exception/util/LocalizedFormats;
iconst_2
anewarray java.lang.Object
dup
iconst_0
4: aload 1
getfield org.apache.commons.math3.fraction.Fraction.numerator:I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
dup
iconst_1
aload 1
getfield org.apache.commons.math3.fraction.Fraction.denominator:I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
5: aastore
invokespecial org.apache.commons.math3.exception.MathArithmeticException.<init>:(Lorg/apache/commons/math3/exception/util/Localizable;[Ljava/lang/Object;)V
athrow
6: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual org.apache.commons.math3.fraction.Fraction.reciprocal:()Lorg/apache/commons/math3/fraction/Fraction;
invokevirtual org.apache.commons.math3.fraction.Fraction.multiply:(Lorg/apache/commons/math3/fraction/Fraction;)Lorg/apache/commons/math3/fraction/Fraction;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/apache/commons/math3/fraction/Fraction;
0 7 1 fraction Lorg/apache/commons/math3/fraction/Fraction;
MethodParameters:
Name Flags
fraction
public org.apache.commons.math3.fraction.Fraction divide(int);
descriptor: (I)Lorg/apache/commons/math3/fraction/Fraction;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
new org.apache.commons.math3.fraction.Fraction
dup
iload 1
invokespecial org.apache.commons.math3.fraction.Fraction.<init>:(I)V
invokevirtual org.apache.commons.math3.fraction.Fraction.divide:(Lorg/apache/commons/math3/fraction/Fraction;)Lorg/apache/commons/math3/fraction/Fraction;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/commons/math3/fraction/Fraction;
0 1 1 i I
MethodParameters:
Name Flags
i final
public double percentageValue();
descriptor: ()D
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: ldc 100.0
aload 0
invokevirtual org.apache.commons.math3.fraction.Fraction.doubleValue:()D
dmul
dreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/commons/math3/fraction/Fraction;
public static org.apache.commons.math3.fraction.Fraction getReducedFraction(int, int);
descriptor: (II)Lorg/apache/commons/math3/fraction/Fraction;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=7, locals=3, args_size=2
start local 0 start local 1 0: iload 1
ifne 4
1: new org.apache.commons.math3.exception.MathArithmeticException
dup
getstatic org.apache.commons.math3.exception.util.LocalizedFormats.ZERO_DENOMINATOR_IN_FRACTION:Lorg/apache/commons/math3/exception/util/LocalizedFormats;
iconst_2
anewarray java.lang.Object
dup
iconst_0
2: iload 0
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
dup
iconst_1
iload 1
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
3: aastore
invokespecial org.apache.commons.math3.exception.MathArithmeticException.<init>:(Lorg/apache/commons/math3/exception/util/Localizable;[Ljava/lang/Object;)V
athrow
4: StackMap locals:
StackMap stack:
iload 0
ifne 6
5: getstatic org.apache.commons.math3.fraction.Fraction.ZERO:Lorg/apache/commons/math3/fraction/Fraction;
areturn
6: StackMap locals:
StackMap stack:
iload 1
ldc -2147483648
if_icmpne 8
iload 0
iconst_1
iand
ifne 8
7: iload 0
iconst_2
idiv
istore 0
iload 1
iconst_2
idiv
istore 1
8: StackMap locals:
StackMap stack:
iload 1
ifge 16
9: iload 0
ldc -2147483648
if_icmpeq 11
10: iload 1
ldc -2147483648
if_icmpne 14
11: StackMap locals:
StackMap stack:
new org.apache.commons.math3.exception.MathArithmeticException
dup
getstatic org.apache.commons.math3.exception.util.LocalizedFormats.OVERFLOW_IN_FRACTION:Lorg/apache/commons/math3/exception/util/LocalizedFormats;
iconst_2
anewarray java.lang.Object
dup
iconst_0
12: iload 0
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
dup
iconst_1
iload 1
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
13: aastore
invokespecial org.apache.commons.math3.exception.MathArithmeticException.<init>:(Lorg/apache/commons/math3/exception/util/Localizable;[Ljava/lang/Object;)V
athrow
14: StackMap locals:
StackMap stack:
iload 0
ineg
istore 0
15: iload 1
ineg
istore 1
16: StackMap locals:
StackMap stack:
iload 0
iload 1
invokestatic org.apache.commons.math3.util.ArithmeticUtils.gcd:(II)I
istore 2
start local 2 17: iload 0
iload 2
idiv
istore 0
18: iload 1
iload 2
idiv
istore 1
19: new org.apache.commons.math3.fraction.Fraction
dup
iload 0
iload 1
invokespecial org.apache.commons.math3.fraction.Fraction.<init>:(II)V
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 20 0 numerator I
0 20 1 denominator I
17 20 2 gcd I
MethodParameters:
Name Flags
numerator
denominator
public java.lang.String toString();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: aconst_null
astore 1
start local 1 1: aload 0
getfield org.apache.commons.math3.fraction.Fraction.denominator:I
iconst_1
if_icmpne 4
2: aload 0
getfield org.apache.commons.math3.fraction.Fraction.numerator:I
invokestatic java.lang.Integer.toString:(I)Ljava/lang/String;
astore 1
3: goto 8
StackMap locals: java.lang.String
StackMap stack:
4: aload 0
getfield org.apache.commons.math3.fraction.Fraction.numerator:I
ifne 7
5: ldc "0"
astore 1
6: goto 8
7: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
aload 0
getfield org.apache.commons.math3.fraction.Fraction.numerator:I
invokestatic java.lang.String.valueOf:(I)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc " / "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield org.apache.commons.math3.fraction.Fraction.denominator:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 1
8: StackMap locals:
StackMap stack:
aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/apache/commons/math3/fraction/Fraction;
1 9 1 str Ljava/lang/String;
public org.apache.commons.math3.fraction.FractionField getField();
descriptor: ()Lorg/apache/commons/math3/fraction/FractionField;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: invokestatic org.apache.commons.math3.fraction.FractionField.getInstance:()Lorg/apache/commons/math3/fraction/FractionField;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/commons/math3/fraction/Fraction;
public org.apache.commons.math3.Field getField();
descriptor: ()Lorg/apache/commons/math3/Field;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
0: aload 0
invokevirtual org.apache.commons.math3.fraction.Fraction.getField:()Lorg/apache/commons/math3/fraction/FractionField;
areturn
LocalVariableTable:
Start End Slot Name Signature
public int compareTo(java.lang.Object);
descriptor: (Ljava/lang/Object;)I
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
aload 1
checkcast org.apache.commons.math3.fraction.Fraction
invokevirtual org.apache.commons.math3.fraction.Fraction.compareTo:(Lorg/apache/commons/math3/fraction/Fraction;)I
ireturn
LocalVariableTable:
Start End Slot Name Signature
public java.lang.Object reciprocal();
descriptor: ()Ljava/lang/Object;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
0: aload 0
invokevirtual org.apache.commons.math3.fraction.Fraction.reciprocal:()Lorg/apache/commons/math3/fraction/Fraction;
areturn
LocalVariableTable:
Start End Slot Name Signature
Exceptions:
throws org.apache.commons.math3.exception.MathArithmeticException
public java.lang.Object negate();
descriptor: ()Ljava/lang/Object;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
0: aload 0
invokevirtual org.apache.commons.math3.fraction.Fraction.negate:()Lorg/apache/commons/math3/fraction/Fraction;
areturn
LocalVariableTable:
Start End Slot Name Signature
public java.lang.Object multiply(int);
descriptor: (I)Ljava/lang/Object;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
iload 1
invokevirtual org.apache.commons.math3.fraction.Fraction.multiply:(I)Lorg/apache/commons/math3/fraction/Fraction;
areturn
LocalVariableTable:
Start End Slot Name Signature
public java.lang.Object multiply(java.lang.Object);
descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
aload 1
checkcast org.apache.commons.math3.fraction.Fraction
invokevirtual org.apache.commons.math3.fraction.Fraction.multiply:(Lorg/apache/commons/math3/fraction/Fraction;)Lorg/apache/commons/math3/fraction/Fraction;
areturn
LocalVariableTable:
Start End Slot Name Signature
Exceptions:
throws org.apache.commons.math3.exception.NullArgumentException
public java.lang.Object divide(java.lang.Object);
descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
aload 1
checkcast org.apache.commons.math3.fraction.Fraction
invokevirtual org.apache.commons.math3.fraction.Fraction.divide:(Lorg/apache/commons/math3/fraction/Fraction;)Lorg/apache/commons/math3/fraction/Fraction;
areturn
LocalVariableTable:
Start End Slot Name Signature
Exceptions:
throws org.apache.commons.math3.exception.NullArgumentException, org.apache.commons.math3.exception.MathArithmeticException
public java.lang.Object subtract(java.lang.Object);
descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
aload 1
checkcast org.apache.commons.math3.fraction.Fraction
invokevirtual org.apache.commons.math3.fraction.Fraction.subtract:(Lorg/apache/commons/math3/fraction/Fraction;)Lorg/apache/commons/math3/fraction/Fraction;
areturn
LocalVariableTable:
Start End Slot Name Signature
Exceptions:
throws org.apache.commons.math3.exception.NullArgumentException
public java.lang.Object add(java.lang.Object);
descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
aload 1
checkcast org.apache.commons.math3.fraction.Fraction
invokevirtual org.apache.commons.math3.fraction.Fraction.add:(Lorg/apache/commons/math3/fraction/Fraction;)Lorg/apache/commons/math3/fraction/Fraction;
areturn
LocalVariableTable:
Start End Slot Name Signature
Exceptions:
throws org.apache.commons.math3.exception.NullArgumentException
}
Signature: Ljava/lang/Number;Lorg/apache/commons/math3/FieldElement<Lorg/apache/commons/math3/fraction/Fraction;>;Ljava/lang/Comparable<Lorg/apache/commons/math3/fraction/Fraction;>;Ljava/io/Serializable;
SourceFile: "Fraction.java"