class freemarker.core.BuiltInsForStringsBasic$index_ofBI$BIMethod implements freemarker.template.TemplateMethodModelEx
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: freemarker.core.BuiltInsForStringsBasic$index_ofBI$BIMethod
super_class: java.lang.Object
{
private final java.lang.String s;
descriptor: Ljava/lang/String;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
final freemarker.core.BuiltInsForStringsBasic$index_ofBI this$1;
descriptor: Lfreemarker/core/BuiltInsForStringsBasic$index_ofBI;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
private void <init>(freemarker.core.BuiltInsForStringsBasic$index_ofBI, java.lang.String);
descriptor: (Lfreemarker/core/BuiltInsForStringsBasic$index_ofBI;Ljava/lang/String;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=3, args_size=3
start local 0 // freemarker.core.BuiltInsForStringsBasic$index_ofBI$BIMethod this
start local 2 // java.lang.String s
0: .line 195
aload 0 /* this */
aload 1
putfield freemarker.core.BuiltInsForStringsBasic$index_ofBI$BIMethod.this$1:Lfreemarker/core/BuiltInsForStringsBasic$index_ofBI;
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
1: .line 196
aload 0 /* this */
aload 2 /* s */
putfield freemarker.core.BuiltInsForStringsBasic$index_ofBI$BIMethod.s:Ljava/lang/String;
2: .line 197
return
end local 2 // java.lang.String s
end local 0 // freemarker.core.BuiltInsForStringsBasic$index_ofBI$BIMethod this
LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lfreemarker/core/BuiltInsForStringsBasic$index_ofBI$BIMethod;
0 3 2 s Ljava/lang/String;
MethodParameters:
Name Flags
this$0 final
s
public java.lang.Object exec(java.util.List);
descriptor: (Ljava/util/List;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=5, args_size=2
start local 0 // freemarker.core.BuiltInsForStringsBasic$index_ofBI$BIMethod this
start local 1 // java.util.List args
0: .line 200
aload 1 /* args */
invokeinterface java.util.List.size:()I
istore 2 /* argCnt */
start local 2 // int argCnt
1: .line 201
aload 0 /* this */
getfield freemarker.core.BuiltInsForStringsBasic$index_ofBI$BIMethod.this$1:Lfreemarker/core/BuiltInsForStringsBasic$index_ofBI;
iload 2 /* argCnt */
iconst_1
iconst_2
invokevirtual freemarker.core.BuiltInsForStringsBasic$index_ofBI.checkMethodArgCount:(III)V
2: .line 202
aload 0 /* this */
getfield freemarker.core.BuiltInsForStringsBasic$index_ofBI$BIMethod.this$1:Lfreemarker/core/BuiltInsForStringsBasic$index_ofBI;
aload 1 /* args */
iconst_0
invokevirtual freemarker.core.BuiltInsForStringsBasic$index_ofBI.getStringMethodArg:(Ljava/util/List;I)Ljava/lang/String;
astore 3 /* subStr */
start local 3 // java.lang.String subStr
3: .line 203
iload 2 /* argCnt */
iconst_1
if_icmple 8
4: .line 204
aload 0 /* this */
getfield freemarker.core.BuiltInsForStringsBasic$index_ofBI$BIMethod.this$1:Lfreemarker/core/BuiltInsForStringsBasic$index_ofBI;
aload 1 /* args */
iconst_1
invokevirtual freemarker.core.BuiltInsForStringsBasic$index_ofBI.getNumberMethodArg:(Ljava/util/List;I)Ljava/lang/Number;
invokevirtual java.lang.Number.intValue:()I
istore 4 /* startIdx */
start local 4 // int startIdx
5: .line 205
new freemarker.template.SimpleNumber
dup
aload 0 /* this */
getfield freemarker.core.BuiltInsForStringsBasic$index_ofBI$BIMethod.this$1:Lfreemarker/core/BuiltInsForStringsBasic$index_ofBI;
getfield freemarker.core.BuiltInsForStringsBasic$index_ofBI.findLast:Z
ifeq 6
aload 0 /* this */
getfield freemarker.core.BuiltInsForStringsBasic$index_ofBI$BIMethod.s:Ljava/lang/String;
aload 3 /* subStr */
iload 4 /* startIdx */
invokevirtual java.lang.String.lastIndexOf:(Ljava/lang/String;I)I
goto 7
StackMap locals: freemarker.core.BuiltInsForStringsBasic$index_ofBI$BIMethod java.util.List int java.lang.String int
StackMap stack: new 5 new 5
6: aload 0 /* this */
getfield freemarker.core.BuiltInsForStringsBasic$index_ofBI$BIMethod.s:Ljava/lang/String;
aload 3 /* subStr */
iload 4 /* startIdx */
invokevirtual java.lang.String.indexOf:(Ljava/lang/String;I)I
StackMap locals: freemarker.core.BuiltInsForStringsBasic$index_ofBI$BIMethod java.util.List int java.lang.String int
StackMap stack: new 5 new 5 int
7: invokespecial freemarker.template.SimpleNumber.<init>:(I)V
areturn
end local 4 // int startIdx
8: .line 207
StackMap locals:
StackMap stack:
new freemarker.template.SimpleNumber
dup
aload 0 /* this */
getfield freemarker.core.BuiltInsForStringsBasic$index_ofBI$BIMethod.this$1:Lfreemarker/core/BuiltInsForStringsBasic$index_ofBI;
getfield freemarker.core.BuiltInsForStringsBasic$index_ofBI.findLast:Z
ifeq 9
aload 0 /* this */
getfield freemarker.core.BuiltInsForStringsBasic$index_ofBI$BIMethod.s:Ljava/lang/String;
aload 3 /* subStr */
invokevirtual java.lang.String.lastIndexOf:(Ljava/lang/String;)I
goto 10
StackMap locals: freemarker.core.BuiltInsForStringsBasic$index_ofBI$BIMethod java.util.List int java.lang.String
StackMap stack: new 8 new 8
9: aload 0 /* this */
getfield freemarker.core.BuiltInsForStringsBasic$index_ofBI$BIMethod.s:Ljava/lang/String;
aload 3 /* subStr */
invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
StackMap locals: freemarker.core.BuiltInsForStringsBasic$index_ofBI$BIMethod java.util.List int java.lang.String
StackMap stack: new 8 new 8 int
10: invokespecial freemarker.template.SimpleNumber.<init>:(I)V
areturn
end local 3 // java.lang.String subStr
end local 2 // int argCnt
end local 1 // java.util.List args
end local 0 // freemarker.core.BuiltInsForStringsBasic$index_ofBI$BIMethod this
LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lfreemarker/core/BuiltInsForStringsBasic$index_ofBI$BIMethod;
0 11 1 args Ljava/util/List;
1 11 2 argCnt I
3 11 3 subStr Ljava/lang/String;
5 8 4 startIdx I
Exceptions:
throws freemarker.template.TemplateModelException
MethodParameters:
Name Flags
args
}
SourceFile: "BuiltInsForStringsBasic.java"
NestHost: freemarker.core.BuiltInsForStringsBasic
InnerClasses:
index_ofBI = freemarker.core.BuiltInsForStringsBasic$index_ofBI of freemarker.core.BuiltInsForStringsBasic
private BIMethod = freemarker.core.BuiltInsForStringsBasic$index_ofBI$BIMethod of freemarker.core.BuiltInsForStringsBasic$index_ofBI