gap
Functions
pub fn compare_lists(
first_sequence: List(a),
second_sequence: List(a),
) -> Comparison(a)
Compare two lists and return a ListComparison which will be styled as list
when passed to to_styled
Will use the default myers algorithm
pub fn compare_lists_with_algorithm(
first_sequence: List(a),
second_sequence: List(a),
algorithm: fn(List(a), List(a)) -> Comparison(a),
) -> Comparison(a)
Compare two lists and return a ListComparison which will be styled as list
when passed to to_styled
Algorithm can be used to select either myers or the legacy lcs algorithm
pub fn compare_strings(
first: String,
second: String,
) -> Comparison(String)
Compare two string and return a StringComparison which will be styled as string
when passed to to_styled
Will use the default myers algorithm
pub fn compare_strings_with_algorithm(
first: String,
second: String,
algorithm: fn(List(String), List(String)) -> Comparison(String),
) -> Comparison(String)
Compare two string and return a StringComparison which will be styled as string
when passed to to_styled
Algorithm can be used to select either myers or the legacy lcs algorithm
pub fn lcs(
first_sequence: List(a),
second_sequence: List(a),
) -> Comparison(a)
An adapter for the the lcs (longest common subsequence) algorithm.
Intended to be use as an argument to compare_strings_with_algorithm or
compare_lists_with_algorithm
pub fn myers(
first_sequence: List(a),
second_sequence: List(a),
) -> Comparison(a)
An adapter for the the myers algorithm.
Intended to be use as an argument to compare_strings_with_algorithm or
compare_lists_with_algorithm
pub fn to_styled(comparison: Comparison(a)) -> StyledComparison
Creates a StyledComparison from Comparison using default values for
highting and serialization.
Example
> compare_strings("abc", "abe") |> to_styled()
This will return a StyledComparison(first, second) where “c” in first is green
and “e” in second is red.