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

◆ GetChars() [3/3]

static long System.Text.EncodingExtensions.GetChars ( this Encoding encoding,
ReadOnlySpan< byte > bytes,
IBufferWriter< char > writer )
inlinestatic

Definition at line 120 of file EncodingExtensions.cs.

121 {
122 if (encoding == null)
123 {
124 throw new ArgumentNullException("encoding");
125 }
126 if (writer == null)
127 {
128 throw new ArgumentNullException("writer");
129 }
130 if (bytes.Length <= 1048576)
131 {
132 int charCount = encoding.GetCharCount(bytes);
133 Span<char> span = writer.GetSpan(charCount);
134 int chars = encoding.GetChars(bytes, span);
135 writer.Advance(chars);
136 return chars;
137 }
138 encoding.GetDecoder().Convert(bytes, writer, flush: true, out var charsUsed, out var _);
139 return charsUsed;
140 }

References System.bytes, System.charCount, System.chars, System.Text.Encoding.GetCharCount(), System.Text.Encoding.GetChars(), System.Text.Encoding.GetDecoder(), and System.writer.