public void SingleWriter(ref MisterObject key, ref MisterObject src, ref MisterObject dst) { var length = src.Length; dst.Length = length; fixed(byte *source = &src.Data, destination = &dst.Data) { Buffer.MemoryCopy(source, destination, length, length); } }
public long Deserialize(ref MisterObject misterObject) { var length = misterObject.Length; if (length == 0) { return(0L); } if (length != 8) { throw new ArgumentOutOfRangeException(nameof(length)); } ref var value = ref Unsafe.As <byte, long>(ref misterObject.Data);
public unsafe T Deserialize(ref MisterObject misterObject) { ref var value = ref misterObject.Data;
public string Deserialize(ref MisterObject misterObject) { ref var value = ref misterObject.Data;
public void UpsertCompletionCallback(ref MisterObject key, ref MisterObject value, object ctx) { }
public void RMWCompletionCallback(ref MisterObject key, ref byte[] input, object ctx, Status status) { }
public void ReadCompletionCallback(ref MisterObject key, ref byte[] input, ref TValue output, object ctx, Status status) { }
public void DeleteCompletionCallback(ref MisterObject key, object ctx) { }
public bool InPlaceUpdater(ref MisterObject key, ref byte[] input, ref MisterObject value) { throw new NotImplementedException(); }
public void InitialUpdater(ref MisterObject key, ref byte[] input, ref MisterObject value) { throw new NotImplementedException(); }
public void CopyUpdater(ref MisterObject key, ref byte[] input, ref MisterObject oldValue, ref MisterObject newValue) { throw new NotImplementedException(); }
public bool ConcurrentWriter(ref MisterObject key, ref MisterObject src, ref MisterObject dst) { return(false); }
public void ConcurrentReader(ref MisterObject key, ref byte[] input, ref MisterObject value, ref TValue dst) { dst = _serializer.Deserialize(ref value); }