public class org.apache.commons.codec.language.ColognePhonetic extends java.lang.Object implements org.apache.commons.codec.StringEncoder
{
private static final char[] AEIJOUY;
private static final char[] CSZ;
private static final char[] FPVW;
private static final char[] GKQ;
private static final char[] CKQ;
private static final char[] AHKLOQRUX;
private static final char[] SZ;
private static final char[] AHKOQUX;
private static final char[] DTX;
private static final char CHAR_IGNORE;
public void <init>()
{
org.apache.commons.codec.language.ColognePhonetic v;
v := @this: org.apache.commons.codec.language.ColognePhonetic;
specialinvoke v.<java.lang.Object: void <init>()>();
return;
}
private static boolean arrayContains(char[], char)
{
int v, v;
char[] v;
char v, v;
v := @parameter: char[];
v := @parameter: char;
v = lengthof v;
v = 0;
label:
if v >= v goto label;
v = v[v];
if v != v goto label;
return 1;
label:
v = v + 1;
goto label;
label:
return 0;
}
public java.lang.String colognePhonetic(java.lang.String)
{
org.apache.commons.codec.language.ColognePhonetic$CologneOutputBuffer v;
boolean v, v, v, v, v, v, v, v, v, v, v, v;
int v, v;
java.lang.String v, v;
char v, v, v;
org.apache.commons.codec.language.ColognePhonetic$CologneInputBuffer v;
char[] v, v, v, v, v, v, v, v, v, v;
org.apache.commons.codec.language.ColognePhonetic v;
v := @this: org.apache.commons.codec.language.ColognePhonetic;
v := @parameter: java.lang.String;
if v != null goto label;
return null;
label:
v = new org.apache.commons.codec.language.ColognePhonetic$CologneInputBuffer;
v = specialinvoke v.<org.apache.commons.codec.language.ColognePhonetic: char[] preprocess(java.lang.String)>(v);
specialinvoke v.<org.apache.commons.codec.language.ColognePhonetic$CologneInputBuffer: void <init>(org.apache.commons.codec.language.ColognePhonetic,char[])>(v, v);
v = new org.apache.commons.codec.language.ColognePhonetic$CologneOutputBuffer;
v = virtualinvoke v.<org.apache.commons.codec.language.ColognePhonetic$CologneInputBuffer: int length()>();
v = v * 2;
specialinvoke v.<org.apache.commons.codec.language.ColognePhonetic$CologneOutputBuffer: void <init>(org.apache.commons.codec.language.ColognePhonetic,int)>(v, v);
v = 45;
label:
v = virtualinvoke v.<org.apache.commons.codec.language.ColognePhonetic$CologneInputBuffer: boolean isEmpty()>();
if v != 0 goto label;
v = virtualinvoke v.<org.apache.commons.codec.language.ColognePhonetic$CologneInputBuffer: char removeNext()>();
v = virtualinvoke v.<org.apache.commons.codec.language.ColognePhonetic$CologneInputBuffer: boolean isEmpty()>();
if v != 0 goto label;
v = virtualinvoke v.<org.apache.commons.codec.language.ColognePhonetic$CologneInputBuffer: char getNextChar()>();
goto label;
label:
v = 45;
label:
if v < 65 goto label;
if v > 90 goto label;
v = <org.apache.commons.codec.language.ColognePhonetic: char[] AEIJOUY>;
v = staticinvoke <org.apache.commons.codec.language.ColognePhonetic: boolean arrayContains(char[],char)>(v, v);
if v == 0 goto label;
virtualinvoke v.<org.apache.commons.codec.language.ColognePhonetic$CologneOutputBuffer: void put(char)>(48);
goto label;
label:
if v == 66 goto label;
if v != 80 goto label;
if v == 72 goto label;
label:
virtualinvoke v.<org.apache.commons.codec.language.ColognePhonetic$CologneOutputBuffer: void put(char)>(49);
goto label;
label:
if v == 68 goto label;
if v != 84 goto label;
label:
v = <org.apache.commons.codec.language.ColognePhonetic: char[] CSZ>;
v = staticinvoke <org.apache.commons.codec.language.ColognePhonetic: boolean arrayContains(char[],char)>(v, v);
if v != 0 goto label;
virtualinvoke v.<org.apache.commons.codec.language.ColognePhonetic$CologneOutputBuffer: void put(char)>(50);
goto label;
label:
v = <org.apache.commons.codec.language.ColognePhonetic: char[] FPVW>;
v = staticinvoke <org.apache.commons.codec.language.ColognePhonetic: boolean arrayContains(char[],char)>(v, v);
if v == 0 goto label;
virtualinvoke v.<org.apache.commons.codec.language.ColognePhonetic$CologneOutputBuffer: void put(char)>(51);
goto label;
label:
v = <org.apache.commons.codec.language.ColognePhonetic: char[] GKQ>;
v = staticinvoke <org.apache.commons.codec.language.ColognePhonetic: boolean arrayContains(char[],char)>(v, v);
if v == 0 goto label;
virtualinvoke v.<org.apache.commons.codec.language.ColognePhonetic$CologneOutputBuffer: void put(char)>(52);
goto label;
label:
if v != 88 goto label;
v = <org.apache.commons.codec.language.ColognePhonetic: char[] CKQ>;
v = staticinvoke <org.apache.commons.codec.language.ColognePhonetic: boolean arrayContains(char[],char)>(v, v);
if v != 0 goto label;
virtualinvoke v.<org.apache.commons.codec.language.ColognePhonetic$CologneOutputBuffer: void put(char)>(52);
virtualinvoke v.<org.apache.commons.codec.language.ColognePhonetic$CologneOutputBuffer: void put(char)>(56);
goto label;
label:
if v == 83 goto label;
if v != 90 goto label;
label:
virtualinvoke v.<org.apache.commons.codec.language.ColognePhonetic$CologneOutputBuffer: void put(char)>(56);
goto label;
label:
if v != 67 goto label;
v = virtualinvoke v.<org.apache.commons.codec.language.ColognePhonetic$CologneOutputBuffer: boolean isEmpty()>();
if v == 0 goto label;
v = <org.apache.commons.codec.language.ColognePhonetic: char[] AHKLOQRUX>;
v = staticinvoke <org.apache.commons.codec.language.ColognePhonetic: boolean arrayContains(char[],char)>(v, v);
if v == 0 goto label;
virtualinvoke v.<org.apache.commons.codec.language.ColognePhonetic$CologneOutputBuffer: void put(char)>(52);
goto label;
label:
virtualinvoke v.<org.apache.commons.codec.language.ColognePhonetic$CologneOutputBuffer: void put(char)>(56);
goto label;
label:
v = <org.apache.commons.codec.language.ColognePhonetic: char[] SZ>;
v = staticinvoke <org.apache.commons.codec.language.ColognePhonetic: boolean arrayContains(char[],char)>(v, v);
if v != 0 goto label;
v = <org.apache.commons.codec.language.ColognePhonetic: char[] AHKOQUX>;
v = staticinvoke <org.apache.commons.codec.language.ColognePhonetic: boolean arrayContains(char[],char)>(v, v);
if v != 0 goto label;
label:
virtualinvoke v.<org.apache.commons.codec.language.ColognePhonetic$CologneOutputBuffer: void put(char)>(56);
goto label;
label:
virtualinvoke v.<org.apache.commons.codec.language.ColognePhonetic$CologneOutputBuffer: void put(char)>(52);
goto label;
label:
v = <org.apache.commons.codec.language.ColognePhonetic: char[] DTX>;
v = staticinvoke <org.apache.commons.codec.language.ColognePhonetic: boolean arrayContains(char[],char)>(v, v);
if v == 0 goto label;
virtualinvoke v.<org.apache.commons.codec.language.ColognePhonetic$CologneOutputBuffer: void put(char)>(56);
goto label;
label:
tableswitch(v)
{
case 72: goto label;
case 73: goto label;
case 74: goto label;
case 75: goto label;
case 76: goto label;
case 77: goto label;
case 78: goto label;
case 79: goto label;
case 80: goto label;
case 81: goto label;
case 82: goto label;
default: goto label;
};
label:
virtualinvoke v.<org.apache.commons.codec.language.ColognePhonetic$CologneOutputBuffer: void put(char)>(55);
goto label;
label:
virtualinvoke v.<org.apache.commons.codec.language.ColognePhonetic$CologneOutputBuffer: void put(char)>(53);
goto label;
label:
virtualinvoke v.<org.apache.commons.codec.language.ColognePhonetic$CologneOutputBuffer: void put(char)>(54);
goto label;
label:
virtualinvoke v.<org.apache.commons.codec.language.ColognePhonetic$CologneOutputBuffer: void put(char)>(45);
label:
v = v;
goto label;
label:
v = virtualinvoke v.<org.apache.commons.codec.language.ColognePhonetic$CologneOutputBuffer: java.lang.String toString()>();
return v;
}
public java.lang.Object encode(java.lang.Object) throws org.apache.commons.codec.EncoderException
{
org.apache.commons.codec.EncoderException v;
java.lang.Class v, v;
java.lang.Object v;
java.lang.String v, v, v, v;
org.apache.commons.codec.language.ColognePhonetic v;
boolean v;
v := @this: org.apache.commons.codec.language.ColognePhonetic;
v := @parameter: java.lang.Object;
v = v instanceof java.lang.String;
if v != 0 goto label;
v = new org.apache.commons.codec.EncoderException;
v = class "Ljava/lang/String;";
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String)>(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[])>("This method\'s parameter was expected to be of the type \u. But actually it was of the type \u.");
specialinvoke v.<org.apache.commons.codec.EncoderException: void <init>(java.lang.String)>(v);
throw v;
label:
v = virtualinvoke v.<org.apache.commons.codec.language.ColognePhonetic: java.lang.String encode(java.lang.String)>(v);
return v;
}
public java.lang.String encode(java.lang.String)
{
java.lang.String v, v;
org.apache.commons.codec.language.ColognePhonetic v;
v := @this: org.apache.commons.codec.language.ColognePhonetic;
v := @parameter: java.lang.String;
v = virtualinvoke v.<org.apache.commons.codec.language.ColognePhonetic: java.lang.String colognePhonetic(java.lang.String)>(v);
return v;
}
public boolean isEncodeEqual(java.lang.String, java.lang.String)
{
java.lang.String v, v, v, v;
org.apache.commons.codec.language.ColognePhonetic v;
boolean v;
v := @this: org.apache.commons.codec.language.ColognePhonetic;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
v = virtualinvoke v.<org.apache.commons.codec.language.ColognePhonetic: java.lang.String colognePhonetic(java.lang.String)>(v);
v = virtualinvoke v.<org.apache.commons.codec.language.ColognePhonetic: java.lang.String colognePhonetic(java.lang.String)>(v);
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
return v;
}
private char[] preprocess(java.lang.String)
{
char v;
java.util.Locale v;
int v, v;
char[] v;
java.lang.String v, v;
org.apache.commons.codec.language.ColognePhonetic v;
v := @this: org.apache.commons.codec.language.ColognePhonetic;
v := @parameter: java.lang.String;
v = <java.util.Locale: java.util.Locale GERMAN>;
v = virtualinvoke v.<java.lang.String: java.lang.String toUpperCase(java.util.Locale)>(v);
v = virtualinvoke v.<java.lang.String: char[] toCharArray()>();
v = 0;
label:
v = lengthof v;
if v >= v goto label;
v = v[v];
lookupswitch(v)
{
case 196: goto label;
case 214: goto label;
case 220: goto label;
default: goto label;
};
label:
v[v] = 65;
goto label;
label:
v[v] = 85;
goto label;
label:
v[v] = 79;
label:
v = v + 1;
goto label;
label:
return v;
}
static void <clinit>()
{
char[] v, v, v, v, v, v, v, v, v;
v = newarray (char)[7];
v[0] = 65;
v[1] = 69;
v[2] = 73;
v[3] = 74;
v[4] = 79;
v[5] = 85;
v[6] = 89;
<org.apache.commons.codec.language.ColognePhonetic: char[] AEIJOUY> = v;
v = newarray (char)[3];
v[0] = 67;
v[1] = 83;
v[2] = 90;
<org.apache.commons.codec.language.ColognePhonetic: char[] CSZ> = v;
v = newarray (char)[4];
v[0] = 70;
v[1] = 80;
v[2] = 86;
v[3] = 87;
<org.apache.commons.codec.language.ColognePhonetic: char[] FPVW> = v;
v = newarray (char)[3];
v[0] = 71;
v[1] = 75;
v[2] = 81;
<org.apache.commons.codec.language.ColognePhonetic: char[] GKQ> = v;
v = newarray (char)[3];
v[0] = 67;
v[1] = 75;
v[2] = 81;
<org.apache.commons.codec.language.ColognePhonetic: char[] CKQ> = v;
v = newarray (char)[9];
v[0] = 65;
v[1] = 72;
v[2] = 75;
v[3] = 76;
v[4] = 79;
v[5] = 81;
v[6] = 82;
v[7] = 85;
v[8] = 88;
<org.apache.commons.codec.language.ColognePhonetic: char[] AHKLOQRUX> = v;
v = newarray (char)[2];
v[0] = 83;
v[1] = 90;
<org.apache.commons.codec.language.ColognePhonetic: char[] SZ> = v;
v = newarray (char)[7];
v[0] = 65;
v[1] = 72;
v[2] = 75;
v[3] = 79;
v[4] = 81;
v[5] = 85;
v[6] = 88;
<org.apache.commons.codec.language.ColognePhonetic: char[] AHKOQUX> = v;
v = newarray (char)[3];
v[0] = 68;
v[1] = 84;
v[2] = 88;
<org.apache.commons.codec.language.ColognePhonetic: char[] DTX> = v;
return;
}
}