class freemarker.core.BuiltInsForSequences
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: freemarker.core.BuiltInsForSequences
super_class: java.lang.Object
{
private static boolean isBuggySeqButGoodCollection(freemarker.template.TemplateModel);
descriptor: (Lfreemarker/template/TemplateModel;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
instanceof freemarker.ext.beans.CollectionModel
ifeq 3
1: aload 0
checkcast freemarker.ext.beans.CollectionModel
invokevirtual freemarker.ext.beans.CollectionModel.getSupportsIndexedAccess:()Z
ifeq 2
iconst_0
goto 4
StackMap locals:
StackMap stack:
2: iconst_1
goto 4
3: StackMap locals:
StackMap stack:
iconst_0
4: StackMap locals:
StackMap stack: int
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 model Lfreemarker/template/TemplateModel;
MethodParameters:
Name Flags
model
private static boolean modelsEqual(int, freemarker.template.TemplateModel, freemarker.template.TemplateModel, freemarker.core.Environment);
descriptor: (ILfreemarker/template/TemplateModel;Lfreemarker/template/TemplateModel;Lfreemarker/core/Environment;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=12, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
aconst_null
1: iconst_1
aconst_null
2: aload 2
aconst_null
3: aconst_null
iconst_0
4: iconst_1
iconst_1
iconst_1
5: aload 3
6: invokestatic freemarker.core.EvalUtil.compare:(Lfreemarker/template/TemplateModel;Lfreemarker/core/Expression;ILjava/lang/String;Lfreemarker/template/TemplateModel;Lfreemarker/core/Expression;Lfreemarker/core/Expression;ZZZZLfreemarker/core/Environment;)Z
7: ireturn
8: StackMap locals:
StackMap stack: freemarker.template.TemplateException
astore 4
start local 4 9: new freemarker.core._TemplateModelException
dup
aload 4
iconst_4
anewarray java.lang.Object
dup
iconst_0
10: ldc "This error has occurred when comparing sequence item at 0-based index "
aastore
dup
iconst_1
iload 0
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
dup
iconst_2
11: ldc " to the searched item:\n"
aastore
dup
iconst_3
new freemarker.core._DelayedGetMessage
dup
aload 4
invokespecial freemarker.core._DelayedGetMessage.<init>:(Ljava/lang/Throwable;)V
12: aastore
invokespecial freemarker.core._TemplateModelException.<init>:(Ljava/lang/Throwable;[Ljava/lang/Object;)V
athrow
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 seqItemIndex I
0 13 1 seqItem Lfreemarker/template/TemplateModel;
0 13 2 searchedItem Lfreemarker/template/TemplateModel;
0 13 3 env Lfreemarker/core/Environment;
9 13 4 ex Lfreemarker/template/TemplateException;
Exception table:
from to target type
0 7 8 Class freemarker.template.TemplateException
Exceptions:
throws freemarker.template.TemplateModelException
MethodParameters:
Name Flags
seqItemIndex
seqItem
searchedItem
env
private void <init>();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lfreemarker/core/BuiltInsForSequences;
}
SourceFile: "BuiltInsForSequences.java"
NestMembers:
freemarker.core.BuiltInsForSequences$MinOrMaxBI freemarker.core.BuiltInsForSequences$chunkBI freemarker.core.BuiltInsForSequences$chunkBI$BIMethod freemarker.core.BuiltInsForSequences$chunkBI$ChunkedSequence freemarker.core.BuiltInsForSequences$chunkBI$ChunkedSequence$1 freemarker.core.BuiltInsForSequences$firstBI freemarker.core.BuiltInsForSequences$joinBI freemarker.core.BuiltInsForSequences$joinBI$BIMethodForCollection freemarker.core.BuiltInsForSequences$lastBI freemarker.core.BuiltInsForSequences$maxBI freemarker.core.BuiltInsForSequences$minBI freemarker.core.BuiltInsForSequences$reverseBI freemarker.core.BuiltInsForSequences$reverseBI$ReverseSequence freemarker.core.BuiltInsForSequences$seq_containsBI freemarker.core.BuiltInsForSequences$seq_containsBI$BIMethodForCollection freemarker.core.BuiltInsForSequences$seq_containsBI$BIMethodForSequence freemarker.core.BuiltInsForSequences$seq_index_ofBI freemarker.core.BuiltInsForSequences$seq_index_ofBI$BIMethod freemarker.core.BuiltInsForSequences$sequenceBI freemarker.core.BuiltInsForSequences$sortBI freemarker.core.BuiltInsForSequences$sortBI$BooleanKVPComparator freemarker.core.BuiltInsForSequences$sortBI$DateKVPComparator freemarker.core.BuiltInsForSequences$sortBI$KVP freemarker.core.BuiltInsForSequences$sortBI$LexicalKVPComparator freemarker.core.BuiltInsForSequences$sortBI$NumericalKVPComparator freemarker.core.BuiltInsForSequences$sort_byBI freemarker.core.BuiltInsForSequences$sort_byBI$BIMethod
InnerClasses:
private abstract MinOrMaxBI = freemarker.core.BuiltInsForSequences$MinOrMaxBI of freemarker.core.BuiltInsForSequences
chunkBI = freemarker.core.BuiltInsForSequences$chunkBI of freemarker.core.BuiltInsForSequences
firstBI = freemarker.core.BuiltInsForSequences$firstBI of freemarker.core.BuiltInsForSequences
joinBI = freemarker.core.BuiltInsForSequences$joinBI of freemarker.core.BuiltInsForSequences
lastBI = freemarker.core.BuiltInsForSequences$lastBI of freemarker.core.BuiltInsForSequences
maxBI = freemarker.core.BuiltInsForSequences$maxBI of freemarker.core.BuiltInsForSequences
minBI = freemarker.core.BuiltInsForSequences$minBI of freemarker.core.BuiltInsForSequences
reverseBI = freemarker.core.BuiltInsForSequences$reverseBI of freemarker.core.BuiltInsForSequences
seq_containsBI = freemarker.core.BuiltInsForSequences$seq_containsBI of freemarker.core.BuiltInsForSequences
seq_index_ofBI = freemarker.core.BuiltInsForSequences$seq_index_ofBI of freemarker.core.BuiltInsForSequences
sequenceBI = freemarker.core.BuiltInsForSequences$sequenceBI of freemarker.core.BuiltInsForSequences
sortBI = freemarker.core.BuiltInsForSequences$sortBI of freemarker.core.BuiltInsForSequences
sort_byBI = freemarker.core.BuiltInsForSequences$sort_byBI of freemarker.core.BuiltInsForSequences