mirror of
https://git.proxmox.com/git/rustc
synced 2025-08-15 01:10:36 +00:00
40 lines
679 B
Markdown
40 lines
679 B
Markdown
# diff.rs
|
|
|
|
> An LCS based slice and string diffing implementation.
|
|
|
|
## Example
|
|
|
|
```rust
|
|
extern crate diff;
|
|
|
|
fn main() {
|
|
let left = "foo\nbar\nbaz\nquux";
|
|
let right = "foo\nbaz\nbar\nquux";
|
|
|
|
for diff in diff::lines(left, right) {
|
|
match diff {
|
|
diff::Result::Left(l) => println!("-{}", l),
|
|
diff::Result::Both(l, _) => println!(" {}", l),
|
|
diff::Result::Right(r) => println!("+{}", r)
|
|
}
|
|
}
|
|
}
|
|
```
|
|
|
|
prints
|
|
|
|
```
|
|
foo
|
|
-bar
|
|
baz
|
|
+bar
|
|
quux
|
|
```
|
|
|
|
## License
|
|
|
|
`diff` is primarily distributed under the terms of both the MIT license and the
|
|
Apache License (Version 2.0).
|
|
|
|
See LICENSE-APACHE, and LICENSE-MIT for details.
|