public void ReadBytePinnerManaged() { byte[] bytes = new byte[] { 127, 128, 129, 200 }; MemoryBuffer buffer = new MemoryBuffer(bytes); using var pinner = new MemoryBufferPinner(buffer); var reader = new MemoryBinaryReader(pinner); for (int i = 0; i < bytes.Length; i++) { Assert.Equal(bytes[i], reader.ReadByte()); } Assert.Equal(0, reader.BytesRemaining); }
/// <summary> /// Initializes a new instance of the <see cref="MemoryBinaryReader"/> class. /// </summary> /// <param name="memoryBuffer">Memory byffer that we want to read</param> public MemoryBinaryReader(MemoryBufferPinner memoryBuffer) : this(memoryBuffer.BytePointer, memoryBuffer.Length) { }