class freemarker.core.BuiltInsForStringsRegexp$RegexMatchModel implements freemarker.template.TemplateBooleanModel, freemarker.template.TemplateCollectionModel, freemarker.template.TemplateSequenceModel
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: freemarker.core.BuiltInsForStringsRegexp$RegexMatchModel
super_class: java.lang.Object
{
final java.util.regex.Pattern pattern;
descriptor: Ljava/util/regex/Pattern;
flags: (0x0010) ACC_FINAL
final java.lang.String input;
descriptor: Ljava/lang/String;
flags: (0x0010) ACC_FINAL
private java.util.regex.Matcher firedEntireInputMatcher;
descriptor: Ljava/util/regex/Matcher;
flags: (0x0002) ACC_PRIVATE
private java.lang.Boolean entireInputMatched;
descriptor: Ljava/lang/Boolean;
flags: (0x0002) ACC_PRIVATE
private freemarker.template.TemplateSequenceModel entireInputMatchGroups;
descriptor: Lfreemarker/template/TemplateSequenceModel;
flags: (0x0002) ACC_PRIVATE
private java.util.ArrayList matchingInputParts;
descriptor: Ljava/util/ArrayList;
flags: (0x0002) ACC_PRIVATE
void <init>(java.util.regex.Pattern, java.lang.String);
descriptor: (Ljava/util/regex/Pattern;Ljava/lang/String;)V
flags: (0x0000)
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 1
putfield freemarker.core.BuiltInsForStringsRegexp$RegexMatchModel.pattern:Ljava/util/regex/Pattern;
2: aload 0
aload 2
putfield freemarker.core.BuiltInsForStringsRegexp$RegexMatchModel.input:Ljava/lang/String;
3: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lfreemarker/core/BuiltInsForStringsRegexp$RegexMatchModel;
0 4 1 pattern Ljava/util/regex/Pattern;
0 4 2 input Ljava/lang/String;
MethodParameters:
Name Flags
pattern
input
public freemarker.template.TemplateModel get(int);
descriptor: (I)Lfreemarker/template/TemplateModel;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield freemarker.core.BuiltInsForStringsRegexp$RegexMatchModel.matchingInputParts:Ljava/util/ArrayList;
astore 2
start local 2 1: aload 2
ifnonnull 3
2: aload 0
invokevirtual freemarker.core.BuiltInsForStringsRegexp$RegexMatchModel.getMatchingInputPartsAndStoreResults:()Ljava/util/ArrayList;
astore 2
3: StackMap locals: java.util.ArrayList
StackMap stack:
aload 2
iload 1
invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
checkcast freemarker.template.TemplateModel
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lfreemarker/core/BuiltInsForStringsRegexp$RegexMatchModel;
0 4 1 i I
1 4 2 matchingInputParts Ljava/util/ArrayList;
Exceptions:
throws freemarker.template.TemplateModelException
MethodParameters:
Name Flags
i
public boolean getAsBoolean();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=1
start local 0 0: aload 0
getfield freemarker.core.BuiltInsForStringsRegexp$RegexMatchModel.entireInputMatched:Ljava/lang/Boolean;
astore 1
start local 1 1: aload 1
ifnull 2
aload 1
invokevirtual java.lang.Boolean.booleanValue:()Z
goto 3
StackMap locals: java.lang.Boolean
StackMap stack:
2: aload 0
invokevirtual freemarker.core.BuiltInsForStringsRegexp$RegexMatchModel.isEntrieInputMatchesAndStoreResults:()Z
StackMap locals:
StackMap stack: int
3: ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lfreemarker/core/BuiltInsForStringsRegexp$RegexMatchModel;
1 4 1 result Ljava/lang/Boolean;
freemarker.template.TemplateModel getGroups();
descriptor: ()Lfreemarker/template/TemplateModel;
flags: (0x0000)
Code:
stack=4, locals=4, args_size=1
start local 0 0: aload 0
getfield freemarker.core.BuiltInsForStringsRegexp$RegexMatchModel.entireInputMatchGroups:Lfreemarker/template/TemplateSequenceModel;
astore 1
start local 1 1: aload 1
ifnonnull 9
2: aload 0
getfield freemarker.core.BuiltInsForStringsRegexp$RegexMatchModel.firedEntireInputMatcher:Ljava/util/regex/Matcher;
astore 2
start local 2 3: aload 2
ifnonnull 6
4: aload 0
invokevirtual freemarker.core.BuiltInsForStringsRegexp$RegexMatchModel.isEntrieInputMatchesAndStoreResults:()Z
pop
5: aload 0
getfield freemarker.core.BuiltInsForStringsRegexp$RegexMatchModel.firedEntireInputMatcher:Ljava/util/regex/Matcher;
astore 2
6: StackMap locals: freemarker.template.TemplateSequenceModel java.util.regex.Matcher
StackMap stack:
aload 2
astore 3
start local 3 7: new freemarker.core.BuiltInsForStringsRegexp$RegexMatchModel$1
dup
aload 0
aload 3
invokespecial freemarker.core.BuiltInsForStringsRegexp$RegexMatchModel$1.<init>:(Lfreemarker/core/BuiltInsForStringsRegexp$RegexMatchModel;Ljava/util/regex/Matcher;)V
astore 1
8: aload 0
aload 1
putfield freemarker.core.BuiltInsForStringsRegexp$RegexMatchModel.entireInputMatchGroups:Lfreemarker/template/TemplateSequenceModel;
end local 3 end local 2 9: StackMap locals:
StackMap stack:
aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lfreemarker/core/BuiltInsForStringsRegexp$RegexMatchModel;
1 10 1 entireInputMatchGroups Lfreemarker/template/TemplateSequenceModel;
3 9 2 t Ljava/util/regex/Matcher;
7 9 3 firedEntireInputMatcher Ljava/util/regex/Matcher;
private java.util.ArrayList getMatchingInputPartsAndStoreResults();
descriptor: ()Ljava/util/ArrayList;
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=3, args_size=1
start local 0 0: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 1
start local 1 1: aload 0
getfield freemarker.core.BuiltInsForStringsRegexp$RegexMatchModel.pattern:Ljava/util/regex/Pattern;
aload 0
getfield freemarker.core.BuiltInsForStringsRegexp$RegexMatchModel.input:Ljava/lang/String;
invokevirtual java.util.regex.Pattern.matcher:(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher;
astore 2
start local 2 2: goto 4
3: StackMap locals: java.util.ArrayList java.util.regex.Matcher
StackMap stack:
aload 1
new freemarker.core.BuiltInsForStringsRegexp$RegexMatchModel$MatchWithGroups
dup
aload 0
getfield freemarker.core.BuiltInsForStringsRegexp$RegexMatchModel.input:Ljava/lang/String;
aload 2
invokespecial freemarker.core.BuiltInsForStringsRegexp$RegexMatchModel$MatchWithGroups.<init>:(Ljava/lang/String;Ljava/util/regex/Matcher;)V
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
4: StackMap locals:
StackMap stack:
aload 2
invokevirtual java.util.regex.Matcher.find:()Z
ifne 3
5: aload 0
aload 1
putfield freemarker.core.BuiltInsForStringsRegexp$RegexMatchModel.matchingInputParts:Ljava/util/ArrayList;
6: aload 1
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lfreemarker/core/BuiltInsForStringsRegexp$RegexMatchModel;
1 7 1 matchingInputParts Ljava/util/ArrayList;
2 7 2 matcher Ljava/util/regex/Matcher;
Exceptions:
throws freemarker.template.TemplateModelException
private boolean isEntrieInputMatchesAndStoreResults();
descriptor: ()Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=3, args_size=1
start local 0 0: aload 0
getfield freemarker.core.BuiltInsForStringsRegexp$RegexMatchModel.pattern:Ljava/util/regex/Pattern;
aload 0
getfield freemarker.core.BuiltInsForStringsRegexp$RegexMatchModel.input:Ljava/lang/String;
invokevirtual java.util.regex.Pattern.matcher:(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher;
astore 1
start local 1 1: aload 1
invokevirtual java.util.regex.Matcher.matches:()Z
istore 2
start local 2 2: aload 0
aload 1
putfield freemarker.core.BuiltInsForStringsRegexp$RegexMatchModel.firedEntireInputMatcher:Ljava/util/regex/Matcher;
3: aload 0
iload 2
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
putfield freemarker.core.BuiltInsForStringsRegexp$RegexMatchModel.entireInputMatched:Ljava/lang/Boolean;
4: iload 2
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lfreemarker/core/BuiltInsForStringsRegexp$RegexMatchModel;
1 5 1 matcher Ljava/util/regex/Matcher;
2 5 2 matches Z
public freemarker.template.TemplateModelIterator iterator();
descriptor: ()Lfreemarker/template/TemplateModelIterator;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=1
start local 0 0: aload 0
getfield freemarker.core.BuiltInsForStringsRegexp$RegexMatchModel.matchingInputParts:Ljava/util/ArrayList;
astore 1
start local 1 1: aload 1
ifnonnull 4
2: aload 0
getfield freemarker.core.BuiltInsForStringsRegexp$RegexMatchModel.pattern:Ljava/util/regex/Pattern;
aload 0
getfield freemarker.core.BuiltInsForStringsRegexp$RegexMatchModel.input:Ljava/lang/String;
invokevirtual java.util.regex.Pattern.matcher:(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher;
astore 2
start local 2 3: new freemarker.core.BuiltInsForStringsRegexp$RegexMatchModel$2
dup
aload 0
aload 2
invokespecial freemarker.core.BuiltInsForStringsRegexp$RegexMatchModel$2.<init>:(Lfreemarker/core/BuiltInsForStringsRegexp$RegexMatchModel;Ljava/util/regex/Matcher;)V
areturn
end local 2 4: StackMap locals: java.util.ArrayList
StackMap stack:
new freemarker.core.BuiltInsForStringsRegexp$RegexMatchModel$3
dup
aload 0
aload 1
invokespecial freemarker.core.BuiltInsForStringsRegexp$RegexMatchModel$3.<init>:(Lfreemarker/core/BuiltInsForStringsRegexp$RegexMatchModel;Ljava/util/ArrayList;)V
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lfreemarker/core/BuiltInsForStringsRegexp$RegexMatchModel;
1 5 1 matchingInputParts Ljava/util/ArrayList;
3 4 2 matcher Ljava/util/regex/Matcher;
public int size();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=1
start local 0 0: aload 0
getfield freemarker.core.BuiltInsForStringsRegexp$RegexMatchModel.matchingInputParts:Ljava/util/ArrayList;
astore 1
start local 1 1: aload 1
ifnonnull 3
2: aload 0
invokevirtual freemarker.core.BuiltInsForStringsRegexp$RegexMatchModel.getMatchingInputPartsAndStoreResults:()Ljava/util/ArrayList;
astore 1
3: StackMap locals: java.util.ArrayList
StackMap stack:
aload 1
invokevirtual java.util.ArrayList.size:()I
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lfreemarker/core/BuiltInsForStringsRegexp$RegexMatchModel;
1 4 1 matchingInputParts Ljava/util/ArrayList;
Exceptions:
throws freemarker.template.TemplateModelException
}
SourceFile: "BuiltInsForStringsRegexp.java"
NestHost: freemarker.core.BuiltInsForStringsRegexp
InnerClasses:
RegexMatchModel = freemarker.core.BuiltInsForStringsRegexp$RegexMatchModel of freemarker.core.BuiltInsForStringsRegexp
freemarker.core.BuiltInsForStringsRegexp$RegexMatchModel$1
freemarker.core.BuiltInsForStringsRegexp$RegexMatchModel$2
freemarker.core.BuiltInsForStringsRegexp$RegexMatchModel$3
MatchWithGroups = freemarker.core.BuiltInsForStringsRegexp$RegexMatchModel$MatchWithGroups of freemarker.core.BuiltInsForStringsRegexp$RegexMatchModel