Skip to content

Commit

Permalink
Little refactogin in Serialize method
Browse files Browse the repository at this point in the history
  • Loading branch information
loudenvier committed Nov 23, 2023
1 parent 4de01eb commit aeea5ad
Showing 1 changed file with 3 additions and 4 deletions.
7 changes: 3 additions & 4 deletions NetDot/DotNotation.cs
Original file line number Diff line number Diff line change
Expand Up @@ -97,9 +97,9 @@ private static void StoreArrayItem(List<object?> list, Member member, object ite
return JsonConvert.DeserializeObject<T>(json, settings);
}

public static string Serialize(object? o, string? prefix = null, DotNotationSettings? settings = null) {
public static string Serialize(object? o, string prefix = "", DotNotationSettings? settings = null) {
settings ??= DotNotationSettings.Default;
string dot(string? s) => s is null ? "" : s + settings.DotConnector;
string dot(string? s) => string.IsNullOrEmpty(s) ? "" : s + settings.DotConnector;
if (o is null) return "";
var sb = new StringBuilder();
if (typeof(IDictionary).IsAssignableFrom(o.GetType())) {
Expand All @@ -124,8 +124,7 @@ public static string Serialize(object? o, string? prefix = null, DotNotationSett
sb.Append(Serialize(v, $"{dot(prefix)}{prop.Name}", settings));
}
} else {
if (prefix is not null)
sb.Append(WriteEntry(prefix, o, settings)); // $"{prefix}={o}");
sb.Append(WriteEntry(prefix, o, settings)); // $"{prefix}={o}");
}
return sb.ToString();
}
Expand Down

0 comments on commit aeea5ad

Please sign in to comment.