System.Text.Utf8.Utf8Encoder.TryGetFirstByteCodePointValue C# (CSharp) Метод

TryGetFirstByteCodePointValue() приватный Метод

private TryGetFirstByteCodePointValue ( byte first, UnicodeCodePoint &codePoint, int &encodedBytes ) : bool
first byte
codePoint UnicodeCodePoint
encodedBytes int
Результат bool
        private static bool TryGetFirstByteCodePointValue(byte first, out UnicodeCodePoint codePoint, out int encodedBytes)
        {
            if (!TryGetNumberOfEncodedBytesFromFirstByte(first, out encodedBytes))
            {
                codePoint = default(UnicodeCodePoint);
                return false;
            }

            switch (encodedBytes)
            {
                case 1:
                    codePoint = (UnicodeCodePoint)(first & b0111_1111U);
                    return true;
                case 2:
                    codePoint = (UnicodeCodePoint)(first & b0001_1111U);
                    return true;
                case 3:
                    codePoint = (UnicodeCodePoint)(first & b0000_1111U);
                    return true;
                case 4:
                    codePoint = (UnicodeCodePoint)(first & b0000_0111U);
                    return true;
                default:
                    codePoint = default(UnicodeCodePoint);
                    encodedBytes = 0;
                    return false;
            }
        }