mergeWith

open fun mergeWith(previous: Change)

Mutates previous, so that it also encompasses the changes in this.

Typically, this method will throw an exception if previous cannot be merged. It is vital that canMergeWith returned false, so that mergeWith is not called, and therefore the exception is never thrown.