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

◆ FindFirstCharacterToEncodeUtf8()

virtual int System.Text.Encodings.Web.TextEncoder.FindFirstCharacterToEncodeUtf8 ( ReadOnlySpan< byte > utf8Text)
inlinevirtualinherited

Reimplemented in System.Text.Encodings.Web.DefaultHtmlEncoder, System.Text.Encodings.Web.DefaultJavaScriptEncoder, and System.Text.Encodings.Web.DefaultUrlEncoder.

Definition at line 347 of file TextEncoder.cs.

348 {
349 int length = utf8Text.Length;
350 Rune result;
351 int bytesConsumed;
352 while (!utf8Text.IsEmpty && Rune.DecodeFromUtf8(utf8Text, out result, out bytesConsumed) == OperationStatus.Done && !WillEncode(result.Value))
353 {
354 utf8Text = utf8Text.Slice(bytesConsumed);
355 }
356 if (!utf8Text.IsEmpty)
357 {
358 return length - utf8Text.Length;
359 }
360 return -1;
361 }
bool WillEncode(int unicodeScalar)
ReadOnlySpan< T > Slice(int start)

References System.Text.Rune.DecodeFromUtf8(), System.ReadOnlySpan< T >.IsEmpty, System.length, System.ReadOnlySpan< T >.Length, System.ReadOnlySpan< T >.Slice(), System.Text.Rune.Value, and System.Text.Encodings.Web.TextEncoder.WillEncode().

Referenced by System.Text.Encodings.Web.TextEncoder.EncodeUtf8().