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

◆ NlsGetUnicodeCore() [1/2]

unsafe string System.Globalization.IdnMapping.NlsGetUnicodeCore ( string asciiString,
char * ascii,
int count )
inlineprivate

Definition at line 811 of file IdnMapping.cs.

812 {
813 uint nlsFlags = NlsFlags;
814 int num = Interop.Normaliz.IdnToUnicode(nlsFlags, ascii, count, null, 0);
815 if (num == 0)
816 {
817 ThrowForZeroLength(unicode: false);
818 }
819 if (num < 512)
820 {
821 char* output = stackalloc char[num];
822 return NlsGetUnicodeCore(asciiString, ascii, count, nlsFlags, output, num);
823 }
824 char[] array = new char[num];
825 fixed (char* output2 = &array[0])
826 {
827 return NlsGetUnicodeCore(asciiString, ascii, count, nlsFlags, output2, num);
828 }
829 }
static unsafe int IdnToUnicode(uint dwFlags, char *lpASCIICharStr, int cchASCIIChar, char *lpUnicodeCharStr, int cchUnicodeChar)
unsafe string NlsGetUnicodeCore(string asciiString, char *ascii, int count)
static void ThrowForZeroLength(bool unicode)

References System.array, System.count, Interop.Normaliz.IdnToUnicode(), System.Globalization.IdnMapping.NlsFlags, System.Globalization.IdnMapping.NlsGetUnicodeCore(), and System.Globalization.IdnMapping.ThrowForZeroLength().

Referenced by System.Globalization.IdnMapping.GetUnicode(), and System.Globalization.IdnMapping.NlsGetUnicodeCore().