public class org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator extends java.lang.Object implements org.codehaus.plexus.interpolation.Interpolator
{
private static final int MAX_TRIES;
private java.util.Map existingAnswers;
private java.util.List valueSources;
private java.util.List postProcessors;
private boolean cacheAnswers;
private java.util.LinkedHashSet delimiters;
private java.lang.String escapeString;
public void <init>()
{
org.codehaus.plexus.interpolation.multi.DelimiterSpecification v;
org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator v;
java.util.HashMap v;
java.util.LinkedHashSet v, v;
java.util.ArrayList v, v;
v := @this: org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator;
specialinvoke v.<java.lang.Object: void <init>()>();
v = new java.util.HashMap;
specialinvoke v.<java.util.HashMap: void <init>()>();
v.<org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator: java.util.Map existingAnswers> = v;
v = new java.util.ArrayList;
specialinvoke v.<java.util.ArrayList: void <init>()>();
v.<org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator: java.util.List valueSources> = v;
v = new java.util.ArrayList;
specialinvoke v.<java.util.ArrayList: void <init>()>();
v.<org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator: java.util.List postProcessors> = v;
v.<org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator: boolean cacheAnswers> = 0;
v = new java.util.LinkedHashSet;
specialinvoke v.<java.util.LinkedHashSet: void <init>()>();
v.<org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator: java.util.LinkedHashSet delimiters> = v;
v = v.<org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator: java.util.LinkedHashSet delimiters>;
v = <org.codehaus.plexus.interpolation.multi.DelimiterSpecification: org.codehaus.plexus.interpolation.multi.DelimiterSpecification DEFAULT_SPEC>;
virtualinvoke v.<java.util.LinkedHashSet: boolean add(java.lang.Object)>(v);
return;
}
public org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator addDelimiterSpec(java.lang.String)
{
org.codehaus.plexus.interpolation.multi.DelimiterSpecification v;
org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator v;
java.lang.String v;
java.util.LinkedHashSet v;
v := @this: org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator;
v := @parameter: java.lang.String;
if v != null goto label;
return v;
label:
v = v.<org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator: java.util.LinkedHashSet delimiters>;
v = staticinvoke <org.codehaus.plexus.interpolation.multi.DelimiterSpecification: org.codehaus.plexus.interpolation.multi.DelimiterSpecification parse(java.lang.String)>(v);
virtualinvoke v.<java.util.LinkedHashSet: boolean add(java.lang.Object)>(v);
return v;
}
public boolean removeDelimiterSpec(java.lang.String)
{
org.codehaus.plexus.interpolation.multi.DelimiterSpecification v;
org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator v;
java.lang.String v;
java.util.LinkedHashSet v;
boolean v;
v := @this: org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator;
v := @parameter: java.lang.String;
if v != null goto label;
return 0;
label:
v = v.<org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator: java.util.LinkedHashSet delimiters>;
v = staticinvoke <org.codehaus.plexus.interpolation.multi.DelimiterSpecification: org.codehaus.plexus.interpolation.multi.DelimiterSpecification parse(java.lang.String)>(v);
v = virtualinvoke v.<java.util.LinkedHashSet: boolean remove(java.lang.Object)>(v);
return v;
}
public org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator withValueSource(org.codehaus.plexus.interpolation.ValueSource)
{
org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator v;
org.codehaus.plexus.interpolation.ValueSource v;
v := @this: org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator;
v := @parameter: org.codehaus.plexus.interpolation.ValueSource;
virtualinvoke v.<org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator: void addValueSource(org.codehaus.plexus.interpolation.ValueSource)>(v);
return v;
}
public org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator withPostProcessor(org.codehaus.plexus.interpolation.InterpolationPostProcessor)
{
org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator v;
org.codehaus.plexus.interpolation.InterpolationPostProcessor v;
v := @this: org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator;
v := @parameter: org.codehaus.plexus.interpolation.InterpolationPostProcessor;
virtualinvoke v.<org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator: void addPostProcessor(org.codehaus.plexus.interpolation.InterpolationPostProcessor)>(v);
return v;
}
public void addValueSource(org.codehaus.plexus.interpolation.ValueSource)
{
org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator v;
org.codehaus.plexus.interpolation.ValueSource v;
java.util.List v;
v := @this: org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator;
v := @parameter: org.codehaus.plexus.interpolation.ValueSource;
v = v.<org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator: java.util.List valueSources>;
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
return;
}
public void removeValuesSource(org.codehaus.plexus.interpolation.ValueSource)
{
org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator v;
org.codehaus.plexus.interpolation.ValueSource v;
java.util.List v;
v := @this: org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator;
v := @parameter: org.codehaus.plexus.interpolation.ValueSource;
v = v.<org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator: java.util.List valueSources>;
interfaceinvoke v.<java.util.List: boolean remove(java.lang.Object)>(v);
return;
}
public void addPostProcessor(org.codehaus.plexus.interpolation.InterpolationPostProcessor)
{
org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator v;
java.util.List v;
org.codehaus.plexus.interpolation.InterpolationPostProcessor v;
v := @this: org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator;
v := @parameter: org.codehaus.plexus.interpolation.InterpolationPostProcessor;
v = v.<org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator: java.util.List postProcessors>;
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
return;
}
public void removePostProcessor(org.codehaus.plexus.interpolation.InterpolationPostProcessor)
{
org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator v;
java.util.List v;
org.codehaus.plexus.interpolation.InterpolationPostProcessor v;
v := @this: org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator;
v := @parameter: org.codehaus.plexus.interpolation.InterpolationPostProcessor;
v = v.<org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator: java.util.List postProcessors>;
interfaceinvoke v.<java.util.List: boolean remove(java.lang.Object)>(v);
return;
}
public java.lang.String interpolate(java.lang.String, java.lang.String) throws org.codehaus.plexus.interpolation.InterpolationException
{
org.codehaus.plexus.interpolation.SimpleRecursionInterceptor v;
org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator v;
java.lang.String v, v, v;
v := @this: org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
v = new org.codehaus.plexus.interpolation.SimpleRecursionInterceptor;
specialinvoke v.<org.codehaus.plexus.interpolation.SimpleRecursionInterceptor: void <init>()>();
v = virtualinvoke v.<org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator: java.lang.String interpolate(java.lang.String,org.codehaus.plexus.interpolation.RecursionInterceptor)>(v, v);
return v;
}
public java.lang.String interpolate(java.lang.String, java.lang.String, org.codehaus.plexus.interpolation.RecursionInterceptor) throws org.codehaus.plexus.interpolation.InterpolationException
{
org.codehaus.plexus.interpolation.RecursionInterceptor v;
org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator v;
java.lang.String v, v, v;
v := @this: org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
v := @parameter: org.codehaus.plexus.interpolation.RecursionInterceptor;
v = virtualinvoke v.<org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator: java.lang.String interpolate(java.lang.String,org.codehaus.plexus.interpolation.RecursionInterceptor)>(v, v);
return v;
}
public java.lang.String interpolate(java.lang.String) throws org.codehaus.plexus.interpolation.InterpolationException
{
org.codehaus.plexus.interpolation.SimpleRecursionInterceptor v;
org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator v;
java.lang.String v, v;
v := @this: org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator;
v := @parameter: java.lang.String;
v = new org.codehaus.plexus.interpolation.SimpleRecursionInterceptor;
specialinvoke v.<org.codehaus.plexus.interpolation.SimpleRecursionInterceptor: void <init>()>();
v = virtualinvoke v.<org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator: java.lang.String interpolate(java.lang.String,org.codehaus.plexus.interpolation.RecursionInterceptor)>(v, v);
return v;
}
public java.lang.String interpolate(java.lang.String, org.codehaus.plexus.interpolation.RecursionInterceptor) throws org.codehaus.plexus.interpolation.InterpolationException
{
java.lang.Throwable v;
org.codehaus.plexus.interpolation.RecursionInterceptor v;
org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator v;
java.util.HashSet v;
java.util.Map v, v;
java.lang.String v, v;
boolean v, v;
v := @this: org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator;
v := @parameter: java.lang.String;
v := @parameter: org.codehaus.plexus.interpolation.RecursionInterceptor;
label:
v = new java.util.HashSet;
specialinvoke v.<java.util.HashSet: void <init>()>();
v = specialinvoke v.<org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator: java.lang.String interpolate(java.lang.String,org.codehaus.plexus.interpolation.RecursionInterceptor,java.util.Set)>(v, v, v);
label:
v = v.<org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator: boolean cacheAnswers>;
if v != 0 goto label;
v = v.<org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator: java.util.Map existingAnswers>;
interfaceinvoke v.<java.util.Map: void clear()>();
label:
return v;
label:
v := @caughtexception;
v = v.<org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator: boolean cacheAnswers>;
if v != 0 goto label;
v = v.<org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator: java.util.Map existingAnswers>;
interfaceinvoke v.<java.util.Map: void clear()>();
label:
throw v;
catch java.lang.Throwable from label to label with label;
}
private java.lang.String interpolate(java.lang.String, org.codehaus.plexus.interpolation.RecursionInterceptor, java.util.Set) throws org.codehaus.plexus.interpolation.InterpolationException
{
java.util.Map v;
java.util.Set v;
java.lang.StringBuilder v;
org.codehaus.plexus.interpolation.multi.DelimiterSpecification v;
org.codehaus.plexus.interpolation.InterpolationCycleException v, v;
java.lang.String v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
boolean v, v, v, v, v, v, v, v, v, v;
java.util.List v, v, v, v;
int v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
org.codehaus.plexus.interpolation.RecursionInterceptor v;
java.util.Iterator v, v;
org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator v;
java.lang.Object v, v, v, v, v, v;
v := @this: org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator;
v := @parameter: java.lang.String;
v := @parameter: org.codehaus.plexus.interpolation.RecursionInterceptor;
v := @parameter: java.util.Set;
if v != null goto label;
return "";
label:
v = new java.lang.StringBuilder;
v = virtualinvoke v.<java.lang.String: int length()>();
v = v * 2;
specialinvoke v.<java.lang.StringBuilder: void <init>(int)>(v);
v = v;
v = 0;
label:
v = v + 1;
v = virtualinvoke v.<java.lang.StringBuilder: int length()>();
if v <= 0 goto label;
v = virtualinvoke v.<java.lang.StringBuilder: java.lang.String toString()>();
virtualinvoke v.<java.lang.StringBuilder: void setLength(int)>(0);
label:
v = (int) -1;
v = v;
v = (int) -1;
v = v;
label:
v = specialinvoke v.<org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator: org.codehaus.plexus.interpolation.multi.DelimiterSpecification select(java.lang.String,int)>(v, v);
if v == null goto label;
v = virtualinvoke v.<org.codehaus.plexus.interpolation.multi.DelimiterSpecification: java.lang.String getBegin()>();
v = virtualinvoke v.<org.codehaus.plexus.interpolation.multi.DelimiterSpecification: java.lang.String getEnd()>();
v = virtualinvoke v.<org.codehaus.plexus.interpolation.multi.DelimiterSpecification: int getNextStartIndex()>();
v = v + 1;
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.CharSequence,int,int)>(v, v, v);
v = v + 1;
v = virtualinvoke v.<java.lang.String: int indexOf(java.lang.String,int)>(v, v);
if v < 0 goto label;
v = virtualinvoke v.<java.lang.String: int length()>();
v = v + v;
v = virtualinvoke v.<java.lang.String: java.lang.String substring(int,int)>(v, v);
v = virtualinvoke v.<java.lang.String: int length()>();
v = virtualinvoke v.<java.lang.String: int length()>();
v = virtualinvoke v.<java.lang.String: int length()>();
v = v - v;
v = virtualinvoke v.<java.lang.String: java.lang.String substring(int,int)>(v, v);
if v < 0 goto label;
v = v.<org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator: java.lang.String escapeString>;
if v == null goto label;
v = v.<org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator: java.lang.String escapeString>;
v = virtualinvoke v.<java.lang.String: int length()>();
if v <= 0 goto label;
if v != 0 goto label;
v = 0;
goto label;
label:
v = v.<org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator: java.lang.String escapeString>;
v = virtualinvoke v.<java.lang.String: int length()>();
v = v - v;
label:
v = v;
if v < 0 goto label;
v = virtualinvoke v.<java.lang.String: java.lang.String substring(int,int)>(v, v);
if v == null goto label;
v = v.<org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator: java.lang.String escapeString>;
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>(v);
if v <= 0 goto label;
v = v - 1;
label:
v = v.<org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator: java.lang.String escapeString>;
v = virtualinvoke v.<java.lang.String: int length()>();
v = v + v;
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder replace(int,int,java.lang.String)>(v, v, "");
goto label;
label:
v = 0;
v = interfaceinvoke v.<java.util.Set: boolean contains(java.lang.Object)>(v);
if v != 0 goto label;
v = virtualinvoke v.<java.lang.String: boolean startsWith(java.lang.String)>(".");
if v == 0 goto label;
v = virtualinvoke v.<java.lang.String: java.lang.String substring(int)>(1);
label:
v = interfaceinvoke v.<org.codehaus.plexus.interpolation.RecursionInterceptor: boolean hasRecursiveExpression(java.lang.String)>(v);
if v == 0 goto label;
v = new org.codehaus.plexus.interpolation.InterpolationCycleException;
specialinvoke v.<org.codehaus.plexus.interpolation.InterpolationCycleException: void <init>(org.codehaus.plexus.interpolation.RecursionInterceptor,java.lang.String,java.lang.String)>(v, v, v);
throw v;
label:
interfaceinvoke v.<org.codehaus.plexus.interpolation.RecursionInterceptor: void expressionResolutionStarted(java.lang.String)>(v);
v = v.<org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator: java.util.Map existingAnswers>;
v = interfaceinvoke v.<java.util.Map: java.lang.Object get(java.lang.Object)>(v);
v = null;
v = v.<org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator: java.util.List valueSources>;
v = interfaceinvoke v.<java.util.List: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
if v != null goto label;
v = interfaceinvoke v.<org.codehaus.plexus.interpolation.ValueSource: java.lang.Object getValue(java.lang.String)>(v);
if v == null goto label;
v = virtualinvoke v.<java.lang.Object: java.lang.String toString()>();
v = virtualinvoke v.<java.lang.String: boolean contains(java.lang.CharSequence)>(v);
if v == 0 goto label;
v = v;
v = null;
goto label;
label:
if v != null goto label;
if v == null goto label;
v = new org.codehaus.plexus.interpolation.InterpolationCycleException;
specialinvoke v.<org.codehaus.plexus.interpolation.InterpolationCycleException: void <init>(org.codehaus.plexus.interpolation.RecursionInterceptor,java.lang.String,java.lang.String)>(v, v, v);
throw v;
label:
if v == null goto label;
v = staticinvoke <java.lang.String: java.lang.String valueOf(java.lang.Object)>(v);
v = specialinvoke v.<org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator: java.lang.String interpolate(java.lang.String,org.codehaus.plexus.interpolation.RecursionInterceptor,java.util.Set)>(v, v, v);
v = v.<org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator: java.util.List postProcessors>;
if v == null goto label;
v = v.<org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator: java.util.List postProcessors>;
v = interfaceinvoke v.<java.util.List: boolean isEmpty()>();
if v != 0 goto label;
v = v.<org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator: java.util.List postProcessors>;
v = interfaceinvoke v.<java.util.List: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = interfaceinvoke v.<org.codehaus.plexus.interpolation.InterpolationPostProcessor: java.lang.Object execute(java.lang.String,java.lang.Object)>(v, v);
if v == null goto label;
v = v;
label:
v = staticinvoke <java.lang.String: java.lang.String valueOf(java.lang.Object)>(v);
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>(v);
v = 1;
goto label;
label:
interfaceinvoke v.<java.util.Set: boolean add(java.lang.Object)>(v);
label:
interfaceinvoke v.<org.codehaus.plexus.interpolation.RecursionInterceptor: void expressionResolutionFinished(java.lang.String)>(v);
label:
if v != 0 goto label;
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>(v);
label:
v = (int) -1;
if v <= v goto label;
v = virtualinvoke v.<java.lang.String: int length()>();
v = v - 1;
v = v + v;
goto label;
label:
v = (int) -1;
if v != v goto label;
v = (int) -1;
if v <= v goto label;
v = virtualinvoke v.<java.lang.String: int length()>();
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.CharSequence,int,int)>(v, v, v);
goto label;
label:
v = virtualinvoke v.<java.lang.String: int length()>();
if v >= v goto label;
v = v + 1;
v = virtualinvoke v.<java.lang.String: int length()>();
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.CharSequence,int,int)>(v, v, v);
label:
v = virtualinvoke v.<java.lang.StringBuilder: java.lang.String toString()>();
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v != 0 goto label;
if v < 10 goto label;
label:
v = virtualinvoke v.<java.lang.StringBuilder: java.lang.String toString()>();
return v;
}
private org.codehaus.plexus.interpolation.multi.DelimiterSpecification select(java.lang.String, int)
{
java.util.Iterator v;
org.codehaus.plexus.interpolation.multi.DelimiterSpecification v;
org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator v;
int v, v, v, v;
java.lang.Object v;
java.lang.String v, v;
java.util.LinkedHashSet v;
boolean v;
v := @this: org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator;
v := @parameter: java.lang.String;
v := @parameter: int;
v = null;
v = v.<org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator: java.util.LinkedHashSet delimiters>;
v = virtualinvoke v.<java.util.LinkedHashSet: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
virtualinvoke v.<org.codehaus.plexus.interpolation.multi.DelimiterSpecification: void clearNextStart()>();
if v != null goto label;
v = virtualinvoke v.<org.codehaus.plexus.interpolation.multi.DelimiterSpecification: java.lang.String getBegin()>();
v = v + 1;
v = virtualinvoke v.<java.lang.String: int indexOf(java.lang.String,int)>(v, v);
v = (int) -1;
if v <= v goto label;
virtualinvoke v.<org.codehaus.plexus.interpolation.multi.DelimiterSpecification: void setNextStartIndex(int)>(v);
v = v;
goto label;
label:
return v;
}
public java.util.List getFeedback()
{
java.util.Iterator v;
org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator v;
java.util.ArrayList v;
java.util.List v, v;
java.lang.Object v;
boolean v, v;
v := @this: org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator;
v = new java.util.ArrayList;
specialinvoke v.<java.util.ArrayList: void <init>()>();
v = v.<org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator: java.util.List valueSources>;
v = interfaceinvoke v.<java.util.List: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = interfaceinvoke v.<org.codehaus.plexus.interpolation.ValueSource: java.util.List getFeedback()>();
if v == null goto label;
v = interfaceinvoke v.<java.util.List: boolean isEmpty()>();
if v != 0 goto label;
interfaceinvoke v.<java.util.List: boolean addAll(java.util.Collection)>(v);
goto label;
label:
return v;
}
public void clearFeedback()
{
java.util.List v;
java.util.Iterator v;
org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator v;
java.lang.Object v;
boolean v;
v := @this: org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator;
v = v.<org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator: java.util.List valueSources>;
v = interfaceinvoke v.<java.util.List: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
interfaceinvoke v.<org.codehaus.plexus.interpolation.ValueSource: void clearFeedback()>();
goto label;
label:
return;
}
public boolean isCacheAnswers()
{
org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator v;
boolean v;
v := @this: org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator;
v = v.<org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator: boolean cacheAnswers>;
return v;
}
public void setCacheAnswers(boolean)
{
org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator v;
boolean v;
v := @this: org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator;
v := @parameter: boolean;
v.<org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator: boolean cacheAnswers> = v;
return;
}
public void clearAnswers()
{
org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator v;
java.util.Map v;
v := @this: org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator;
v = v.<org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator: java.util.Map existingAnswers>;
interfaceinvoke v.<java.util.Map: void clear()>();
return;
}
public java.lang.String getEscapeString()
{
org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator v;
java.lang.String v;
v := @this: org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator;
v = v.<org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator: java.lang.String escapeString>;
return v;
}
public void setEscapeString(java.lang.String)
{
org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator v;
java.lang.String v;
v := @this: org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator;
v := @parameter: java.lang.String;
v.<org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator: java.lang.String escapeString> = v;
return;
}
public org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator escapeString(java.lang.String)
{
org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator v;
java.lang.String v;
v := @this: org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator;
v := @parameter: java.lang.String;
v.<org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator: java.lang.String escapeString> = v;
return v;
}
public org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator setDelimiterSpecs(java.util.LinkedHashSet)
{
java.util.Iterator v;
org.codehaus.plexus.interpolation.multi.DelimiterSpecification v;
org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator v;
java.lang.Object v;
java.util.LinkedHashSet v, v, v;
boolean v;
v := @this: org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator;
v := @parameter: java.util.LinkedHashSet;
v = v.<org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator: java.util.LinkedHashSet delimiters>;
virtualinvoke v.<java.util.LinkedHashSet: void clear()>();
v = virtualinvoke v.<java.util.LinkedHashSet: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
if v == null goto label;
v = v.<org.codehaus.plexus.interpolation.multi.MultiDelimiterStringSearchInterpolator: java.util.LinkedHashSet delimiters>;
v = staticinvoke <org.codehaus.plexus.interpolation.multi.DelimiterSpecification: org.codehaus.plexus.interpolation.multi.DelimiterSpecification parse(java.lang.String)>(v);
virtualinvoke v.<java.util.LinkedHashSet: boolean add(java.lang.Object)>(v);
goto label;
label:
return v;
}
}