コード例 #1
0
        public static void WriteUShort(ref MemorySpan span, ushort value)
        {
            byte[] bytes = BitConverter.GetBytes(value);

            if (BitConverter.IsLittleEndian)
            {
                Array.Reverse(bytes);
            }

            span.WriteBytes(bytes);
        }
コード例 #2
0
        public static void WriteLDouble(ref MemorySpan span, double value)
        {
            byte[] bytes = BitConverter.GetBytes(value);

            if (!BitConverter.IsLittleEndian)
            {
                Array.Reverse(bytes);
            }

            span.WriteBytes(bytes);
        }
コード例 #3
0
        public static void WriteLTriad(ref MemorySpan span, int value)
        {
            if (value > Int24_Max)
            {
                throw new OverflowException("Not Int24 Value!");
            }

            byte[] bytes = new byte[3]
            {
                (byte)value,
                ((byte)(value >> 8)),
                ((byte)(value >> 16))
            };

            span.WriteBytes(bytes);
        }
コード例 #4
0
 public static void WriteBytes(ref MemorySpan span, byte[] value)
 {
     span.WriteBytes(value);
 }
コード例 #5
0
        public static void WriteBool(ref MemorySpan span, bool value)
        {
            byte[] bytes = BitConverter.GetBytes(value);

            span.WriteBytes(bytes);
        }