class freemarker.core.BuiltInsForSequences$sortBI$NumericalKVPComparator implements java.util.Comparator
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: freemarker.core.BuiltInsForSequences$sortBI$NumericalKVPComparator
super_class: java.lang.Object
{
private freemarker.core.ArithmeticEngine ae;
descriptor: Lfreemarker/core/ArithmeticEngine;
flags: (0x0002) ACC_PRIVATE
private void <init>(freemarker.core.ArithmeticEngine);
descriptor: (Lfreemarker/core/ArithmeticEngine;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=2
start local 0 // freemarker.core.BuiltInsForSequences$sortBI$NumericalKVPComparator this
start local 1 // freemarker.core.ArithmeticEngine ae
0: .line 618
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
1: .line 619
aload 0 /* this */
aload 1 /* ae */
putfield freemarker.core.BuiltInsForSequences$sortBI$NumericalKVPComparator.ae:Lfreemarker/core/ArithmeticEngine;
2: .line 620
return
end local 1 // freemarker.core.ArithmeticEngine ae
end local 0 // freemarker.core.BuiltInsForSequences$sortBI$NumericalKVPComparator this
LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lfreemarker/core/BuiltInsForSequences$sortBI$NumericalKVPComparator;
0 3 1 ae Lfreemarker/core/ArithmeticEngine;
MethodParameters:
Name Flags
ae
public int compare(java.lang.Object, java.lang.Object);
descriptor: (Ljava/lang/Object;Ljava/lang/Object;)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=4, args_size=3
start local 0 // freemarker.core.BuiltInsForSequences$sortBI$NumericalKVPComparator this
start local 1 // java.lang.Object arg0
start local 2 // java.lang.Object arg1
0: .line 624
aload 0 /* this */
getfield freemarker.core.BuiltInsForSequences$sortBI$NumericalKVPComparator.ae:Lfreemarker/core/ArithmeticEngine;
1: .line 625
aload 1 /* arg0 */
checkcast freemarker.core.BuiltInsForSequences$sortBI$KVP
getfield freemarker.core.BuiltInsForSequences$sortBI$KVP.key:Ljava/lang/Object;
checkcast java.lang.Number
2: .line 626
aload 2 /* arg1 */
checkcast freemarker.core.BuiltInsForSequences$sortBI$KVP
getfield freemarker.core.BuiltInsForSequences$sortBI$KVP.key:Ljava/lang/Object;
checkcast java.lang.Number
3: .line 624
invokevirtual freemarker.core.ArithmeticEngine.compareNumbers:(Ljava/lang/Number;Ljava/lang/Number;)I
4: ireturn
5: .line 627
StackMap locals:
StackMap stack: freemarker.template.TemplateException
astore 3 /* e */
start local 3 // freemarker.template.TemplateException e
6: .line 628
new java.lang.ClassCastException
dup
7: .line 629
new java.lang.StringBuilder
dup
ldc "Failed to compare numbers: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 3 /* e */
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
8: .line 628
invokespecial java.lang.ClassCastException.<init>:(Ljava/lang/String;)V
athrow
end local 3 // freemarker.template.TemplateException e
end local 2 // java.lang.Object arg1
end local 1 // java.lang.Object arg0
end local 0 // freemarker.core.BuiltInsForSequences$sortBI$NumericalKVPComparator this
LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lfreemarker/core/BuiltInsForSequences$sortBI$NumericalKVPComparator;
0 9 1 arg0 Ljava/lang/Object;
0 9 2 arg1 Ljava/lang/Object;
6 9 3 e Lfreemarker/template/TemplateException;
Exception table:
from to target type
0 4 5 Class freemarker.template.TemplateException
MethodParameters:
Name Flags
arg0
arg1
}
SourceFile: "BuiltInsForSequences.java"
NestHost: freemarker.core.BuiltInsForSequences
InnerClasses:
sortBI = freemarker.core.BuiltInsForSequences$sortBI of freemarker.core.BuiltInsForSequences
private KVP = freemarker.core.BuiltInsForSequences$sortBI$KVP of freemarker.core.BuiltInsForSequences$sortBI
private NumericalKVPComparator = freemarker.core.BuiltInsForSequences$sortBI$NumericalKVPComparator of freemarker.core.BuiltInsForSequences$sortBI