using System; namespace JT808.Protocol.Buffers { /// /// /// ref System.Buffers.Writer /// ref partial struct JT808BufferWriter { private Span _buffer; public JT808BufferWriter(Span buffer) { _buffer = buffer; WrittenCount = 0; BeforeCodingWrittenPosition = 0; } public Span Free => _buffer.Slice(WrittenCount); public Span Written => _buffer.Slice(0, WrittenCount); /// /// 编码之前的写入位置 /// public int BeforeCodingWrittenPosition { get;internal set; } public int WrittenCount { get; private set; } public void Advance(int count) { WrittenCount += count; } } }