protected override IEnumerable <(string, object?)> GetPropertyNameAndValuesToWrite(object value, JsonSerializerOptions options) { var baseProperties = base.GetPropertyNameAndValuesToWrite(value, options); object?extraProperty = IExtraPropertyJsonConverter.GetExtraProperty(value, this.getValue); if (extraProperty == null) { return(baseProperties); } else { return(baseProperties.Prepend((this.name, extraProperty))); } }
public bool WillAddExtraProperty([NotNullWhen(true)] object?arg) { return(IExtraPropertyJsonConverter.WillAddExtraProperty(arg, this.getValue)); }