mirror of
https://github.com/github/semantic.git
synced 2024-11-29 11:02:26 +03:00
Stub diffing in the middle of the graph.
This commit is contained in:
parent
1d993bb65b
commit
03c5f0b644
@ -121,7 +121,15 @@ public enum FreeAlgorithm<A, B> {
|
||||
matrix = Matrix(width: a.count, height: b.count) { i, j in
|
||||
let right = matrix[i + 1, j]
|
||||
let down = matrix[i, j + 1]
|
||||
let diagonal = matrix[i + 1, j + 1]
|
||||
|
||||
let here = Diff.Pure(Patch.Replace(a[i], b[j]))
|
||||
|
||||
if let right = right, down = down, diagonal = diagonal {
|
||||
// nominate the best edge to continue along
|
||||
return Stream.Cons(here, Memo(evaluated: .Nil))
|
||||
}
|
||||
|
||||
// right extent of the edit graph; can only move down
|
||||
if let down = down {
|
||||
return Stream.Cons(here, down)
|
||||
|
Loading…
Reference in New Issue
Block a user