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

◆ GetByteCountFast()

unsafe override int System.Text.UTF8Encoding.GetByteCountFast ( char * pChars,
int charsLength,
EncoderFallback fallback,
out int charsConsumed )
inlinesealedprotectedvirtualinherited

Reimplemented from System.Text.Encoding.

Definition at line 211 of file UTF8Encoding.cs.

212 {
213 long utf8CodeUnitCountAdjustment;
214 int scalarCountAdjustment;
215 char* pointerToFirstInvalidChar = Utf16Utility.GetPointerToFirstInvalidChar(pChars, charsLength, out utf8CodeUnitCountAdjustment, out scalarCountAdjustment);
216 long num = (charsConsumed = (int)(pointerToFirstInvalidChar - pChars)) + utf8CodeUnitCountAdjustment;
217 if ((ulong)num > 2147483647uL)
218 {
219 Encoding.ThrowConversionOverflow();
220 }
221 return (int)num;
222 }
static unsafe char * GetPointerToFirstInvalidChar(char *pInputBuffer, int inputLength, out long utf8CodeUnitCountAdjustment, out int scalarCountAdjustment)

References System.Text.Unicode.Utf16Utility.GetPointerToFirstInvalidChar(), and System.Text.Encoding.ThrowConversionOverflow().

Referenced by System.Text.UTF8Encoding.GetByteCountCommon().