Exemplo n.º 1
0
        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());
        }
Exemplo n.º 2
0
        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());
        }
Exemplo n.º 3
0
 ReadOnlySpan <byte> KeyBytes(T obj, ref SpanWriter writer)
 {
     WriteRelationPKPrefix(ref writer);
     _relationInfo.PrimaryKeysSaver(_transaction, ref writer, obj);
     return(writer.GetPersistentSpanAndReset());
 }
Exemplo n.º 4
0
 ReadOnlySpan <byte> ValueBytes(T obj, ref SpanWriter writer)
 {
     writer.WriteVUInt32(_relationInfo.ClientTypeVersion);
     _relationInfo.ValueSaver(_transaction, ref writer, obj);
     return(writer.GetPersistentSpanAndReset());
 }