public SourceClearCommand(ExtendedBinaryReader reader, ISerializer keyDeserializer, ISerializer valueDeserializer) { var count = reader.Read7BitEncodedInt(); for (var i = 0; i < count; i++) { var keyValuePair = new BoxedKeyValuePair(); keyDeserializer.Read(reader, synchronizationCallback => { keyValuePair.Key = (TKey)synchronizationCallback; }); valueDeserializer.Read(reader, synchronizationCallback => { keyValuePair.Value = (TValue)synchronizationCallback; }); _keyValuePairs.Add(keyValuePair); } }
public SourceClearCommand(ExtendedBinaryReader reader, IFieldSerializer keyDeserializer, IFieldSerializer valueDeserializer) { int count = reader.Read7BitEncodedInt(); for (var i = 0; i < count; i++) { var keyValuePair = new BoxedKeyValuePair(); keyDeserializer.Deserialize(reader, fixup => { keyValuePair.Key = (TKey)fixup; }); valueDeserializer.Deserialize(reader, fixup => { keyValuePair.Value = (TValue)fixup; }); _keyValuePairs.Add(keyValuePair); } }