]> git.proxmox.com Git - cargo.git/commitdiff
Add comment explaining the lowercasing in the levenshtein distance calculation.
authorMidas Lambrichts <midaslamb@gmail.com>
Wed, 22 Dec 2021 19:57:15 +0000 (20:57 +0100)
committerMidas Lambrichts <midaslamb@gmail.com>
Wed, 22 Dec 2021 19:57:15 +0000 (20:57 +0100)
src/cargo/util/lev_distance.rs

index 44ec669267a9ec56e8480e6db2f8c8f529fc8111..8dcef4a895bc213abd2f7c3c0f785cc42ea04497 100644 (file)
@@ -1,6 +1,11 @@
 use std::cmp;
 
 pub fn lev_distance(me: &str, t: &str) -> usize {
+    // Comparing the strings lowercased will result in a difference in capitalization being less distance away
+    // than being a completely different letter. Otherwise `CHECK` is as far away from `check` as it
+    // is from `build` (both with a distance of 5). For a single letter shortcut (e.g. `b` or `c`), they will
+    // all be as far away from any capital single letter entry (all with a distance of 1).
+    // By first lowercasing the strings, `C` and `c` are closer than `C` and `b`, for example.
     let me = me.to_lowercase();
     let t = t.to_lowercase();