ZK_Framework/Assets/Plugins/MessagePack/StringEncoding.cs

32 lines
911 B
C#
Raw Normal View History

// Copyright (c) All contributors. All rights reserved.
// Licensed under the MIT license. See LICENSE file in the project root for full license information.
using System;
using System.Diagnostics;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
using System.Text;
namespace MessagePack
{
internal static class StringEncoding
{
internal static readonly Encoding UTF8 = new UTF8Encoding(false);
#if !NETCOREAPP // Define the extension method only where an instance method does not already exist.
internal static unsafe string GetString(this Encoding encoding, ReadOnlySpan<byte> bytes)
{
if (bytes.Length == 0)
{
return string.Empty;
}
fixed (byte* pBytes = bytes)
{
return encoding.GetString(pBytes, bytes.Length);
}
}
#endif
}
}