/** * Constructs a difference with one modification, no unchanged fields */ public Difference(Delta<T> d) { this(new ArrayList<Delta<T>>(1)); add(d); }
/** * Constructs a difference with one modification, no unchanged fields */ public Difference(Delta<T> d) { this(new ArrayList<Delta<T>>(1)); add(d); }
ret.add(new Removal(field1, getElement(node1, entry1.getValue()))); } else { field2.push(index2); ret.add(new Move(field1, field2, getElement(node1, entry1.getValue()))); ret.add(compareNodes(field1, getElement(node1, entry1.getValue()), field2, getElement(node2, index2))); field2.pop(); ret.add(new Addition(field2, getElement(node2, entry2.getValue()))); field2.pop();
ret.add(new Removal(field1, element1)); assoc.remove1(index1); } else { ret.add(ixdiff.diff); BaseType element2 = getElement(node2, index); field2.push(index); ret.add(new Addition(field2, element2)); field2.pop(); field2.push(entry.getValue()); BaseType node = getElement(node1, entry.getKey()); ret.add(new Move(field1, field2, node)); field2.pop(); field1.pop();
ret.add(new Removal(field1, element1)); assoc.remove1(index1); } else { ret.add(ixdiff.diff); BaseType element2 = getElement(node2, index); field2.push(index); ret.add(new Addition(field2, element2)); field2.pop(); field2.push(entry.getValue()); BaseType node = getElement(node1, entry.getKey()); ret.add(new Move(field1, field2, node)); field2.pop(); field1.pop();
ret.add(new Removal(field1, getElement(node1, entry1.getValue()))); } else { field2.push(index2); ret.add(new Move(field1, field2, getElement(node1, entry1.getValue()))); ret.add(compareNodes(field1, getElement(node1, entry1.getValue()), field2, getElement(node2, index2))); field2.pop(); ret.add(new Addition(field2, getElement(node2, entry2.getValue()))); field2.pop();