public static void BufferConsumerWriteMethods() { var ms = new ArrayBufferWriter <char>(); IReadOnlySpanConsumer <char> consumer = new BufferConsumer <char>(ms); consumer.Invoke(new ReadOnlySpan <char>(new char[] { '1', '2' })); consumer.Invoke(new ReadOnlyMemory <char>(new char[] { '3', '4' }), default); Equal("1234", ms.WrittenSpan.ToString()); }
public static byte[] Read(this IListReader listWriter) { var buffer = new BufferConsumer(); if (!listWriter.Read(buffer)) { return null; } return buffer.m_buffer.Buffer; }
public static void BufferConsumerBasicMethods() { Throws <ArgumentNullException>(() => new BufferConsumer <byte>(null)); var consumer = new BufferConsumer <byte>(); Null(consumer.ToString()); True(consumer.IsEmpty); Equal(new BufferConsumer <byte>(), consumer); True(new BufferConsumer <byte>() == consumer); False(new BufferConsumer <byte>() != consumer); Equal(0, consumer.GetHashCode()); var writer = new ArrayBufferWriter <byte>(); consumer = new BufferConsumer <byte>(writer); NotNull(consumer.ToString()); False(consumer.IsEmpty); NotEqual(0, consumer.GetHashCode()); NotEqual(new BufferConsumer <byte>(), consumer); False(new BufferConsumer <byte>() == consumer); True(new BufferConsumer <byte>() != consumer); }