diff --git a/assemblySize.include.md b/assemblySize.include.md index f4821472..0fc84a8a 100644 --- a/assemblySize.include.md +++ b/assemblySize.include.md @@ -41,8 +41,8 @@ | netcoreapp2.0 | 9.0KB | 560.8KB | +551.8KB | +16.6KB | +8.2KB | +14.4KB | +19.4KB | | netcoreapp2.1 | 9.0KB | 523.9KB | +514.9KB | +15.1KB | +7.2KB | +12.9KB | +18.4KB | | netcoreapp2.2 | 9.0KB | 523.9KB | +514.9KB | +15.1KB | +7.2KB | +12.9KB | +18.4KB | -| netcoreapp3.0 | 9.5KB | 502.0KB | +492.5KB | +15.6KB | +8.2KB | +14.4KB | +19.4KB | -| netcoreapp3.1 | 9.5KB | 502.0KB | +492.5KB | +15.6KB | +8.2KB | +14.4KB | +19.4KB | +| netcoreapp3.0 | 9.5KB | 501.9KB | +492.4KB | +15.6KB | +8.2KB | +14.4KB | +19.4KB | +| netcoreapp3.1 | 9.5KB | 501.9KB | +492.4KB | +15.6KB | +8.2KB | +14.4KB | +19.4KB | | net5.0 | 9.5KB | 449.4KB | +439.9KB | +16.1KB | +8.2KB | +13.9KB | +18.9KB | | net6.0 | 10.0KB | 367.6KB | +357.6KB | +17.1KB | +8.2KB | +1.1KB | +3.7KB | | net7.0 | 10.0KB | 320.2KB | +310.2KB | +17.0KB | +6.9KB | +1.1KB | +4.2KB | diff --git a/readme.md b/readme.md index 645a9285..192638d7 100644 --- a/readme.md +++ b/readme.md @@ -140,8 +140,8 @@ Only [SDK-style projects](https://learn.microsoft.com/en-us/dotnet/core/project- | netcoreapp2.0 | 9.0KB | 560.8KB | +551.8KB | +16.6KB | +8.2KB | +14.4KB | +19.4KB | | netcoreapp2.1 | 9.0KB | 523.9KB | +514.9KB | +15.1KB | +7.2KB | +12.9KB | +18.4KB | | netcoreapp2.2 | 9.0KB | 523.9KB | +514.9KB | +15.1KB | +7.2KB | +12.9KB | +18.4KB | -| netcoreapp3.0 | 9.5KB | 502.0KB | +492.5KB | +15.6KB | +8.2KB | +14.4KB | +19.4KB | -| netcoreapp3.1 | 9.5KB | 502.0KB | +492.5KB | +15.6KB | +8.2KB | +14.4KB | +19.4KB | +| netcoreapp3.0 | 9.5KB | 501.9KB | +492.4KB | +15.6KB | +8.2KB | +14.4KB | +19.4KB | +| netcoreapp3.1 | 9.5KB | 501.9KB | +492.4KB | +15.6KB | +8.2KB | +14.4KB | +19.4KB | | net5.0 | 9.5KB | 449.4KB | +439.9KB | +16.1KB | +8.2KB | +13.9KB | +18.9KB | | net6.0 | 10.0KB | 367.6KB | +357.6KB | +17.1KB | +8.2KB | +1.1KB | +3.7KB | | net7.0 | 10.0KB | 320.2KB | +310.2KB | +17.0KB | +6.9KB | +1.1KB | +4.2KB | diff --git a/src/Polyfill/Base64Url.cs b/src/Polyfill/Base64Url.cs index 039c58cf..179a8528 100644 --- a/src/Polyfill/Base64Url.cs +++ b/src/Polyfill/Base64Url.cs @@ -369,7 +369,7 @@ public static int DecodeFromUtf8(ReadOnlySpan source, Span destinati public static OperationStatus DecodeFromUtf8(ReadOnlySpan source, Span destination, out int bytesConsumed, out int bytesWritten, bool isFinalBlock = true) { var chars = BytesToChars(source); - var status = DecodeFromChars(chars, destination, out bytesWritten, out var charsConsumed, isFinalBlock); + var status = DecodeFromChars(chars, destination, out var charsConsumed, out bytesWritten, isFinalBlock); bytesConsumed = charsConsumed; return status; } diff --git a/src/Split/net461/Base64Url.cs b/src/Split/net461/Base64Url.cs index fb22774c..817dcd19 100644 --- a/src/Split/net461/Base64Url.cs +++ b/src/Split/net461/Base64Url.cs @@ -282,7 +282,7 @@ public static int DecodeFromUtf8(ReadOnlySpan source, Span destinati public static OperationStatus DecodeFromUtf8(ReadOnlySpan source, Span destination, out int bytesConsumed, out int bytesWritten, bool isFinalBlock = true) { var chars = BytesToChars(source); - var status = DecodeFromChars(chars, destination, out bytesWritten, out var charsConsumed, isFinalBlock); + var status = DecodeFromChars(chars, destination, out var charsConsumed, out bytesWritten, isFinalBlock); bytesConsumed = charsConsumed; return status; } diff --git a/src/Split/net462/Base64Url.cs b/src/Split/net462/Base64Url.cs index fb22774c..817dcd19 100644 --- a/src/Split/net462/Base64Url.cs +++ b/src/Split/net462/Base64Url.cs @@ -282,7 +282,7 @@ public static int DecodeFromUtf8(ReadOnlySpan source, Span destinati public static OperationStatus DecodeFromUtf8(ReadOnlySpan source, Span destination, out int bytesConsumed, out int bytesWritten, bool isFinalBlock = true) { var chars = BytesToChars(source); - var status = DecodeFromChars(chars, destination, out bytesWritten, out var charsConsumed, isFinalBlock); + var status = DecodeFromChars(chars, destination, out var charsConsumed, out bytesWritten, isFinalBlock); bytesConsumed = charsConsumed; return status; } diff --git a/src/Split/net47/Base64Url.cs b/src/Split/net47/Base64Url.cs index fb22774c..817dcd19 100644 --- a/src/Split/net47/Base64Url.cs +++ b/src/Split/net47/Base64Url.cs @@ -282,7 +282,7 @@ public static int DecodeFromUtf8(ReadOnlySpan source, Span destinati public static OperationStatus DecodeFromUtf8(ReadOnlySpan source, Span destination, out int bytesConsumed, out int bytesWritten, bool isFinalBlock = true) { var chars = BytesToChars(source); - var status = DecodeFromChars(chars, destination, out bytesWritten, out var charsConsumed, isFinalBlock); + var status = DecodeFromChars(chars, destination, out var charsConsumed, out bytesWritten, isFinalBlock); bytesConsumed = charsConsumed; return status; } diff --git a/src/Split/net471/Base64Url.cs b/src/Split/net471/Base64Url.cs index fb22774c..817dcd19 100644 --- a/src/Split/net471/Base64Url.cs +++ b/src/Split/net471/Base64Url.cs @@ -282,7 +282,7 @@ public static int DecodeFromUtf8(ReadOnlySpan source, Span destinati public static OperationStatus DecodeFromUtf8(ReadOnlySpan source, Span destination, out int bytesConsumed, out int bytesWritten, bool isFinalBlock = true) { var chars = BytesToChars(source); - var status = DecodeFromChars(chars, destination, out bytesWritten, out var charsConsumed, isFinalBlock); + var status = DecodeFromChars(chars, destination, out var charsConsumed, out bytesWritten, isFinalBlock); bytesConsumed = charsConsumed; return status; } diff --git a/src/Split/net472/Base64Url.cs b/src/Split/net472/Base64Url.cs index fb22774c..817dcd19 100644 --- a/src/Split/net472/Base64Url.cs +++ b/src/Split/net472/Base64Url.cs @@ -282,7 +282,7 @@ public static int DecodeFromUtf8(ReadOnlySpan source, Span destinati public static OperationStatus DecodeFromUtf8(ReadOnlySpan source, Span destination, out int bytesConsumed, out int bytesWritten, bool isFinalBlock = true) { var chars = BytesToChars(source); - var status = DecodeFromChars(chars, destination, out bytesWritten, out var charsConsumed, isFinalBlock); + var status = DecodeFromChars(chars, destination, out var charsConsumed, out bytesWritten, isFinalBlock); bytesConsumed = charsConsumed; return status; } diff --git a/src/Split/net48/Base64Url.cs b/src/Split/net48/Base64Url.cs index fb22774c..817dcd19 100644 --- a/src/Split/net48/Base64Url.cs +++ b/src/Split/net48/Base64Url.cs @@ -282,7 +282,7 @@ public static int DecodeFromUtf8(ReadOnlySpan source, Span destinati public static OperationStatus DecodeFromUtf8(ReadOnlySpan source, Span destination, out int bytesConsumed, out int bytesWritten, bool isFinalBlock = true) { var chars = BytesToChars(source); - var status = DecodeFromChars(chars, destination, out bytesWritten, out var charsConsumed, isFinalBlock); + var status = DecodeFromChars(chars, destination, out var charsConsumed, out bytesWritten, isFinalBlock); bytesConsumed = charsConsumed; return status; } diff --git a/src/Split/net481/Base64Url.cs b/src/Split/net481/Base64Url.cs index fb22774c..817dcd19 100644 --- a/src/Split/net481/Base64Url.cs +++ b/src/Split/net481/Base64Url.cs @@ -282,7 +282,7 @@ public static int DecodeFromUtf8(ReadOnlySpan source, Span destinati public static OperationStatus DecodeFromUtf8(ReadOnlySpan source, Span destination, out int bytesConsumed, out int bytesWritten, bool isFinalBlock = true) { var chars = BytesToChars(source); - var status = DecodeFromChars(chars, destination, out bytesWritten, out var charsConsumed, isFinalBlock); + var status = DecodeFromChars(chars, destination, out var charsConsumed, out bytesWritten, isFinalBlock); bytesConsumed = charsConsumed; return status; } diff --git a/src/Split/net5.0/Base64Url.cs b/src/Split/net5.0/Base64Url.cs index fb22774c..817dcd19 100644 --- a/src/Split/net5.0/Base64Url.cs +++ b/src/Split/net5.0/Base64Url.cs @@ -282,7 +282,7 @@ public static int DecodeFromUtf8(ReadOnlySpan source, Span destinati public static OperationStatus DecodeFromUtf8(ReadOnlySpan source, Span destination, out int bytesConsumed, out int bytesWritten, bool isFinalBlock = true) { var chars = BytesToChars(source); - var status = DecodeFromChars(chars, destination, out bytesWritten, out var charsConsumed, isFinalBlock); + var status = DecodeFromChars(chars, destination, out var charsConsumed, out bytesWritten, isFinalBlock); bytesConsumed = charsConsumed; return status; } diff --git a/src/Split/net6.0/Base64Url.cs b/src/Split/net6.0/Base64Url.cs index fb22774c..817dcd19 100644 --- a/src/Split/net6.0/Base64Url.cs +++ b/src/Split/net6.0/Base64Url.cs @@ -282,7 +282,7 @@ public static int DecodeFromUtf8(ReadOnlySpan source, Span destinati public static OperationStatus DecodeFromUtf8(ReadOnlySpan source, Span destination, out int bytesConsumed, out int bytesWritten, bool isFinalBlock = true) { var chars = BytesToChars(source); - var status = DecodeFromChars(chars, destination, out bytesWritten, out var charsConsumed, isFinalBlock); + var status = DecodeFromChars(chars, destination, out var charsConsumed, out bytesWritten, isFinalBlock); bytesConsumed = charsConsumed; return status; } diff --git a/src/Split/net7.0/Base64Url.cs b/src/Split/net7.0/Base64Url.cs index fb22774c..817dcd19 100644 --- a/src/Split/net7.0/Base64Url.cs +++ b/src/Split/net7.0/Base64Url.cs @@ -282,7 +282,7 @@ public static int DecodeFromUtf8(ReadOnlySpan source, Span destinati public static OperationStatus DecodeFromUtf8(ReadOnlySpan source, Span destination, out int bytesConsumed, out int bytesWritten, bool isFinalBlock = true) { var chars = BytesToChars(source); - var status = DecodeFromChars(chars, destination, out bytesWritten, out var charsConsumed, isFinalBlock); + var status = DecodeFromChars(chars, destination, out var charsConsumed, out bytesWritten, isFinalBlock); bytesConsumed = charsConsumed; return status; } diff --git a/src/Split/net8.0/Base64Url.cs b/src/Split/net8.0/Base64Url.cs index fb22774c..817dcd19 100644 --- a/src/Split/net8.0/Base64Url.cs +++ b/src/Split/net8.0/Base64Url.cs @@ -282,7 +282,7 @@ public static int DecodeFromUtf8(ReadOnlySpan source, Span destinati public static OperationStatus DecodeFromUtf8(ReadOnlySpan source, Span destination, out int bytesConsumed, out int bytesWritten, bool isFinalBlock = true) { var chars = BytesToChars(source); - var status = DecodeFromChars(chars, destination, out bytesWritten, out var charsConsumed, isFinalBlock); + var status = DecodeFromChars(chars, destination, out var charsConsumed, out bytesWritten, isFinalBlock); bytesConsumed = charsConsumed; return status; } diff --git a/src/Split/netcoreapp2.0/Base64Url.cs b/src/Split/netcoreapp2.0/Base64Url.cs index fb22774c..817dcd19 100644 --- a/src/Split/netcoreapp2.0/Base64Url.cs +++ b/src/Split/netcoreapp2.0/Base64Url.cs @@ -282,7 +282,7 @@ public static int DecodeFromUtf8(ReadOnlySpan source, Span destinati public static OperationStatus DecodeFromUtf8(ReadOnlySpan source, Span destination, out int bytesConsumed, out int bytesWritten, bool isFinalBlock = true) { var chars = BytesToChars(source); - var status = DecodeFromChars(chars, destination, out bytesWritten, out var charsConsumed, isFinalBlock); + var status = DecodeFromChars(chars, destination, out var charsConsumed, out bytesWritten, isFinalBlock); bytesConsumed = charsConsumed; return status; } diff --git a/src/Split/netcoreapp2.1/Base64Url.cs b/src/Split/netcoreapp2.1/Base64Url.cs index fb22774c..817dcd19 100644 --- a/src/Split/netcoreapp2.1/Base64Url.cs +++ b/src/Split/netcoreapp2.1/Base64Url.cs @@ -282,7 +282,7 @@ public static int DecodeFromUtf8(ReadOnlySpan source, Span destinati public static OperationStatus DecodeFromUtf8(ReadOnlySpan source, Span destination, out int bytesConsumed, out int bytesWritten, bool isFinalBlock = true) { var chars = BytesToChars(source); - var status = DecodeFromChars(chars, destination, out bytesWritten, out var charsConsumed, isFinalBlock); + var status = DecodeFromChars(chars, destination, out var charsConsumed, out bytesWritten, isFinalBlock); bytesConsumed = charsConsumed; return status; } diff --git a/src/Split/netcoreapp2.2/Base64Url.cs b/src/Split/netcoreapp2.2/Base64Url.cs index fb22774c..817dcd19 100644 --- a/src/Split/netcoreapp2.2/Base64Url.cs +++ b/src/Split/netcoreapp2.2/Base64Url.cs @@ -282,7 +282,7 @@ public static int DecodeFromUtf8(ReadOnlySpan source, Span destinati public static OperationStatus DecodeFromUtf8(ReadOnlySpan source, Span destination, out int bytesConsumed, out int bytesWritten, bool isFinalBlock = true) { var chars = BytesToChars(source); - var status = DecodeFromChars(chars, destination, out bytesWritten, out var charsConsumed, isFinalBlock); + var status = DecodeFromChars(chars, destination, out var charsConsumed, out bytesWritten, isFinalBlock); bytesConsumed = charsConsumed; return status; } diff --git a/src/Split/netcoreapp3.0/Base64Url.cs b/src/Split/netcoreapp3.0/Base64Url.cs index fb22774c..817dcd19 100644 --- a/src/Split/netcoreapp3.0/Base64Url.cs +++ b/src/Split/netcoreapp3.0/Base64Url.cs @@ -282,7 +282,7 @@ public static int DecodeFromUtf8(ReadOnlySpan source, Span destinati public static OperationStatus DecodeFromUtf8(ReadOnlySpan source, Span destination, out int bytesConsumed, out int bytesWritten, bool isFinalBlock = true) { var chars = BytesToChars(source); - var status = DecodeFromChars(chars, destination, out bytesWritten, out var charsConsumed, isFinalBlock); + var status = DecodeFromChars(chars, destination, out var charsConsumed, out bytesWritten, isFinalBlock); bytesConsumed = charsConsumed; return status; } diff --git a/src/Split/netcoreapp3.1/Base64Url.cs b/src/Split/netcoreapp3.1/Base64Url.cs index fb22774c..817dcd19 100644 --- a/src/Split/netcoreapp3.1/Base64Url.cs +++ b/src/Split/netcoreapp3.1/Base64Url.cs @@ -282,7 +282,7 @@ public static int DecodeFromUtf8(ReadOnlySpan source, Span destinati public static OperationStatus DecodeFromUtf8(ReadOnlySpan source, Span destination, out int bytesConsumed, out int bytesWritten, bool isFinalBlock = true) { var chars = BytesToChars(source); - var status = DecodeFromChars(chars, destination, out bytesWritten, out var charsConsumed, isFinalBlock); + var status = DecodeFromChars(chars, destination, out var charsConsumed, out bytesWritten, isFinalBlock); bytesConsumed = charsConsumed; return status; } diff --git a/src/Split/netstandard2.0/Base64Url.cs b/src/Split/netstandard2.0/Base64Url.cs index fb22774c..817dcd19 100644 --- a/src/Split/netstandard2.0/Base64Url.cs +++ b/src/Split/netstandard2.0/Base64Url.cs @@ -282,7 +282,7 @@ public static int DecodeFromUtf8(ReadOnlySpan source, Span destinati public static OperationStatus DecodeFromUtf8(ReadOnlySpan source, Span destination, out int bytesConsumed, out int bytesWritten, bool isFinalBlock = true) { var chars = BytesToChars(source); - var status = DecodeFromChars(chars, destination, out bytesWritten, out var charsConsumed, isFinalBlock); + var status = DecodeFromChars(chars, destination, out var charsConsumed, out bytesWritten, isFinalBlock); bytesConsumed = charsConsumed; return status; } diff --git a/src/Split/netstandard2.1/Base64Url.cs b/src/Split/netstandard2.1/Base64Url.cs index fb22774c..817dcd19 100644 --- a/src/Split/netstandard2.1/Base64Url.cs +++ b/src/Split/netstandard2.1/Base64Url.cs @@ -282,7 +282,7 @@ public static int DecodeFromUtf8(ReadOnlySpan source, Span destinati public static OperationStatus DecodeFromUtf8(ReadOnlySpan source, Span destination, out int bytesConsumed, out int bytesWritten, bool isFinalBlock = true) { var chars = BytesToChars(source); - var status = DecodeFromChars(chars, destination, out bytesWritten, out var charsConsumed, isFinalBlock); + var status = DecodeFromChars(chars, destination, out var charsConsumed, out bytesWritten, isFinalBlock); bytesConsumed = charsConsumed; return status; } diff --git a/src/Split/uap10.0/Base64Url.cs b/src/Split/uap10.0/Base64Url.cs index fb22774c..817dcd19 100644 --- a/src/Split/uap10.0/Base64Url.cs +++ b/src/Split/uap10.0/Base64Url.cs @@ -282,7 +282,7 @@ public static int DecodeFromUtf8(ReadOnlySpan source, Span destinati public static OperationStatus DecodeFromUtf8(ReadOnlySpan source, Span destination, out int bytesConsumed, out int bytesWritten, bool isFinalBlock = true) { var chars = BytesToChars(source); - var status = DecodeFromChars(chars, destination, out bytesWritten, out var charsConsumed, isFinalBlock); + var status = DecodeFromChars(chars, destination, out var charsConsumed, out bytesWritten, isFinalBlock); bytesConsumed = charsConsumed; return status; } diff --git a/src/Tests/Base64UrlTests.cs b/src/Tests/Base64UrlTests.cs index bd133a4b..736d3403 100644 --- a/src/Tests/Base64UrlTests.cs +++ b/src/Tests/Base64UrlTests.cs @@ -398,6 +398,17 @@ public async Task DecodeFromChars_OperationStatus_Blocks() await Assert.That(consumed).IsEqualTo(4); await Assert.That(written).IsEqualTo(3); } + + [Test] + public async Task DecodeFromUtf8_OperationStatus_Done() + { + var destination = new byte[20]; + var status = Base64Url.DecodeFromUtf8("AQID"u8, destination, out var bytesConsumed, out var bytesWritten); + await Assert.That(status).IsEqualTo(OperationStatus.Done); + await Assert.That(bytesConsumed).IsEqualTo(4); + await Assert.That(bytesWritten).IsEqualTo(3); + await Assert.That(destination.AsSpan(0, 3).ToArray()).IsEquivalentTo(new byte[] {1, 2, 3}); + } } #endif