public class nl.basjes.parse.useragent.analyze.treewalker.steps.value.StepWordRange extends nl.basjes.parse.useragent.analyze.treewalker.steps.Step
{
private final int firstWord;
private final int lastWord;
private void <init>()
{
int v, v;
nl.basjes.parse.useragent.analyze.treewalker.steps.value.StepWordRange v;
v := @this: nl.basjes.parse.useragent.analyze.treewalker.steps.value.StepWordRange;
specialinvoke v.<nl.basjes.parse.useragent.analyze.treewalker.steps.Step: void <init>()>();
v = (int) -1;
v.<nl.basjes.parse.useragent.analyze.treewalker.steps.value.StepWordRange: int firstWord> = v;
v = (int) -1;
v.<nl.basjes.parse.useragent.analyze.treewalker.steps.value.StepWordRange: int lastWord> = v;
return;
}
public void <init>(nl.basjes.parse.useragent.analyze.WordRangeVisitor$Range)
{
nl.basjes.parse.useragent.analyze.WordRangeVisitor$Range v;
nl.basjes.parse.useragent.analyze.treewalker.steps.value.StepWordRange v;
int v, v;
v := @this: nl.basjes.parse.useragent.analyze.treewalker.steps.value.StepWordRange;
v := @parameter: nl.basjes.parse.useragent.analyze.WordRangeVisitor$Range;
specialinvoke v.<nl.basjes.parse.useragent.analyze.treewalker.steps.Step: void <init>()>();
v = virtualinvoke v.<nl.basjes.parse.useragent.analyze.WordRangeVisitor$Range: int getFirst()>();
v.<nl.basjes.parse.useragent.analyze.treewalker.steps.value.StepWordRange: int firstWord> = v;
v = virtualinvoke v.<nl.basjes.parse.useragent.analyze.WordRangeVisitor$Range: int getLast()>();
v.<nl.basjes.parse.useragent.analyze.treewalker.steps.value.StepWordRange: int lastWord> = v;
return;
}
public nl.basjes.parse.useragent.analyze.treewalker.steps.WalkList$WalkResult walk(nl.basjes.parse.useragent.yauaa.shaded.org.antlr.v.runtime.tree.ParseTree, java.lang.String)
{
int v, v, v, v, v;
java.lang.String v, v, v;
nl.basjes.parse.useragent.utils.WordSplitter v;
boolean v, v, v, v, v;
nl.basjes.parse.useragent.utils.VersionSplitter v;
nl.basjes.parse.useragent.analyze.treewalker.steps.WalkList$WalkResult v;
nl.basjes.parse.useragent.analyze.treewalker.steps.value.StepWordRange v;
nl.basjes.parse.useragent.yauaa.shaded.org.antlr.v.runtime.tree.ParseTree v, v, v, v, v, v;
v := @this: nl.basjes.parse.useragent.analyze.treewalker.steps.value.StepWordRange;
v := @parameter: nl.basjes.parse.useragent.yauaa.shaded.org.antlr.v.runtime.tree.ParseTree;
v := @parameter: java.lang.String;
v = virtualinvoke v.<nl.basjes.parse.useragent.analyze.treewalker.steps.value.StepWordRange: java.lang.String getActualValue(nl.basjes.parse.useragent.yauaa.shaded.org.antlr.v.runtime.tree.ParseTree,java.lang.String)>(v, v);
v = interfaceinvoke v.<nl.basjes.parse.useragent.yauaa.shaded.org.antlr.v.runtime.tree.ParseTree: int getChildCount()>();
if v != 1 goto label;
v = interfaceinvoke v.<nl.basjes.parse.useragent.yauaa.shaded.org.antlr.v.runtime.tree.ParseTree: nl.basjes.parse.useragent.yauaa.shaded.org.antlr.v.runtime.tree.ParseTree getChild(int)>(0);
v = v instanceof nl.basjes.parse.useragent.parser.UserAgentParser$SingleVersionContext;
if v != 0 goto label;
v = interfaceinvoke v.<nl.basjes.parse.useragent.yauaa.shaded.org.antlr.v.runtime.tree.ParseTree: nl.basjes.parse.useragent.yauaa.shaded.org.antlr.v.runtime.tree.ParseTree getChild(int)>(0);
v = v instanceof nl.basjes.parse.useragent.parser.UserAgentParser$SingleVersionWithCommasContext;
if v != 0 goto label;
v = interfaceinvoke v.<nl.basjes.parse.useragent.yauaa.shaded.org.antlr.v.runtime.tree.ParseTree: nl.basjes.parse.useragent.yauaa.shaded.org.antlr.v.runtime.tree.ParseTree getChild(int)>(0);
v = v instanceof nl.basjes.parse.useragent.parser.UserAgentParser$ProductVersionContext;
if v != 0 goto label;
v = interfaceinvoke v.<nl.basjes.parse.useragent.yauaa.shaded.org.antlr.v.runtime.tree.ParseTree: nl.basjes.parse.useragent.yauaa.shaded.org.antlr.v.runtime.tree.ParseTree getChild(int)>(0);
v = v instanceof nl.basjes.parse.useragent.parser.UserAgentParser$ProductVersionSingleWordContext;
if v != 0 goto label;
v = interfaceinvoke v.<nl.basjes.parse.useragent.yauaa.shaded.org.antlr.v.runtime.tree.ParseTree: nl.basjes.parse.useragent.yauaa.shaded.org.antlr.v.runtime.tree.ParseTree getChild(int)>(0);
v = v instanceof nl.basjes.parse.useragent.parser.UserAgentParser$ProductVersionWithCommasContext;
if v == 0 goto label;
label:
v = staticinvoke <nl.basjes.parse.useragent.utils.VersionSplitter: nl.basjes.parse.useragent.utils.VersionSplitter getInstance()>();
v = v.<nl.basjes.parse.useragent.analyze.treewalker.steps.value.StepWordRange: int firstWord>;
v = v.<nl.basjes.parse.useragent.analyze.treewalker.steps.value.StepWordRange: int lastWord>;
v = virtualinvoke v.<nl.basjes.parse.useragent.utils.VersionSplitter: java.lang.String getSplitRange(java.lang.String,int,int)>(v, v, v);
goto label;
label:
v = staticinvoke <nl.basjes.parse.useragent.utils.WordSplitter: nl.basjes.parse.useragent.utils.WordSplitter getInstance()>();
v = v.<nl.basjes.parse.useragent.analyze.treewalker.steps.value.StepWordRange: int firstWord>;
v = v.<nl.basjes.parse.useragent.analyze.treewalker.steps.value.StepWordRange: int lastWord>;
v = virtualinvoke v.<nl.basjes.parse.useragent.utils.WordSplitter: java.lang.String getSplitRange(java.lang.String,int,int)>(v, v, v);
label:
if v != null goto label;
return null;
label:
v = virtualinvoke v.<nl.basjes.parse.useragent.analyze.treewalker.steps.value.StepWordRange: nl.basjes.parse.useragent.analyze.treewalker.steps.WalkList$WalkResult walkNextStep(nl.basjes.parse.useragent.yauaa.shaded.org.antlr.v.runtime.tree.ParseTree,java.lang.String)>(v, v);
return v;
}
public boolean canFail()
{
nl.basjes.parse.useragent.analyze.treewalker.steps.value.StepWordRange v;
int v, v;
boolean v;
v := @this: nl.basjes.parse.useragent.analyze.treewalker.steps.value.StepWordRange;
v = v.<nl.basjes.parse.useragent.analyze.treewalker.steps.value.StepWordRange: int firstWord>;
if v != 1 goto label;
v = v.<nl.basjes.parse.useragent.analyze.treewalker.steps.value.StepWordRange: int lastWord>;
if v == 1 goto label;
label:
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
public java.lang.String toString()
{
nl.basjes.parse.useragent.analyze.treewalker.steps.value.StepWordRange v;
int v, v;
java.lang.String v;
v := @this: nl.basjes.parse.useragent.analyze.treewalker.steps.value.StepWordRange;
v = v.<nl.basjes.parse.useragent.analyze.treewalker.steps.value.StepWordRange: int firstWord>;
v = v.<nl.basjes.parse.useragent.analyze.treewalker.steps.value.StepWordRange: int lastWord>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (int,int)>(v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("WordRange([\u0001:\u])");
return v;
}
}