35        utf16ScratchBuffer = utf16ScratchBuffer.
Slice(0, charsWritten);
 
   37        while (!utf16ScratchBuffer.
IsEmpty)
 
   48                    utf8Destination[num++] = (byte)num2;
 
   54            while ((num2 >>= 8) != 0);
 
   55            utf16ScratchBuffer = utf16ScratchBuffer.
Slice(charsConsumed);
 
 
   85        Span<char> initialBuffer = stackalloc 
char[1024];
 
   92            if (charsWritten == 0 || (uint)charsWritten > (uint)
destination.Length)
 
   97            valueStringBuilder.Length -= destination.Length - charsWritten;
 
  100        string result = 
string.Concat(
value.Slice(0, indexOfFirstCharToEncode), valueStringBuilder.
AsSpan());
 
 
  124            num = characterCount;
 
  127        if (num != characterCount)
 
 
  147            num = characterCount;
 
  150        if (num != characterCount)
 
 
  161            utf8Text = utf8Source.
Slice(0, utf8Destination.
Length);
 
  168        utf8Source.
Slice(0, num).CopyTo(utf8Destination);
 
  169        if (num == utf8Source.
Length)
 
  171            bytesConsumed = utf8Source.
Length;
 
  172            bytesWritten = utf8Source.
Length;
 
  178        bytesConsumed = num + bytesConsumed2;
 
  179        bytesWritten = num + bytesWritten2;
 
 
  187        Span<char> utf16ScratchBuffer = stackalloc 
char[24];
 
  197                if (operationStatus != 0)
 
  209                    while ((uint)num2 < (uint)utf8Destination.
Length)
 
  211                        utf8Destination[num2++] = (byte)num;
 
  212                        if ((num >>= 8) != 0)
 
  222                    utf8Source = utf8Source.
Slice(bytesConsumed2);
 
  223                    utf8Destination = utf8Destination.Slice(bytesWritten2);
 
  231            utf8Source = utf8Source.
Slice(bytesConsumed2);
 
  232            utf8Destination = utf8Destination.
Slice(num2);
 
 
  258            charsConsumed = 
source.Length;
 
  259            charsWritten = 
source.Length;
 
  265        charsConsumed = num + charsConsumed2;
 
  266        charsWritten = num + charsWritten2;
 
 
  282                if (operationStatus != 0)
 
 
  327            if (charsWritten == 0 || (uint)charsWritten > (uint)
destination.Length)
 
  334        while (!
value.IsEmpty);
 
 
  354            utf8Text = utf8Text.
Slice(bytesConsumed);
 
 
  365        if (startIndex < 0 || startIndex > actualInputLength)
 
  369        if (characterCount < 0 || characterCount > actualInputLength - 
startIndex)
 
 
 
static ArrayPool< T > Shared
 
virtual void Write(char value)
 
static byte Max(byte val1, byte val2)
 
static string TextEncoderDoesNotImplementMaxOutputCharsPerInputChar
 
string EncodeToNewString(ReadOnlySpan< char > value, int indexOfFirstCharToEncode)
 
void EncodeCore(TextWriter output, ReadOnlySpan< char > value)
 
int MaxOutputCharactersPerInputCharacter
 
virtual OperationStatus EncodeUtf8Core(ReadOnlySpan< byte > utf8Source, Span< byte > utf8Destination, out int bytesConsumed, out int bytesWritten, bool isFinalBlock)
 
virtual unsafe int FindFirstCharacterToEncode(ReadOnlySpan< char > text)
 
bool TryEncodeUnicodeScalarUtf8(uint unicodeScalar, Span< char > utf16ScratchBuffer, Span< byte > utf8Destination, out int bytesWritten)
 
bool WillEncode(int unicodeScalar)
 
virtual OperationStatus EncodeUtf8(ReadOnlySpan< byte > utf8Source, Span< byte > utf8Destination, out int bytesConsumed, out int bytesWritten, bool isFinalBlock=true)
 
virtual void Encode(TextWriter output, string value, int startIndex, int characterCount)
 
virtual OperationStatus EncodeCore(ReadOnlySpan< char > source, Span< char > destination, out int charsConsumed, out int charsWritten, bool isFinalBlock)
 
virtual OperationStatus Encode(ReadOnlySpan< char > source, Span< char > destination, out int charsConsumed, out int charsWritten, bool isFinalBlock=true)
 
virtual int FindFirstCharacterToEncodeUtf8(ReadOnlySpan< byte > utf8Text)
 
virtual string Encode(string value)
 
unsafe bool TryEncodeUnicodeScalar(uint unicodeScalar, Span< char > buffer, out int charsWritten)
 
virtual void Encode(TextWriter output, char[] value, int startIndex, int characterCount)
 
static void ThrowArgumentException_MaxOutputCharsPerInputChar()
 
unsafe int FindFirstCharacterToEncode(char *text, int textLength)
 
static void ValidateRanges(int startIndex, int characterCount, int actualInputLength)
 
void Encode(TextWriter output, string value)
 
unsafe bool TryEncodeUnicodeScalar(int unicodeScalar, char *buffer, int bufferLength, out int numberOfCharactersWritten)
 
static void ThrowArgumentNullException(ExceptionArgument argument)
 
static int GetUtf8RepresentationForScalarValue(uint scalar)
 
ReadOnlySpan< T > Slice(int start)
 
Span< T > Slice(int start)
 
static OperationStatus DecodeFromUtf16(ReadOnlySpan< char > source, out Rune result, out int charsConsumed)
 
static OperationStatus DecodeFromUtf8(ReadOnlySpan< byte > source, out Rune result, out int bytesConsumed)
 
bool TryEncodeToUtf16(Span< char > destination, out int charsWritten)
 
ReadOnlySpan< char > AsSpan(bool terminate)
 
Span< char > AppendSpan(int length)