Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ IcuEnumCultures()

static CultureInfo[] System.Globalization.CultureData.IcuEnumCultures ( CultureTypes types)
inlinestaticprivate

Definition at line 2088 of file CultureData.cs.

2089 {
2090 if ((types & (CultureTypes.NeutralCultures | CultureTypes.SpecificCultures)) == 0)
2091 {
2092 return Array.Empty<CultureInfo>();
2093 }
2094 int locales = Interop.Globalization.GetLocales(null, 0);
2095 if (locales <= 0)
2096 {
2097 return Array.Empty<CultureInfo>();
2098 }
2099 char[] array = new char[locales];
2101 if (locales <= 0)
2102 {
2103 return Array.Empty<CultureInfo>();
2104 }
2105 bool flag = (types & CultureTypes.NeutralCultures) != 0;
2106 bool flag2 = (types & CultureTypes.SpecificCultures) != 0;
2108 if (flag)
2109 {
2110 list.Add(CultureInfo.InvariantCulture);
2111 }
2112 int num;
2113 for (int i = 0; i < locales; i += num)
2114 {
2115 num = array[i++];
2116 if (i + num <= locales)
2117 {
2118 CultureInfo cultureInfo = CultureInfo.GetCultureInfo(new string(array, i, num));
2119 if ((flag && cultureInfo.IsNeutralCulture) || (flag2 && !cultureInfo.IsNeutralCulture))
2120 {
2122 }
2123 }
2124 }
2125 return list.ToArray();
2126 }
static int GetLocales([Out] char[] value, int valueLength)
void Add(TKey key, TValue value)

References System.array, System.Globalization.CultureInfo.GetCultureInfo(), Interop.Globalization.GetLocales(), System.Globalization.CultureInfo.InvariantCulture, and System.list.

Referenced by System.Globalization.CultureData.GetCultures().