|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectdifflib.myers.MyersDiff<T>
public class MyersDiff<T>
A clean-room implementation of Eugene Myers differencing algorithm.
See the paper at http://www.cs.arizona.edu/people/gene/PAPERS/diff.ps
Constructor Summary | |
---|---|
MyersDiff()
Constructs an instance of the Myers differencing algorithm. |
|
MyersDiff(Equalizer<T> equalizer)
Constructs an instance of the Myers differencing algorithm. |
Method Summary | ||
---|---|---|
PathNode |
buildPath(List<T> orig,
List<T> rev)
Computes the minimum diffpath that expresses de differences between the original and revised sequences, according to Gene Myers differencing algorithm. |
|
Patch<T> |
buildRevision(PathNode path,
List<T> orig,
List<T> rev)
Constructs a Patch from a difference path. |
|
static
|
copyOfRange2(T[] original,
int from,
int to)
Copied here from JDK 1.6 |
|
static
|
copyOfRange2(U[] original,
int from,
int to,
Class<? extends T[]> newType)
Copied here from JDK 1.6 |
|
Patch<T> |
diff(List<T> original,
List<T> revised)
Computes the difference between the original sequence and the revised sequence and returns it as a Patch object. |
|
Patch<T> |
diff(T[] original,
T[] revised)
Computes the difference between the original sequence and the revised sequence and returns it as a Patch object. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public MyersDiff()
public MyersDiff(Equalizer<T> equalizer)
equalizer
- Must not be null
.Method Detail |
---|
public Patch<T> diff(T[] original, T[] revised)
Patch
object.
diff
in interface DiffAlgorithm<T>
original
- The original sequence. Must not be null
.revised
- The revised sequence. Must not be null
.
public Patch<T> diff(List<T> original, List<T> revised)
Patch
object.
Return empty diff if get the error while procession the difference.
diff
in interface DiffAlgorithm<T>
original
- The original sequence. Must not be null
.revised
- The revised sequence. Must not be null
.
null
.public PathNode buildPath(List<T> orig, List<T> rev) throws DifferentiationFailedException
orig
- The original sequence.rev
- The revised sequence.
Path
accross the differences graph.
DifferentiationFailedException
- if a diff path could not be found.public Patch<T> buildRevision(PathNode path, List<T> orig, List<T> rev)
Patch
from a difference path.
path
- The path.orig
- The original sequence.rev
- The revised sequence.
Patch
script corresponding to the path.
DifferentiationFailedException
- if a Patch
could
not be built from the given path.public static <T> T[] copyOfRange2(T[] original, int from, int to)
public static <T,U> T[] copyOfRange2(U[] original, int from, int to, Class<? extends T[]> newType)
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |