public void Write(BinaryWriter writer, T?value) { if (value is T x) { _serializer.Write(writer, x); } else { throw new InvalidDataException(); } }
/// <inheritdoc /> public void Serialize(object instance, IPropertyWriter writer) { var value = GetValue(instance); _serializer.Write(writer, this, value); }
public void Write(BinaryWriter writer, EntityReference <TEntity, TIndex> value) => _valueSerializer.Write(writer, (TIndex)Convert.ChangeType(value.Index, typeof(TIndex)));