public void u16ReadWrite() { var writer = new BitBufferWriter <SevenBitEncoding <u32ArrayMemory> >(); writer.u16(u16.MinValue); writer.u16(u16.MaxValue / 2); writer.u16(u16.MaxValue); var data = writer.ToArray(); writer.ToArray(); var reader = new BitBufferReader <SevenBitDecoding <u32ArrayMemory> >(); reader.CopyFrom(data); Assert.AreEqual(u16.MinValue, reader.u16()); var half = u16.MaxValue / 2; Assert.AreEqual(half, reader.u16()); Assert.AreEqual(u16.MaxValue, reader.u16()); }
public void u16ReadWriteLimits() { var writer = new BitBufferWriter <SevenBitEncoding <u32ArrayMemory> >(); writer.u16(2, 0, 10); writer.u16(1, 3); var data = writer.ToArray(); var reader = new BitBufferReader <SevenBitDecoding <u32ArrayMemory> >(); reader.CopyFrom(data); Assert.AreEqual(2, reader.i16(0, 10)); Assert.AreEqual(1, reader.u16(3)); }
public u8 u8(BitBufferReader <FibonacciDecoding> b) => (u8)b.u16();