1 package org.pojomatic.diff; 2 3 /** 4 * A summary of differences (if any) between two POJOs. 5 */ 6 public interface Differences { 7 8 /** 9 * The differences between the two objects. If there are no differences, an 10 * empty {@link Iterable}. 11 * 12 * @return the differences between the two objects, or an empty {@link Iterable} if there are none 13 */ 14 Iterable<? extends Difference> differences(); 15 16 /** 17 * @return {@code true} if the two POJOs were {@code equal} to each other; 18 * {@code false} otherwise. 19 */ 20 boolean areEqual(); 21 22 /** 23 * @return a description of the differences 24 */ 25 @Override 26 String toString(); 27 }