void ISubTypeSerializer <T> .WriteSubType(ref ProtoWriter.State state, T value) { bool isFirst = Interlocked.Increment(ref _subSerializeCount) == 1; if (isFirst) { RuntimeTypeModel.OnDebugLog("Pre first sub-write", typeof(T)); } subTypeSerializer(ref state, value); if (isFirst) { RuntimeTypeModel.OnDebugLog("Post first sub-write", typeof(T)); } }
public override void Write(ref ProtoWriter.State state, object value) { bool isFirst = Interlocked.Increment(ref _serializeCount) == 1; if (isFirst) { RuntimeTypeModel.OnDebugLog("Pre first write", typeof(T)); } state.WriteBaseType <TBase>(TypeHelper <T> .FromObject(value)); if (isFirst) { RuntimeTypeModel.OnDebugLog("Post first write", typeof(T)); } }
void ISerializer <T> .Write(ref ProtoWriter.State state, T value) { bool isFirst = Interlocked.Increment(ref _serializeCount) == 1; if (isFirst) { RuntimeTypeModel.OnDebugLog("Pre first write", typeof(T)); } state.WriteBaseType <TBase>(value); if (isFirst) { RuntimeTypeModel.OnDebugLog("Post first write", typeof(T)); } }
public override object Read(ref ProtoReader.State state, object value) { bool isFirst = Interlocked.Increment(ref _deserializeCount) == 1; if (isFirst) { RuntimeTypeModel.OnDebugLog("Pre first read", typeof(T)); } value = state.ReadBaseType <TBase, T>(TypeHelper <T> .FromObject(value)); if (isFirst) { RuntimeTypeModel.OnDebugLog("Post first read", typeof(T)); } return(value); }
T ISerializer <T> .Read(ref ProtoReader.State state, T value) { bool isFirst = Interlocked.Increment(ref _deserializeCount) == 1; if (isFirst) { RuntimeTypeModel.OnDebugLog("Pre first read", typeof(T)); } value = state.ReadBaseType <TBase, T>(value); if (isFirst) { RuntimeTypeModel.OnDebugLog("Post first read", typeof(T)); } return(value); }
T ISubTypeSerializer <T> .ReadSubType(ref ProtoReader.State state, SubTypeState <T> value) { bool isFirst = Interlocked.Increment(ref _subDeserializeCount) == 1; if (isFirst) { RuntimeTypeModel.OnDebugLog("Pre first sub-read", typeof(T)); } var ret = subTypeDeserializer(ref state, value); if (isFirst) { RuntimeTypeModel.OnDebugLog("Pre first sub-read", typeof(T)); } return(ret); }