B:BD[
4.705] → [
4.705:713]
∅:D[
4.713] → [
3.801952:802185]
B:BD[
3.801952] → [
3.801952:802185]
B:BD[
3.802185] → [
4.714:738]
∅:D[
4.738] → [
3.802204:802409]
B:BD[
3.802204] → [
3.802204:802409]
B:BD[
3.802409] → [
2.5625:5649]
∅:D[
4.767] → [
3.802428:802454]
∅:D[
2.5649] → [
3.802428:802454]
B:BD[
3.802428] → [
3.802428:802454]
});
match algorithm {
Algorithm::Patience => diffs::patience::diff(
&mut dd,
lines_a,
0,
lines_a.len(),
lines_b,
0,
lines_b.len(),
)
.unwrap_or(()),
Algorithm::Myers => diffs::myers::diff(
&mut dd,
lines_a,
0,
lines_a.len(),
lines_b,
0,
lines_b.len(),
)
.unwrap_or(()),
}
dd.into_inner()
};
return match algorithm {
Algorithm::Patience => {
let mut dd = diffs::Replace::new(result);
diffs::patience::diff(
&mut dd,
lines_a,
0,
lines_a.len(),
lines_b,
0,
lines_b.len(),
)
.unwrap_or(());
dd.into_inner()
}
Algorithm::Myers => {
let mut dd = diffs::Replace::new(result);
diffs::myers::diff(
&mut dd,
lines_a,
0,
lines_a.len(),
lines_b,
0,
lines_b.len(),
)
.unwrap_or(());
dd.into_inner()
}
Algorithm::ImaraHistogram => {
let source = imara_diff::intern::InternedInput::new(&Lines(lines_a), &Lines(lines_b));
imara_diff::diff(imara_diff::Algorithm::Histogram, &source, result)
}
};