[][src]Struct difference::Changeset

pub struct Changeset {
    pub diffs: Vec<Difference>,
    pub split: String,
    pub distance: i32,
}

The information about a full changeset

Fields

diffs: Vec<Difference>

An ordered vector of Difference objects, coresponding to the differences within the text

split: String

The split used when creating the Changeset Common splits are "" for char-level, " " for word-level and "\n" for line-level.

distance: i32

The edit distance of the Changeset

Methods

impl Changeset[src]

pub fn new(orig: &str, edit: &str, split: &str) -> Changeset[src]

Calculates the edit distance and the changeset for two given strings. The first string is assumed to be the "original", the second to be an edited version of the first. The third parameter specifies how to split the input strings, leading to a more or less exact comparison.

Common splits are "" for char-level, " " for word-level and "\n" for line-level.

Outputs the edit distance (how much the two strings differ) and a "changeset", that is a Vec containing Differences.

Examples

use difference::{Changeset, Difference};

let changeset = Changeset::new("test", "tent", "");

assert_eq!(changeset.diffs, vec![
    Difference::Same("te".to_string()),
    Difference::Rem("s".to_string()),
    Difference::Add("n".to_string()),
    Difference::Same("t".to_string())
]);

Trait Implementations

impl Display for Changeset[src]

Auto Trait Implementations

impl Send for Changeset

impl Sync for Changeset

Blanket Implementations

impl<T> From for T[src]

impl<T, U> Into for T where
    U: From<T>, 
[src]

impl<T> ToString for T where
    T: Display + ?Sized
[src]

impl<T, U> TryFrom for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T> Borrow for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> BorrowMut for T where
    T: ?Sized
[src]

impl<T, U> TryInto for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.