public class org.apache.commons.lang.text.translate.OctalUnescaper extends org.apache.commons.lang.text.translate.CharSequenceTranslator
{
public void <init>()
{
org.apache.commons.lang.text.translate.OctalUnescaper v;
v := @this: org.apache.commons.lang.text.translate.OctalUnescaper;
specialinvoke v.<org.apache.commons.lang.text.translate.CharSequenceTranslator: void <init>()>();
return;
}
private boolean isOctalDigit(char)
{
char v;
org.apache.commons.lang.text.translate.OctalUnescaper v;
boolean v;
v := @this: org.apache.commons.lang.text.translate.OctalUnescaper;
v := @parameter: char;
if v < 48 goto label;
if v > 55 goto label;
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
private boolean isZeroToThree(char)
{
char v;
org.apache.commons.lang.text.translate.OctalUnescaper v;
boolean v;
v := @this: org.apache.commons.lang.text.translate.OctalUnescaper;
v := @parameter: char;
if v < 48 goto label;
if v > 51 goto label;
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
public int translate(java.lang.CharSequence, int, java.io.Writer) throws java.io.IOException
{
int v, v, v, v, v, v, v, v, v, v, v;
java.lang.String v;
org.apache.commons.lang.text.translate.OctalUnescaper v;
boolean v, v, v, v;
java.lang.CharSequence v;
char v, v, v, v, v, v, v, v;
java.io.Writer v;
java.lang.StringBuilder v;
v := @this: org.apache.commons.lang.text.translate.OctalUnescaper;
v := @parameter: java.lang.CharSequence;
v := @parameter: int;
v := @parameter: java.io.Writer;
v = interfaceinvoke v.<java.lang.CharSequence: int length()>();
v = v - v;
v = v - 1;
v = new java.lang.StringBuilder;
specialinvoke v.<java.lang.StringBuilder: void <init>()>();
v = interfaceinvoke v.<java.lang.CharSequence: char charAt(int)>(v);
if v != 92 goto label;
if v <= 0 goto label;
v = v + 1;
v = interfaceinvoke v.<java.lang.CharSequence: char charAt(int)>(v);
v = specialinvoke v.<org.apache.commons.lang.text.translate.OctalUnescaper: boolean isOctalDigit(char)>(v);
if v == 0 goto label;
v = v + 1;
v = v + 2;
v = v + 3;
v = interfaceinvoke v.<java.lang.CharSequence: char charAt(int)>(v);
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(char)>(v);
if v <= 1 goto label;
v = interfaceinvoke v.<java.lang.CharSequence: char charAt(int)>(v);
v = specialinvoke v.<org.apache.commons.lang.text.translate.OctalUnescaper: boolean isOctalDigit(char)>(v);
if v == 0 goto label;
v = interfaceinvoke v.<java.lang.CharSequence: char charAt(int)>(v);
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(char)>(v);
if v <= 2 goto label;
v = interfaceinvoke v.<java.lang.CharSequence: char charAt(int)>(v);
v = specialinvoke v.<org.apache.commons.lang.text.translate.OctalUnescaper: boolean isZeroToThree(char)>(v);
if v == 0 goto label;
v = interfaceinvoke v.<java.lang.CharSequence: char charAt(int)>(v);
v = specialinvoke v.<org.apache.commons.lang.text.translate.OctalUnescaper: boolean isOctalDigit(char)>(v);
if v == 0 goto label;
v = interfaceinvoke v.<java.lang.CharSequence: char charAt(int)>(v);
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(char)>(v);
label:
v = virtualinvoke v.<java.lang.StringBuilder: java.lang.String toString()>();
v = staticinvoke <java.lang.Integer: int parseInt(java.lang.String,int)>(v, 8);
virtualinvoke v.<java.io.Writer: void write(int)>(v);
v = virtualinvoke v.<java.lang.StringBuilder: int length()>();
v = 1 + v;
return v;
label:
return 0;
}
}