From 11d18ca26b06034379ddb669fd963875ae5108fa Mon Sep 17 00:00:00 2001 From: Armin Ronacher Date: Sun, 3 Oct 2021 08:59:45 +0200 Subject: [PATCH] Added serde example --- Cargo.toml | 4 ++++ examples/serde.rs | 15 +++++++++++++++ 2 files changed, 19 insertions(+) create mode 100644 examples/serde.rs diff --git a/Cargo.toml b/Cargo.toml index 4709142..8dfab45 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -63,5 +63,9 @@ required-features = ["text"] name = "large" required-features = ["text"] +[[example]] +name = "serde" +required-features = ["text", "serde"] + [profile.release] debug = true diff --git a/examples/serde.rs b/examples/serde.rs new file mode 100644 index 0000000..98a5818 --- /dev/null +++ b/examples/serde.rs @@ -0,0 +1,15 @@ +use similar::TextDiff; + +fn main() { + let diff = TextDiff::from_lines( + "Hello World\nThis is the second line.\nThis is the third.", + "Hallo Welt\nThis is the second line.\nThis is life.\nMoar and more", + ); + + let all_changes = diff + .ops() + .iter() + .flat_map(|op| diff.iter_changes(op)) + .collect::>(); + println!("{}", serde_json::to_string_pretty(&all_changes).unwrap()); +}