IdentityExtractor idex) throws InvalidArrayIdentity, DuplicateArrayIdentity { Difference<BaseType> ret = new Difference<>();
IdentityExtractor idex) throws InvalidArrayIdentity, DuplicateArrayIdentity { Difference<BaseType> ret = new Difference<>();
ObjectType node2) throws InvalidArrayIdentity, DuplicateArrayIdentity { Difference<BaseType> ret = new Difference<>();
ArrayType node2) throws InvalidArrayIdentity, DuplicateArrayIdentity { Difference<BaseType> ret = new Difference<>(); IndexAssoc assoc = new IndexAssoc(size(node1), size(node2)); HashSet<Pair> comparedPairs = new HashSet<>();
ArrayType node2) throws InvalidArrayIdentity, DuplicateArrayIdentity { Difference<BaseType> ret = new Difference<>(); IndexAssoc assoc = new IndexAssoc(size(node1), size(node2)); HashSet<Pair> comparedPairs = new HashSet<>();
ObjectType node2) throws InvalidArrayIdentity, DuplicateArrayIdentity { Difference<BaseType> ret = new Difference<>();
public Difference<BaseType> compareNodes(MutablePath field1, BaseType node1, MutablePath field2, BaseType node2) throws InvalidArrayIdentity, DuplicateArrayIdentity { if (isValue(node1) && isValue(node2)) { if (!equals(asValue(node1), asValue(node2))) { return new Difference(new Modification(field1, node1, field2, node2)); } } else if (isArray(node1) && isArray(node2)) { return compareArrays(field1, asArray(node1), field2, asArray(node2)); } else if (isObject(node1) && isObject(node2)) { return compareObjects(field1, asObject(node1), field2, asObject(node2)); } else if (!(isNull(node1) && isNull(node2))) { return new Difference<>(new Modification(field1, node1, field2, node2)); } return new Difference<>(1); }
public Difference<BaseType> compareNodes(MutablePath field1, BaseType node1, MutablePath field2, BaseType node2) throws InvalidArrayIdentity, DuplicateArrayIdentity { if (isValue(node1) && isValue(node2)) { if (!equals(asValue(node1), asValue(node2))) { return new Difference(new Modification(field1, node1, field2, node2)); } } else if (isArray(node1) && isArray(node2)) { return compareArrays(field1, asArray(node1), field2, asArray(node2)); } else if (isObject(node1) && isObject(node2)) { return compareObjects(field1, asObject(node1), field2, asObject(node2)); } else if (!(isNull(node1) && isNull(node2))) { return new Difference<>(new Modification(field1, node1, field2, node2)); } return new Difference<>(1); }