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 }