public override Decimal DeserializeImpl(TSource source, SerializationContext context) { long restore = context.LimitByLengthPrefix(); Decimal value = ProtoDecimal.DeserializeDecimal(context); context.MaxReadPosition = restore; return(value); }
public override int Serialize(TSource source, SerializationContext context) { Decimal value = GetValue(source); if (IsOptional && value == DefaultValue) { return(0); } return(WritePrefix(context) + ProtoDecimal.SerializeDecimal(value, context, true)); }
public override Decimal DeserializeImpl(TSource source, SerializationContext context) { context.StartGroup(Tag); // will be ended internally return(ProtoDecimal.DeserializeDecimal(context)); }