public class android.animation.ArgbEvaluator implements android.animation.TypeEvaluator
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: android.animation.ArgbEvaluator
super_class: java.lang.Object
{
private static final android.animation.ArgbEvaluator sInstance;
descriptor: Landroid/animation/ArgbEvaluator;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: .line 24
new android.animation.ArgbEvaluator
dup
invokespecial android.animation.ArgbEvaluator.<init>:()V
putstatic android.animation.ArgbEvaluator.sInstance:Landroid/animation/ArgbEvaluator;
return
LocalVariableTable:
Start End Slot Name Signature
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 // android.animation.ArgbEvaluator this
0: .line 23
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
return
end local 0 // android.animation.ArgbEvaluator this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/animation/ArgbEvaluator;
public static android.animation.ArgbEvaluator getInstance();
descriptor: ()Landroid/animation/ArgbEvaluator;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: .line 35
getstatic android.animation.ArgbEvaluator.sInstance:Landroid/animation/ArgbEvaluator;
areturn
LocalVariableTable:
Start End Slot Name Signature
public java.lang.Object evaluate(float, java.lang.Object, java.lang.Object);
descriptor: (FLjava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=18, args_size=4
start local 0 // android.animation.ArgbEvaluator this
start local 1 // float fraction
start local 2 // java.lang.Object startValue
start local 3 // java.lang.Object endValue
0: .line 55
aload 2 /* startValue */
checkcast java.lang.Integer
invokevirtual java.lang.Integer.intValue:()I
istore 4 /* startInt */
start local 4 // int startInt
1: .line 56
iload 4 /* startInt */
bipush 24
ishr
sipush 255
iand
i2f
ldc 255.0
fdiv
fstore 5 /* startA */
start local 5 // float startA
2: .line 57
iload 4 /* startInt */
bipush 16
ishr
sipush 255
iand
i2f
ldc 255.0
fdiv
fstore 6 /* startR */
start local 6 // float startR
3: .line 58
iload 4 /* startInt */
bipush 8
ishr
sipush 255
iand
i2f
ldc 255.0
fdiv
fstore 7 /* startG */
start local 7 // float startG
4: .line 59
iload 4 /* startInt */
sipush 255
iand
i2f
ldc 255.0
fdiv
fstore 8 /* startB */
start local 8 // float startB
5: .line 61
aload 3 /* endValue */
checkcast java.lang.Integer
invokevirtual java.lang.Integer.intValue:()I
istore 9 /* endInt */
start local 9 // int endInt
6: .line 62
iload 9 /* endInt */
bipush 24
ishr
sipush 255
iand
i2f
ldc 255.0
fdiv
fstore 10 /* endA */
start local 10 // float endA
7: .line 63
iload 9 /* endInt */
bipush 16
ishr
sipush 255
iand
i2f
ldc 255.0
fdiv
fstore 11 /* endR */
start local 11 // float endR
8: .line 64
iload 9 /* endInt */
bipush 8
ishr
sipush 255
iand
i2f
ldc 255.0
fdiv
fstore 12 /* endG */
start local 12 // float endG
9: .line 65
iload 9 /* endInt */
sipush 255
iand
i2f
ldc 255.0
fdiv
fstore 13 /* endB */
start local 13 // float endB
10: .line 68
fload 6 /* startR */
f2d
ldc 2.2
invokestatic java.lang.Math.pow:(DD)D
d2f
fstore 6 /* startR */
11: .line 69
fload 7 /* startG */
f2d
ldc 2.2
invokestatic java.lang.Math.pow:(DD)D
d2f
fstore 7 /* startG */
12: .line 70
fload 8 /* startB */
f2d
ldc 2.2
invokestatic java.lang.Math.pow:(DD)D
d2f
fstore 8 /* startB */
13: .line 72
fload 11 /* endR */
f2d
ldc 2.2
invokestatic java.lang.Math.pow:(DD)D
d2f
fstore 11 /* endR */
14: .line 73
fload 12 /* endG */
f2d
ldc 2.2
invokestatic java.lang.Math.pow:(DD)D
d2f
fstore 12 /* endG */
15: .line 74
fload 13 /* endB */
f2d
ldc 2.2
invokestatic java.lang.Math.pow:(DD)D
d2f
fstore 13 /* endB */
16: .line 77
fload 5 /* startA */
fload 1 /* fraction */
fload 10 /* endA */
fload 5 /* startA */
fsub
fmul
fadd
fstore 14 /* a */
start local 14 // float a
17: .line 78
fload 6 /* startR */
fload 1 /* fraction */
fload 11 /* endR */
fload 6 /* startR */
fsub
fmul
fadd
fstore 15 /* r */
start local 15 // float r
18: .line 79
fload 7 /* startG */
fload 1 /* fraction */
fload 12 /* endG */
fload 7 /* startG */
fsub
fmul
fadd
fstore 16 /* g */
start local 16 // float g
19: .line 80
fload 8 /* startB */
fload 1 /* fraction */
fload 13 /* endB */
fload 8 /* startB */
fsub
fmul
fadd
fstore 17 /* b */
start local 17 // float b
20: .line 83
fload 14 /* a */
ldc 255.0
fmul
fstore 14 /* a */
21: .line 84
fload 15 /* r */
f2d
ldc 0.45454545454545453
invokestatic java.lang.Math.pow:(DD)D
d2f
ldc 255.0
fmul
fstore 15 /* r */
22: .line 85
fload 16 /* g */
f2d
ldc 0.45454545454545453
invokestatic java.lang.Math.pow:(DD)D
d2f
ldc 255.0
fmul
fstore 16 /* g */
23: .line 86
fload 17 /* b */
f2d
ldc 0.45454545454545453
invokestatic java.lang.Math.pow:(DD)D
d2f
ldc 255.0
fmul
fstore 17 /* b */
24: .line 88
fload 14 /* a */
invokestatic java.lang.Math.round:(F)I
bipush 24
ishl
fload 15 /* r */
invokestatic java.lang.Math.round:(F)I
bipush 16
ishl
ior
fload 16 /* g */
invokestatic java.lang.Math.round:(F)I
bipush 8
ishl
ior
fload 17 /* b */
invokestatic java.lang.Math.round:(F)I
ior
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
areturn
end local 17 // float b
end local 16 // float g
end local 15 // float r
end local 14 // float a
end local 13 // float endB
end local 12 // float endG
end local 11 // float endR
end local 10 // float endA
end local 9 // int endInt
end local 8 // float startB
end local 7 // float startG
end local 6 // float startR
end local 5 // float startA
end local 4 // int startInt
end local 3 // java.lang.Object endValue
end local 2 // java.lang.Object startValue
end local 1 // float fraction
end local 0 // android.animation.ArgbEvaluator this
LocalVariableTable:
Start End Slot Name Signature
0 25 0 this Landroid/animation/ArgbEvaluator;
0 25 1 fraction F
0 25 2 startValue Ljava/lang/Object;
0 25 3 endValue Ljava/lang/Object;
1 25 4 startInt I
2 25 5 startA F
3 25 6 startR F
4 25 7 startG F
5 25 8 startB F
6 25 9 endInt I
7 25 10 endA F
8 25 11 endR F
9 25 12 endG F
10 25 13 endB F
17 25 14 a F
18 25 15 r F
19 25 16 g F
20 25 17 b F
MethodParameters:
Name Flags
fraction
startValue
endValue
}
SourceFile: "ArgbEvaluator.java"