ReadOnlySpan <byte> ValueToByteArray(TValue value, ref SpanWriter writer) { IWriterCtx ctx = null; if (_valueHandler.NeedsCtx()) { ctx = new DBWriterCtx(_tr); } _valueWriter(value, ref writer, ctx); return(writer.GetPersistentSpanAndReset()); }
ReadOnlySpan <byte> KeyToByteArray(TKey key, ref SpanWriter writer) { writer.WriteBlock(_prefix); IWriterCtx ctx = null; if (_keyHandler.NeedsCtx()) { ctx = new DBWriterCtx(_tr); } _keyWriter(key, ref writer, ctx); return(writer.GetPersistentSpanAndReset()); }
ReadOnlySpan <byte> KeyBytes(T obj, ref SpanWriter writer) { WriteRelationPKPrefix(ref writer); _relationInfo.PrimaryKeysSaver(_transaction, ref writer, obj); return(writer.GetPersistentSpanAndReset()); }
ReadOnlySpan <byte> ValueBytes(T obj, ref SpanWriter writer) { writer.WriteVUInt32(_relationInfo.ClientTypeVersion); _relationInfo.ValueSaver(_transaction, ref writer, obj); return(writer.GetPersistentSpanAndReset()); }