var foo = new MyObject("Lorem ipsum", null);
var bar = new MyObject("Lorem ipsum", new NestedObject(42));
var comparer = new ObjectsComparer.Comparer();
var differences = comparer.CalculateDifferences(foo, bar);
foreach(var difference in differences) {
System.Console.WriteLine(difference);
public record MyObject(string Name, NestedObject? Nested);
public record NestedObject(int Age);