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

◆ GetCharCountWithFallback() [2/3]

unsafe int System.Text.Encoding.GetCharCountWithFallback ( byte * pOriginalBytes,
int originalByteCount,
int bytesConsumedSoFar,
DecoderNLS decoder )
inlineprivateinherited

Definition at line 1353 of file Encoding.cs.

1354 {
1356 int num = 0;
1357 int bytesConsumed;
1358 if (decoder.HasLeftoverData)
1359 {
1360 num = decoder.DrainLeftoverDataForGetCharCount(readOnlySpan, out bytesConsumed);
1362 }
1363 num += GetCharCountFast((byte*)Unsafe.AsPointer(ref MemoryMarshal.GetReference(readOnlySpan)), readOnlySpan.Length, decoder.Fallback, out bytesConsumed);
1364 if (num < 0)
1365 {
1367 }
1369 if (!readOnlySpan.IsEmpty)
1370 {
1372 if (num < 0)
1373 {
1375 }
1376 }
1377 return num;
1378 }
static void ThrowConversionOverflow()
Definition Encoding.cs:1084
unsafe int GetCharCountWithFallback(byte *pBytesOriginal, int originalByteCount, int bytesConsumedSoFar)
Definition Encoding.cs:1348
virtual unsafe int GetCharCountFast(byte *pBytes, int bytesLength, DecoderFallback fallback, out int bytesConsumed)
Definition Encoding.cs:1342

References System.Runtime.Serialization.Dictionary, System.Text.DecoderNLS.DrainLeftoverDataForGetCharCount(), System.Text.DecoderNLS.Fallback, System.Text.Encoding.GetCharCountFast(), System.Text.Encoding.GetCharCountWithFallback(), System.Text.DecoderNLS.HasLeftoverData, and System.Text.Encoding.ThrowConversionOverflow().