• Eric Erhardt's avatar
    Remove byte* property in ByteBufferAllocator (#5191) · 0cdacdfb
    Eric Erhardt authored
    * Remove byte* property in ByteBufferAllocator.
    
    This allows consumers to read/write into native memory, but without
    having to always pin the managed `byte[]` when working with managed
    memory. This allows for users to not need to Dispose() ByteBuffers
    when they are using the default ByteArrayAllocator class.
    
    Instead, we use `Span<byte> GetSpan()` methods to get access to the
    underlying memory buffer.
    
    Fix #5181
    
    * Add a set of benchmark tests.
    
    * Add ReadOnly spans.
    
    This allows consumers to use ReadOnlyMemory<byte> as the backing storage
    for ByteBuffers, which is useful in read-only scenarios.
    
    * Run tests using ENABLE_SPAN_T in appveyor.
    
    * Fix FlatBuffers.Test.csproj to work on older MSBuild versions.
    
    * Change the test script to test UNSAFE_BYTEBUFFER
    
    * Address PR feedback.
    
    Remove IDisposable from ByteBuffer.
    
    * Respond to PR feedback.
    0cdacdfb