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

◆ Encode5987()

static string System.Net.Http.Headers.HeaderUtilities.Encode5987 ( string input)
inlinestaticpackage

Definition at line 53 of file HeaderUtilities.cs.

54 {
56 byte[] array = ArrayPool<byte>.Shared.Rent(Encoding.UTF8.GetMaxByteCount(input.Length));
57 int bytes = Encoding.UTF8.GetBytes(input, 0, input.Length, array, 0);
58 stringBuilder.Append("utf-8''");
59 for (int i = 0; i < bytes; i++)
60 {
61 byte b = array[i];
62 if (b > 127)
63 {
65 }
66 else if (!HttpRuleParser.IsTokenChar((char)b) || b == 42 || b == 39 || b == 37)
67 {
69 }
70 else
71 {
72 stringBuilder.Append((char)b);
73 }
74 }
75 Array.Clear(array, 0, bytes);
76 ArrayPool<byte>.Shared.Return(array);
78 }
static void AddHexEscaped(byte c, StringBuilder destination)
static Encoding UTF8
Definition Encoding.cs:526
static string GetStringAndRelease(StringBuilder sb)
static StringBuilder Acquire(int capacity=16)

References System.Text.StringBuilderCache.Acquire(), System.Net.Http.Headers.HeaderUtilities.AddHexEscaped(), System.array, System.bytes, System.Array.Clear(), System.Text.StringBuilderCache.GetStringAndRelease(), System.input, System.Net.Http.HttpRuleParser.IsTokenChar(), and System.Text.Encoding.UTF8.

Referenced by System.Net.Http.AuthenticationHelper.GetDigestTokenForCredential(), and System.Net.Http.Headers.ContentDispositionHeaderValue.SetName().