public class org.apache.commons.codec.language.bm.Rule extends java.lang.Object
{
public static final org.apache.commons.codec.language.bm.Rule$RPattern ALL_STRINGS_RMATCHER;
public static final java.lang.String ALL;
private static final java.lang.String DOUBLE_QUOTE;
private static final java.lang.String HASH_INCLUDE;
private static final int HASH_INCLUDE_LENGTH;
private static final java.util.Map RULES;
private final org.apache.commons.codec.language.bm.Rule$RPattern lContext;
private final java.lang.String pattern;
private final org.apache.commons.codec.language.bm.Rule$PhonemeExpr phoneme;
private final org.apache.commons.codec.language.bm.Rule$RPattern rContext;
private static boolean contains(java.lang.CharSequence, char)
{
java.util.stream.IntStream v;
java.lang.CharSequence v;
char v;
java.util.function.IntPredicate v;
boolean v;
v := @parameter: java.lang.CharSequence;
v := @parameter: char;
v = interfaceinvoke v.<java.lang.CharSequence: java.util.stream.IntStream chars()>();
v = staticinvoke <org.apache.commons.codec.language.bm.Rule$lambda_contains_2__116: java.util.function.IntPredicate bootstrap$(char)>(v);
v = interfaceinvoke v.<java.util.stream.IntStream: boolean anyMatch(java.util.function.IntPredicate)>(v);
return v;
}
private static java.lang.String createResourceName(org.apache.commons.codec.language.bm.NameType, org.apache.commons.codec.language.bm.RuleType, java.lang.String)
{
java.lang.Object[] v;
java.lang.String v, v, v, v;
org.apache.commons.codec.language.bm.NameType v;
org.apache.commons.codec.language.bm.RuleType v;
v := @parameter: org.apache.commons.codec.language.bm.NameType;
v := @parameter: org.apache.commons.codec.language.bm.RuleType;
v := @parameter: java.lang.String;
v = newarray (java.lang.Object)[3];
v = virtualinvoke v.<org.apache.commons.codec.language.bm.NameType: java.lang.String getName()>();
v[0] = v;
v = virtualinvoke v.<org.apache.commons.codec.language.bm.RuleType: java.lang.String getName()>();
v[1] = v;
v[2] = v;
v = staticinvoke <java.lang.String: java.lang.String format(java.lang.String,java.lang.Object[])>("org/apache/commons/codec/language/bm/%s_%s_%s.txt", v);
return v;
}
private static java.util.Scanner createScanner(org.apache.commons.codec.language.bm.NameType, org.apache.commons.codec.language.bm.RuleType, java.lang.String)
{
java.util.Scanner v;
java.lang.String v, v;
org.apache.commons.codec.language.bm.NameType v;
org.apache.commons.codec.language.bm.RuleType v;
java.io.InputStream v;
v := @parameter: org.apache.commons.codec.language.bm.NameType;
v := @parameter: org.apache.commons.codec.language.bm.RuleType;
v := @parameter: java.lang.String;
v = staticinvoke <org.apache.commons.codec.language.bm.Rule: java.lang.String createResourceName(org.apache.commons.codec.language.bm.NameType,org.apache.commons.codec.language.bm.RuleType,java.lang.String)>(v, v, v);
v = new java.util.Scanner;
v = staticinvoke <org.apache.commons.codec.Resources: java.io.InputStream getInputStream(java.lang.String)>(v);
specialinvoke v.<java.util.Scanner: void <init>(java.io.InputStream,java.lang.String)>(v, "UTF-8");
return v;
}
private static java.util.Scanner createScanner(java.lang.String)
{
java.lang.Object[] v;
java.util.Scanner v;
java.lang.String v, v;
java.io.InputStream v;
v := @parameter: java.lang.String;
v = newarray (java.lang.Object)[1];
v[0] = v;
v = staticinvoke <java.lang.String: java.lang.String format(java.lang.String,java.lang.Object[])>("org/apache/commons/codec/language/bm/%s.txt", v);
v = new java.util.Scanner;
v = staticinvoke <org.apache.commons.codec.Resources: java.io.InputStream getInputStream(java.lang.String)>(v);
specialinvoke v.<java.util.Scanner: void <init>(java.io.InputStream,java.lang.String)>(v, "UTF-8");
return v;
}
private static boolean endsWith(java.lang.CharSequence, java.lang.CharSequence)
{
java.lang.CharSequence v, v;
char v, v;
int v, v, v, v;
v := @parameter: java.lang.CharSequence;
v := @parameter: java.lang.CharSequence;
v = interfaceinvoke v.<java.lang.CharSequence: int length()>();
v = interfaceinvoke v.<java.lang.CharSequence: int length()>();
if v <= v goto label;
return 0;
label:
v = v - 1;
v = v - 1;
label:
if v < 0 goto label;
v = interfaceinvoke v.<java.lang.CharSequence: char charAt(int)>(v);
v = interfaceinvoke v.<java.lang.CharSequence: char charAt(int)>(v);
if v == v goto label;
return 0;
label:
v = v - 1;
v = v - 1;
goto label;
label:
return 1;
}
public static java.util.List getInstance(org.apache.commons.codec.language.bm.NameType, org.apache.commons.codec.language.bm.RuleType, org.apache.commons.codec.language.bm.Languages$LanguageSet)
{
java.util.function.Consumer v;
org.apache.commons.codec.language.bm.Languages$LanguageSet v;
java.util.Collection v;
java.util.Map v;
org.apache.commons.codec.language.bm.NameType v;
org.apache.commons.codec.language.bm.RuleType v;
java.util.ArrayList v;
v := @parameter: org.apache.commons.codec.language.bm.NameType;
v := @parameter: org.apache.commons.codec.language.bm.RuleType;
v := @parameter: org.apache.commons.codec.language.bm.Languages$LanguageSet;
v = staticinvoke <org.apache.commons.codec.language.bm.Rule: java.util.Map getInstanceMap(org.apache.commons.codec.language.bm.NameType,org.apache.commons.codec.language.bm.RuleType,org.apache.commons.codec.language.bm.Languages$LanguageSet)>(v, v, v);
v = new java.util.ArrayList;
specialinvoke v.<java.util.ArrayList: void <init>()>();
v = interfaceinvoke v.<java.util.Map: java.util.Collection values()>();
v = staticinvoke <org.apache.commons.codec.language.bm.Rule$lambda_getInstance_3__117: java.util.function.Consumer bootstrap$(java.util.List)>(v);
interfaceinvoke v.<java.util.Collection: void forEach(java.util.function.Consumer)>(v);
return v;
}
public static java.util.List getInstance(org.apache.commons.codec.language.bm.NameType, org.apache.commons.codec.language.bm.RuleType, java.lang.String)
{
java.lang.String[] v;
java.util.HashSet v;
org.apache.commons.codec.language.bm.Languages$LanguageSet v;
java.util.List v, v;
java.lang.String v;
org.apache.commons.codec.language.bm.NameType v;
org.apache.commons.codec.language.bm.RuleType v;
v := @parameter: org.apache.commons.codec.language.bm.NameType;
v := @parameter: org.apache.commons.codec.language.bm.RuleType;
v := @parameter: java.lang.String;
v = new java.util.HashSet;
v = newarray (java.lang.String)[1];
v[0] = v;
v = staticinvoke <java.util.Arrays: java.util.List asList(java.lang.Object[])>(v);
specialinvoke v.<java.util.HashSet: void <init>(java.util.Collection)>(v);
v = staticinvoke <org.apache.commons.codec.language.bm.Languages$LanguageSet: org.apache.commons.codec.language.bm.Languages$LanguageSet 'from'(java.util.Set)>(v);
v = staticinvoke <org.apache.commons.codec.language.bm.Rule: java.util.List getInstance(org.apache.commons.codec.language.bm.NameType,org.apache.commons.codec.language.bm.RuleType,org.apache.commons.codec.language.bm.Languages$LanguageSet)>(v, v, v);
return v;
}
public static java.util.Map getInstanceMap(org.apache.commons.codec.language.bm.NameType, org.apache.commons.codec.language.bm.RuleType, org.apache.commons.codec.language.bm.Languages$LanguageSet)
{
org.apache.commons.codec.language.bm.Languages$LanguageSet v;
java.util.Map v;
java.lang.String v;
org.apache.commons.codec.language.bm.NameType v;
org.apache.commons.codec.language.bm.RuleType v;
boolean v;
v := @parameter: org.apache.commons.codec.language.bm.NameType;
v := @parameter: org.apache.commons.codec.language.bm.RuleType;
v := @parameter: org.apache.commons.codec.language.bm.Languages$LanguageSet;
v = virtualinvoke v.<org.apache.commons.codec.language.bm.Languages$LanguageSet: boolean isSingleton()>();
if v == 0 goto label;
v = virtualinvoke v.<org.apache.commons.codec.language.bm.Languages$LanguageSet: java.lang.String getAny()>();
v = staticinvoke <org.apache.commons.codec.language.bm.Rule: java.util.Map getInstanceMap(org.apache.commons.codec.language.bm.NameType,org.apache.commons.codec.language.bm.RuleType,java.lang.String)>(v, v, v);
goto label;
label:
v = staticinvoke <org.apache.commons.codec.language.bm.Rule: java.util.Map getInstanceMap(org.apache.commons.codec.language.bm.NameType,org.apache.commons.codec.language.bm.RuleType,java.lang.String)>(v, v, "any");
label:
return v;
}
public static java.util.Map getInstanceMap(org.apache.commons.codec.language.bm.NameType, org.apache.commons.codec.language.bm.RuleType, java.lang.String)
{
java.lang.Object[] v;
java.lang.IllegalArgumentException v;
java.util.Map v;
java.lang.Object v, v, v;
java.lang.String v, v, v, v;
org.apache.commons.codec.language.bm.NameType v;
org.apache.commons.codec.language.bm.RuleType v;
v := @parameter: org.apache.commons.codec.language.bm.NameType;
v := @parameter: org.apache.commons.codec.language.bm.RuleType;
v := @parameter: java.lang.String;
v = <org.apache.commons.codec.language.bm.Rule: java.util.Map RULES>;
v = interfaceinvoke v.<java.util.Map: java.lang.Object get(java.lang.Object)>(v);
v = interfaceinvoke v.<java.util.Map: java.lang.Object get(java.lang.Object)>(v);
v = interfaceinvoke v.<java.util.Map: java.lang.Object get(java.lang.Object)>(v);
if v != null goto label;
v = new java.lang.IllegalArgumentException;
v = newarray (java.lang.Object)[3];
v = virtualinvoke v.<org.apache.commons.codec.language.bm.NameType: java.lang.String getName()>();
v[0] = v;
v = virtualinvoke v.<org.apache.commons.codec.language.bm.RuleType: java.lang.String getName()>();
v[1] = v;
v[2] = v;
v = staticinvoke <java.lang.String: java.lang.String format(java.lang.String,java.lang.Object[])>("No rules found for %s, %s, %s.", v);
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>(v);
throw v;
label:
return v;
}
private static org.apache.commons.codec.language.bm.Rule$Phoneme parsePhoneme(java.lang.String)
{
java.lang.String[] v;
org.apache.commons.codec.language.bm.Rule$Phoneme v, v;
java.util.HashSet v;
org.apache.commons.codec.language.bm.Languages$LanguageSet v, v;
int v, v, v, v;
java.lang.String v, v, v;
boolean v;
java.lang.IllegalArgumentException v;
java.util.List v;
v := @parameter: java.lang.String;
v = virtualinvoke v.<java.lang.String: int indexOf(java.lang.String)>("[");
if v < 0 goto label;
v = virtualinvoke v.<java.lang.String: boolean endsWith(java.lang.String)>("]");
if v != 0 goto label;
v = new java.lang.IllegalArgumentException;
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>("Phoneme expression contains a \'[\' but does not end in \']\'");
throw v;
label:
v = virtualinvoke v.<java.lang.String: java.lang.String substring(int,int)>(0, v);
v = v + 1;
v = virtualinvoke v.<java.lang.String: int length()>();
v = v - 1;
v = virtualinvoke v.<java.lang.String: java.lang.String substring(int,int)>(v, v);
v = new java.util.HashSet;
v = virtualinvoke v.<java.lang.String: java.lang.String[] split(java.lang.String)>("[+]");
v = staticinvoke <java.util.Arrays: java.util.List asList(java.lang.Object[])>(v);
specialinvoke v.<java.util.HashSet: void <init>(java.util.Collection)>(v);
v = new org.apache.commons.codec.language.bm.Rule$Phoneme;
v = staticinvoke <org.apache.commons.codec.language.bm.Languages$LanguageSet: org.apache.commons.codec.language.bm.Languages$LanguageSet 'from'(java.util.Set)>(v);
specialinvoke v.<org.apache.commons.codec.language.bm.Rule$Phoneme: void <init>(java.lang.CharSequence,org.apache.commons.codec.language.bm.Languages$LanguageSet)>(v, v);
return v;
label:
v = new org.apache.commons.codec.language.bm.Rule$Phoneme;
v = <org.apache.commons.codec.language.bm.Languages: org.apache.commons.codec.language.bm.Languages$LanguageSet ANY_LANGUAGE>;
specialinvoke v.<org.apache.commons.codec.language.bm.Rule$Phoneme: void <init>(java.lang.CharSequence,org.apache.commons.codec.language.bm.Languages$LanguageSet)>(v, v);
return v;
}
private static org.apache.commons.codec.language.bm.Rule$PhonemeExpr parsePhonemeExpr(java.lang.String)
{
java.lang.String[] v;
org.apache.commons.codec.language.bm.Rule$Phoneme v, v, v;
java.util.ArrayList v;
org.apache.commons.codec.language.bm.Languages$LanguageSet v;
int v, v, v, v;
java.lang.String v, v, v;
boolean v, v, v, v;
java.lang.IllegalArgumentException v;
org.apache.commons.codec.language.bm.Rule$PhonemeList v;
v := @parameter: java.lang.String;
v = virtualinvoke v.<java.lang.String: boolean startsWith(java.lang.String)>("(");
if v == 0 goto label;
v = virtualinvoke v.<java.lang.String: boolean endsWith(java.lang.String)>(")");
if v != 0 goto label;
v = new java.lang.IllegalArgumentException;
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>("Phoneme starts with \'(\' so must end with \')\'");
throw v;
label:
v = new java.util.ArrayList;
specialinvoke v.<java.util.ArrayList: void <init>()>();
v = virtualinvoke v.<java.lang.String: int length()>();
v = v - 1;
v = virtualinvoke v.<java.lang.String: java.lang.String substring(int,int)>(1, v);
v = virtualinvoke v.<java.lang.String: java.lang.String[] split(java.lang.String)>("[|]");
v = lengthof v;
v = 0;
label:
if v >= v goto label;
v = v[v];
v = staticinvoke <org.apache.commons.codec.language.bm.Rule: org.apache.commons.codec.language.bm.Rule$Phoneme parsePhoneme(java.lang.String)>(v);
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
v = v + 1;
goto label;
label:
v = virtualinvoke v.<java.lang.String: boolean startsWith(java.lang.String)>("|");
if v != 0 goto label;
v = virtualinvoke v.<java.lang.String: boolean endsWith(java.lang.String)>("|");
if v == 0 goto label;
label:
v = new org.apache.commons.codec.language.bm.Rule$Phoneme;
v = <org.apache.commons.codec.language.bm.Languages: org.apache.commons.codec.language.bm.Languages$LanguageSet ANY_LANGUAGE>;
specialinvoke v.<org.apache.commons.codec.language.bm.Rule$Phoneme: void <init>(java.lang.CharSequence,org.apache.commons.codec.language.bm.Languages$LanguageSet)>("", v);
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
label:
v = new org.apache.commons.codec.language.bm.Rule$PhonemeList;
specialinvoke v.<org.apache.commons.codec.language.bm.Rule$PhonemeList: void <init>(java.util.List)>(v);
return v;
label:
v = staticinvoke <org.apache.commons.codec.language.bm.Rule: org.apache.commons.codec.language.bm.Rule$Phoneme parsePhoneme(java.lang.String)>(v);
return v;
}
private static java.util.Map parseRules(java.util.Scanner, java.lang.String)
{
java.lang.IllegalStateException v;
java.util.Scanner v, v;
java.util.Map v;
boolean v, v, v, v, v, v, v;
org.apache.commons.codec.language.bm.Rule$PhonemeExpr v;
java.lang.Throwable v;
java.lang.String[] v;
java.util.HashMap v;
java.util.function.Function v;
int v, v, v, v, v;
java.lang.String v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
java.lang.IllegalArgumentException v, v, v;
org.apache.commons.codec.language.bm.Rule$1 v;
java.lang.Object v;
v := @parameter: java.util.Scanner;
v := @parameter: java.lang.String;
v = new java.util.HashMap;
specialinvoke v.<java.util.HashMap: void <init>()>();
v = 0;
v = 0;
label:
v = virtualinvoke v.<java.util.Scanner: boolean hasNextLine()>();
if v == 0 goto label;
v = v + 1;
v = virtualinvoke v.<java.util.Scanner: java.lang.String nextLine()>();
v = v;
if v == 0 goto label;
v = virtualinvoke v.<java.lang.String: boolean endsWith(java.lang.String)>("*/");
if v == 0 goto label;
v = 0;
goto label;
label:
v = virtualinvoke v.<java.lang.String: boolean startsWith(java.lang.String)>("/*");
if v == 0 goto label;
v = 1;
goto label;
label:
v = virtualinvoke v.<java.lang.String: int indexOf(java.lang.String)>("//");
if v < 0 goto label;
v = virtualinvoke v.<java.lang.String: java.lang.String substring(int,int)>(0, v);
label:
v = virtualinvoke v.<java.lang.String: java.lang.String trim()>();
v = virtualinvoke v.<java.lang.String: boolean isEmpty()>();
if v != 0 goto label;
v = virtualinvoke v.<java.lang.String: boolean startsWith(java.lang.String)>("#include");
if v == 0 goto label;
v = <org.apache.commons.codec.language.bm.Rule: int HASH_INCLUDE_LENGTH>;
v = virtualinvoke v.<java.lang.String: java.lang.String substring(int)>(v);
v = virtualinvoke v.<java.lang.String: java.lang.String trim()>();
v = virtualinvoke v.<java.lang.String: boolean contains(java.lang.CharSequence)>(" ");
if v == 0 goto label;
v = new java.lang.IllegalArgumentException;
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[])>("Malformed import statement \'\u0001\' in \u0001");
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>(v);
throw v;
label:
v = staticinvoke <org.apache.commons.codec.language.bm.Rule: java.util.Scanner createScanner(java.lang.String)>(v);
label:
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[])>("\u0001->\u0001");
v = staticinvoke <org.apache.commons.codec.language.bm.Rule: java.util.Map parseRules(java.util.Scanner,java.lang.String)>(v, v);
interfaceinvoke v.<java.util.Map: void putAll(java.util.Map)>(v);
label:
if v == null goto label;
virtualinvoke v.<java.util.Scanner: void close()>();
goto label;
label:
v := @caughtexception;
throw v;
label:
v = virtualinvoke v.<java.lang.String: java.lang.String[] split(java.lang.String)>("\\s+");
v = lengthof v;
if v == 4 goto label;
v = new java.lang.IllegalArgumentException;
v = lengthof v;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (int,java.lang.String,java.lang.String)>(v, 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[])>("Malformed rule statement split into \u parts: \u in \u0001");
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>(v);
throw v;
label:
v = v[0];
v = staticinvoke <org.apache.commons.codec.language.bm.Rule: java.lang.String stripQuotes(java.lang.String)>(v);
v = v[1];
v = staticinvoke <org.apache.commons.codec.language.bm.Rule: java.lang.String stripQuotes(java.lang.String)>(v);
v = v[2];
v = staticinvoke <org.apache.commons.codec.language.bm.Rule: java.lang.String stripQuotes(java.lang.String)>(v);
v = v[3];
v = staticinvoke <org.apache.commons.codec.language.bm.Rule: java.lang.String stripQuotes(java.lang.String)>(v);
v = staticinvoke <org.apache.commons.codec.language.bm.Rule: org.apache.commons.codec.language.bm.Rule$PhonemeExpr parsePhonemeExpr(java.lang.String)>(v);
v = new org.apache.commons.codec.language.bm.Rule$1;
specialinvoke v.<org.apache.commons.codec.language.bm.Rule$1: void <init>(java.lang.String,java.lang.String,java.lang.String,org.apache.commons.codec.language.bm.Rule$PhonemeExpr,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String)>(v, v, v, v, v, v, v, v, v);
v = v.<org.apache.commons.codec.language.bm.Rule: java.lang.String pattern>;
v = virtualinvoke v.<java.lang.String: java.lang.String substring(int,int)>(0, 1);
v = staticinvoke <org.apache.commons.codec.language.bm.Rule$lambda_parseRules_4__118: java.util.function.Function bootstrap$()>();
v = interfaceinvoke v.<java.util.Map: java.lang.Object computeIfAbsent(java.lang.Object,java.util.function.Function)>(v, v);
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
label:
goto label;
label:
v := @caughtexception;
v = new java.lang.IllegalStateException;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (int,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[])>("Problem parsing line \'\u0001\' in \u0001");
specialinvoke v.<java.lang.IllegalStateException: void <init>(java.lang.String,java.lang.Throwable)>(v, v);
throw v;
label:
return v;
catch java.lang.Throwable from label to label with label;
catch java.lang.IllegalArgumentException from label to label with label;
}
private static org.apache.commons.codec.language.bm.Rule$RPattern pattern(java.lang.String)
{
byte v;
int v, v, v, v;
java.lang.String v, v, v, v;
boolean v, v, v, v, v, v, v, v, v, v, v;
org.apache.commons.codec.language.bm.Rule$RPattern v, v, v, v, v, v, v, v;
org.apache.commons.codec.language.bm.Rule$2 v;
v := @parameter: java.lang.String;
v = virtualinvoke v.<java.lang.String: boolean startsWith(java.lang.String)>("^");
v = virtualinvoke v.<java.lang.String: boolean endsWith(java.lang.String)>("$");
if v == 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
if v == 0 goto label;
v = virtualinvoke v.<java.lang.String: int length()>();
v = v - 1;
goto label;
label:
v = virtualinvoke v.<java.lang.String: int length()>();
label:
v = virtualinvoke v.<java.lang.String: java.lang.String substring(int,int)>(v, v);
v = virtualinvoke v.<java.lang.String: boolean contains(java.lang.CharSequence)>("[");
if v != 0 goto label;
if v == 0 goto label;
if v == 0 goto label;
v = virtualinvoke v.<java.lang.String: boolean isEmpty()>();
if v == 0 goto label;
v = staticinvoke <org.apache.commons.codec.language.bm.Rule$lambda_pattern_5__125: org.apache.commons.codec.language.bm.Rule$RPattern bootstrap$()>();
return v;
label:
v = staticinvoke <org.apache.commons.codec.language.bm.Rule$lambda_pattern_6__124: org.apache.commons.codec.language.bm.Rule$RPattern bootstrap$(java.lang.String)>(v);
return v;
label:
if v != 0 goto label;
if v == 0 goto label;
label:
v = virtualinvoke v.<java.lang.String: boolean isEmpty()>();
if v == 0 goto label;
v = <org.apache.commons.codec.language.bm.Rule: org.apache.commons.codec.language.bm.Rule$RPattern ALL_STRINGS_RMATCHER>;
return v;
label:
if v == 0 goto label;
v = staticinvoke <org.apache.commons.codec.language.bm.Rule$lambda_pattern_7__123: org.apache.commons.codec.language.bm.Rule$RPattern bootstrap$(java.lang.String)>(v);
return v;
label:
if v == 0 goto label;
v = staticinvoke <org.apache.commons.codec.language.bm.Rule$lambda_pattern_8__122: org.apache.commons.codec.language.bm.Rule$RPattern bootstrap$(java.lang.String)>(v);
return v;
label:
v = virtualinvoke v.<java.lang.String: boolean startsWith(java.lang.String)>("[");
v = virtualinvoke v.<java.lang.String: boolean endsWith(java.lang.String)>("]");
if v == 0 goto label;
if v == 0 goto label;
v = virtualinvoke v.<java.lang.String: int length()>();
v = v - 1;
v = virtualinvoke v.<java.lang.String: java.lang.String substring(int,int)>(1, v);
v = virtualinvoke v.<java.lang.String: boolean contains(java.lang.CharSequence)>("[");
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 = v;
if v != 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
v = v;
if v == 0 goto label;
if v == 0 goto label;
v = staticinvoke <org.apache.commons.codec.language.bm.Rule$lambda_pattern_9__121: org.apache.commons.codec.language.bm.Rule$RPattern bootstrap$(java.lang.String,boolean)>(v, v);
return v;
label:
if v == 0 goto label;
v = staticinvoke <org.apache.commons.codec.language.bm.Rule$lambda_pattern_10__120: org.apache.commons.codec.language.bm.Rule$RPattern bootstrap$(java.lang.String,boolean)>(v, v);
return v;
label:
if v == 0 goto label;
v = staticinvoke <org.apache.commons.codec.language.bm.Rule$lambda_pattern_11__119: org.apache.commons.codec.language.bm.Rule$RPattern bootstrap$(java.lang.String,boolean)>(v, v);
return v;
label:
v = new org.apache.commons.codec.language.bm.Rule$2;
specialinvoke v.<org.apache.commons.codec.language.bm.Rule$2: void <init>(java.lang.String)>(v);
return v;
}
private static boolean startsWith(java.lang.CharSequence, java.lang.CharSequence)
{
java.lang.CharSequence v, v;
char v, v;
int v, v, v, v;
v := @parameter: java.lang.CharSequence;
v := @parameter: java.lang.CharSequence;
v = interfaceinvoke v.<java.lang.CharSequence: int length()>();
v = interfaceinvoke v.<java.lang.CharSequence: int length()>();
if v <= v goto label;
return 0;
label:
v = 0;
label:
v = interfaceinvoke v.<java.lang.CharSequence: int length()>();
if v >= v goto label;
v = interfaceinvoke v.<java.lang.CharSequence: char charAt(int)>(v);
v = interfaceinvoke v.<java.lang.CharSequence: char charAt(int)>(v);
if v == v goto label;
return 0;
label:
v = v + 1;
goto label;
label:
return 1;
}
private static java.lang.String stripQuotes(java.lang.String)
{
int v, v;
java.lang.String v;
boolean v, v;
v := @parameter: java.lang.String;
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 = virtualinvoke v.<java.lang.String: boolean endsWith(java.lang.String)>("\"");
if v == 0 goto label;
v = virtualinvoke v.<java.lang.String: int length()>();
v = v - 1;
v = virtualinvoke v.<java.lang.String: java.lang.String substring(int,int)>(0, v);
label:
return v;
}
public void <init>(java.lang.String, java.lang.String, java.lang.String, org.apache.commons.codec.language.bm.Rule$PhonemeExpr)
{
org.apache.commons.codec.language.bm.Rule v;
org.apache.commons.codec.language.bm.Rule$RPattern v, v;
org.apache.commons.codec.language.bm.Rule$PhonemeExpr v;
java.lang.String v, v, v, v, v;
v := @this: org.apache.commons.codec.language.bm.Rule;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
v := @parameter: org.apache.commons.codec.language.bm.Rule$PhonemeExpr;
specialinvoke v.<java.lang.Object: void <init>()>();
v.<org.apache.commons.codec.language.bm.Rule: java.lang.String pattern> = v;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(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[])>("\u0001$");
v = staticinvoke <org.apache.commons.codec.language.bm.Rule: org.apache.commons.codec.language.bm.Rule$RPattern pattern(java.lang.String)>(v);
v.<org.apache.commons.codec.language.bm.Rule: org.apache.commons.codec.language.bm.Rule$RPattern lContext> = v;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(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[])>("^\u0001");
v = staticinvoke <org.apache.commons.codec.language.bm.Rule: org.apache.commons.codec.language.bm.Rule$RPattern pattern(java.lang.String)>(v);
v.<org.apache.commons.codec.language.bm.Rule: org.apache.commons.codec.language.bm.Rule$RPattern rContext> = v;
v.<org.apache.commons.codec.language.bm.Rule: org.apache.commons.codec.language.bm.Rule$PhonemeExpr phoneme> = v;
return;
}
public org.apache.commons.codec.language.bm.Rule$RPattern getLContext()
{
org.apache.commons.codec.language.bm.Rule v;
org.apache.commons.codec.language.bm.Rule$RPattern v;
v := @this: org.apache.commons.codec.language.bm.Rule;
v = v.<org.apache.commons.codec.language.bm.Rule: org.apache.commons.codec.language.bm.Rule$RPattern lContext>;
return v;
}
public java.lang.String getPattern()
{
java.lang.String v;
org.apache.commons.codec.language.bm.Rule v;
v := @this: org.apache.commons.codec.language.bm.Rule;
v = v.<org.apache.commons.codec.language.bm.Rule: java.lang.String pattern>;
return v;
}
public org.apache.commons.codec.language.bm.Rule$PhonemeExpr getPhoneme()
{
org.apache.commons.codec.language.bm.Rule$PhonemeExpr v;
org.apache.commons.codec.language.bm.Rule v;
v := @this: org.apache.commons.codec.language.bm.Rule;
v = v.<org.apache.commons.codec.language.bm.Rule: org.apache.commons.codec.language.bm.Rule$PhonemeExpr phoneme>;
return v;
}
public org.apache.commons.codec.language.bm.Rule$RPattern getRContext()
{
org.apache.commons.codec.language.bm.Rule v;
org.apache.commons.codec.language.bm.Rule$RPattern v;
v := @this: org.apache.commons.codec.language.bm.Rule;
v = v.<org.apache.commons.codec.language.bm.Rule: org.apache.commons.codec.language.bm.Rule$RPattern rContext>;
return v;
}
public boolean patternAndContextMatches(java.lang.CharSequence, int)
{
java.lang.IndexOutOfBoundsException v;
org.apache.commons.codec.language.bm.Rule v;
int v, v, v, v, v;
java.lang.String v, v;
boolean v, v, v;
java.lang.CharSequence v, v, v, v;
org.apache.commons.codec.language.bm.Rule$RPattern v, v;
v := @this: org.apache.commons.codec.language.bm.Rule;
v := @parameter: java.lang.CharSequence;
v := @parameter: int;
if v >= 0 goto label;
v = new java.lang.IndexOutOfBoundsException;
specialinvoke v.<java.lang.IndexOutOfBoundsException: void <init>(java.lang.String)>("Can not match pattern at negative indexes");
throw v;
label:
v = v.<org.apache.commons.codec.language.bm.Rule: java.lang.String pattern>;
v = virtualinvoke v.<java.lang.String: int length()>();
v = v + v;
v = interfaceinvoke v.<java.lang.CharSequence: int length()>();
if v <= v goto label;
return 0;
label:
v = interfaceinvoke v.<java.lang.CharSequence: java.lang.CharSequence subSequence(int,int)>(v, v);
v = v.<org.apache.commons.codec.language.bm.Rule: java.lang.String pattern>;
v = virtualinvoke v.<java.lang.Object: boolean equals(java.lang.Object)>(v);
if v != 0 goto label;
return 0;
label:
v = v.<org.apache.commons.codec.language.bm.Rule: org.apache.commons.codec.language.bm.Rule$RPattern rContext>;
v = interfaceinvoke v.<java.lang.CharSequence: int length()>();
v = interfaceinvoke v.<java.lang.CharSequence: java.lang.CharSequence subSequence(int,int)>(v, v);
v = interfaceinvoke v.<org.apache.commons.codec.language.bm.Rule$RPattern: boolean isMatch(java.lang.CharSequence)>(v);
if v != 0 goto label;
return 0;
label:
v = v.<org.apache.commons.codec.language.bm.Rule: org.apache.commons.codec.language.bm.Rule$RPattern lContext>;
v = interfaceinvoke v.<java.lang.CharSequence: java.lang.CharSequence subSequence(int,int)>(0, v);
v = interfaceinvoke v.<org.apache.commons.codec.language.bm.Rule$RPattern: boolean isMatch(java.lang.CharSequence)>(v);
return v;
}
static void <clinit>()
{
java.lang.Throwable v;
org.apache.commons.codec.language.bm.RuleType[] v;
java.util.Scanner v;
java.util.HashMap v;
java.util.Map v, v, v, v;
org.apache.commons.codec.language.bm.Languages v;
int v, v, v, v, v;
java.lang.String v, v;
boolean v;
java.util.EnumMap v, v;
org.apache.commons.codec.language.bm.Rule$RPattern v;
java.util.Set v;
org.apache.commons.codec.language.bm.NameType[] v;
java.util.function.Consumer v;
org.apache.commons.codec.language.bm.NameType v;
org.apache.commons.codec.language.bm.RuleType v, v;
v = staticinvoke <org.apache.commons.codec.language.bm.Rule$lambda_static_0__126: org.apache.commons.codec.language.bm.Rule$RPattern bootstrap$()>();
<org.apache.commons.codec.language.bm.Rule: org.apache.commons.codec.language.bm.Rule$RPattern ALL_STRINGS_RMATCHER> = v;
v = "#include";
v = virtualinvoke v.<java.lang.String: int length()>();
<org.apache.commons.codec.language.bm.Rule: int HASH_INCLUDE_LENGTH> = v;
v = new java.util.EnumMap;
specialinvoke v.<java.util.EnumMap: void <init>(java.lang.Class)>(class "Lorg/apache/commons/codec/language/bm/NameType;");
<org.apache.commons.codec.language.bm.Rule: java.util.Map RULES> = v;
v = staticinvoke <org.apache.commons.codec.language.bm.NameType: org.apache.commons.codec.language.bm.NameType[] values()>();
v = lengthof v;
v = 0;
label:
if v >= v goto label;
v = v[v];
v = new java.util.EnumMap;
specialinvoke v.<java.util.EnumMap: void <init>(java.lang.Class)>(class "Lorg/apache/commons/codec/language/bm/RuleType;");
v = staticinvoke <org.apache.commons.codec.language.bm.RuleType: org.apache.commons.codec.language.bm.RuleType[] values()>();
v = lengthof v;
v = 0;
label:
if v >= v goto label;
v = v[v];
v = new java.util.HashMap;
specialinvoke v.<java.util.HashMap: void <init>()>();
v = staticinvoke <org.apache.commons.codec.language.bm.Languages: org.apache.commons.codec.language.bm.Languages getInstance(org.apache.commons.codec.language.bm.NameType)>(v);
v = virtualinvoke v.<org.apache.commons.codec.language.bm.Languages: java.util.Set getLanguages()>();
v = staticinvoke <org.apache.commons.codec.language.bm.Rule$lambda_static_1__127: java.util.function.Consumer bootstrap$(org.apache.commons.codec.language.bm.NameType,org.apache.commons.codec.language.bm.RuleType,java.util.Map)>(v, v, v);
interfaceinvoke v.<java.util.Set: void forEach(java.util.function.Consumer)>(v);
v = <org.apache.commons.codec.language.bm.RuleType: org.apache.commons.codec.language.bm.RuleType RULES>;
v = virtualinvoke v.<org.apache.commons.codec.language.bm.RuleType: boolean equals(java.lang.Object)>(v);
if v != 0 goto label;
v = staticinvoke <org.apache.commons.codec.language.bm.Rule: java.util.Scanner createScanner(org.apache.commons.codec.language.bm.NameType,org.apache.commons.codec.language.bm.RuleType,java.lang.String)>(v, v, "common");
label:
v = staticinvoke <org.apache.commons.codec.language.bm.Rule: java.lang.String createResourceName(org.apache.commons.codec.language.bm.NameType,org.apache.commons.codec.language.bm.RuleType,java.lang.String)>(v, v, "common");
v = staticinvoke <org.apache.commons.codec.language.bm.Rule: java.util.Map parseRules(java.util.Scanner,java.lang.String)>(v, v);
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>("common", v);
label:
if v == null goto label;
virtualinvoke v.<java.util.Scanner: void close()>();
goto label;
label:
v := @caughtexception;
throw v;
label:
v = staticinvoke <java.util.Collections: java.util.Map unmodifiableMap(java.util.Map)>(v);
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
v = v + 1;
goto label;
label:
v = <org.apache.commons.codec.language.bm.Rule: java.util.Map RULES>;
v = staticinvoke <java.util.Collections: java.util.Map unmodifiableMap(java.util.Map)>(v);
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
v = v + 1;
goto label;
label:
return;
catch java.lang.Throwable from label to label with label;
}
}