Skip to content

React to "Shrink StringValues" #8864

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Apr 5, 2019
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion src/Servers/Kestrel/Core/src/BadHttpRequestException.cs
Original file line number Diff line number Diff line change
Expand Up @@ -128,7 +128,7 @@ internal static void Throw(RequestRejectionReason reason, string detail)
}

[StackTraceHidden]
internal static void Throw(RequestRejectionReason reason, in StringValues detail)
internal static void Throw(RequestRejectionReason reason, StringValues detail)
{
throw GetException(reason, detail.ToString());
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -145,7 +145,7 @@ public static MessageBody For(
// status code and then close the connection.
if (transferCoding != TransferCoding.Chunked)
{
BadHttpRequestException.Throw(RequestRejectionReason.FinalTransferCodingNotChunked, in transferEncoding);
BadHttpRequestException.Throw(RequestRejectionReason.FinalTransferCodingNotChunked, transferEncoding);
}

// TODO may push more into the wrapper rather than just calling into the message body
Expand Down
20 changes: 10 additions & 10 deletions src/Servers/Kestrel/Core/src/Internal/Http/HttpHeaders.Generated.cs
Original file line number Diff line number Diff line change
Expand Up @@ -1258,7 +1258,7 @@ protected override bool TryGetValueFast(string key, out StringValues value)
return MaybeUnknown?.TryGetValue(key, out value) ?? false;
}

protected override void SetValueFast(string key, in StringValues value)
protected override void SetValueFast(string key, StringValues value)
{
switch (key.Length)
{
Expand Down Expand Up @@ -1606,7 +1606,7 @@ protected override void SetValueFast(string key, in StringValues value)
SetValueUnknown(key, value);
}

protected override bool AddValueFast(string key, in StringValues value)
protected override bool AddValueFast(string key, StringValues value)
{
switch (key.Length)
{
Expand Down Expand Up @@ -5337,25 +5337,25 @@ public StringValues HeaderContentLength
}
}

public void SetRawConnection(in StringValues value, byte[] raw)
public void SetRawConnection(StringValues value, byte[] raw)
{
_bits |= 0x2L;
_headers._Connection = value;
_headers._rawConnection = raw;
}
public void SetRawDate(in StringValues value, byte[] raw)
public void SetRawDate(StringValues value, byte[] raw)
{
_bits |= 0x4L;
_headers._Date = value;
_headers._rawDate = raw;
}
public void SetRawTransferEncoding(in StringValues value, byte[] raw)
public void SetRawTransferEncoding(StringValues value, byte[] raw)
{
_bits |= 0x40L;
_headers._TransferEncoding = value;
_headers._rawTransferEncoding = raw;
}
public void SetRawServer(in StringValues value, byte[] raw)
public void SetRawServer(StringValues value, byte[] raw)
{
_bits |= 0x2000000L;
_headers._Server = value;
Expand Down Expand Up @@ -5776,7 +5776,7 @@ protected override bool TryGetValueFast(string key, out StringValues value)
return MaybeUnknown?.TryGetValue(key, out value) ?? false;
}

protected override void SetValueFast(string key, in StringValues value)
protected override void SetValueFast(string key, StringValues value)
{
ValidateHeaderValueCharacters(value);
switch (key.Length)
Expand Down Expand Up @@ -6081,7 +6081,7 @@ protected override void SetValueFast(string key, in StringValues value)
SetValueUnknown(key, value);
}

protected override bool AddValueFast(string key, in StringValues value)
protected override bool AddValueFast(string key, StringValues value)
{
ValidateHeaderValueCharacters(value);
switch (key.Length)
Expand Down Expand Up @@ -8589,7 +8589,7 @@ protected override bool TryGetValueFast(string key, out StringValues value)
return MaybeUnknown?.TryGetValue(key, out value) ?? false;
}

protected override void SetValueFast(string key, in StringValues value)
protected override void SetValueFast(string key, StringValues value)
{
ValidateHeaderValueCharacters(value);
switch (key.Length)
Expand All @@ -8609,7 +8609,7 @@ protected override void SetValueFast(string key, in StringValues value)
SetValueUnknown(key, value);
}

protected override bool AddValueFast(string key, in StringValues value)
protected override bool AddValueFast(string key, StringValues value)
{
ValidateHeaderValueCharacters(value);
switch (key.Length)
Expand Down
12 changes: 6 additions & 6 deletions src/Servers/Kestrel/Core/src/Internal/Http/HttpHeaders.cs
Original file line number Diff line number Diff line change
Expand Up @@ -121,7 +121,7 @@ public void Reset()
}

[MethodImpl(MethodImplOptions.NoInlining)]
protected static StringValues AppendValue(in StringValues existing, string append)
protected static StringValues AppendValue(StringValues existing, string append)
{
return StringValues.Concat(existing, append);
}
Expand Down Expand Up @@ -157,10 +157,10 @@ protected virtual int GetCountFast()
protected virtual bool TryGetValueFast(string key, out StringValues value)
{ throw new NotImplementedException(); }

protected virtual void SetValueFast(string key, in StringValues value)
protected virtual void SetValueFast(string key, StringValues value)
{ throw new NotImplementedException(); }

protected virtual bool AddValueFast(string key, in StringValues value)
protected virtual bool AddValueFast(string key, StringValues value)
{ throw new NotImplementedException(); }

protected virtual bool RemoveFast(string key)
Expand Down Expand Up @@ -259,7 +259,7 @@ bool IDictionary<string, StringValues>.TryGetValue(string key, out StringValues
return TryGetValueFast(key, out value);
}

public static void ValidateHeaderValueCharacters(in StringValues headerValues)
public static void ValidateHeaderValueCharacters(StringValues headerValues)
{
var count = headerValues.Count;
for (var i = 0; i < count; i++)
Expand Down Expand Up @@ -290,7 +290,7 @@ public static void ValidateHeaderNameCharacters(string headerCharacters)
}
}

public static unsafe ConnectionOptions ParseConnection(in StringValues connection)
public static unsafe ConnectionOptions ParseConnection(StringValues connection)
{
var connectionOptions = ConnectionOptions.None;

Expand Down Expand Up @@ -392,7 +392,7 @@ public static unsafe ConnectionOptions ParseConnection(in StringValues connectio
return connectionOptions;
}

public static unsafe TransferCoding GetFinalTransferCoding(in StringValues transferEncoding)
public static unsafe TransferCoding GetFinalTransferCoding(StringValues transferEncoding)
{
var transferEncodingOptions = TransferCoding.None;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ private static long ParseContentLength(string value)
}

[MethodImpl(MethodImplOptions.NoInlining)]
private void SetValueUnknown(string key, in StringValues value)
private void SetValueUnknown(string key, StringValues value)
{
Unknown[key] = value;
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -64,7 +64,7 @@ private static void ThrowInvalidContentLengthException(string value)
}

[MethodImpl(MethodImplOptions.NoInlining)]
private void SetValueUnknown(string key, in StringValues value)
private void SetValueUnknown(string key, StringValues value)
{
ValidateHeaderNameCharacters(key);
Unknown[key] = value;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ protected override IEnumerator<KeyValuePair<string, StringValues>> GetEnumerator
}

[MethodImpl(MethodImplOptions.NoInlining)]
private void SetValueUnknown(string key, in StringValues value)
private void SetValueUnknown(string key, StringValues value)
{
ValidateHeaderNameCharacters(key);
Unknown[key] = value;
Expand Down
6 changes: 3 additions & 3 deletions src/Servers/Kestrel/tools/CodeGenerator/KnownHeaders.cs
Original file line number Diff line number Diff line change
Expand Up @@ -385,7 +385,7 @@ public StringValues Header{header.Identifier}
}}")}
}}")}
{Each(loop.Headers.Where(header => header.EnhancedSetter), header => $@"
public void SetRaw{header.Identifier}(in StringValues value, byte[] raw)
public void SetRaw{header.Identifier}(StringValues value, byte[] raw)
{{
{header.SetBit()};
_headers._{header.Identifier} = value;
Expand Down Expand Up @@ -425,7 +425,7 @@ protected override bool TryGetValueFast(string key, out StringValues value)
return MaybeUnknown?.TryGetValue(key, out value) ?? false;
}}

protected override void SetValueFast(string key, in StringValues value)
protected override void SetValueFast(string key, StringValues value)
{{{(loop.ClassName != "HttpRequestHeaders" ? @"
ValidateHeaderValueCharacters(value);" : "")}
switch (key.Length)
Expand All @@ -447,7 +447,7 @@ protected override void SetValueFast(string key, in StringValues value)
SetValueUnknown(key, value);
}}

protected override bool AddValueFast(string key, in StringValues value)
protected override bool AddValueFast(string key, StringValues value)
{{{(loop.ClassName != "HttpRequestHeaders" ? @"
ValidateHeaderValueCharacters(value);" : "")}
switch (key.Length)
Expand Down