aboutsummaryrefslogtreecommitdiffstats
path: root/node_modules/abbrev/lib/index.js
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--node_modules/abbrev/lib/index.js53
1 files changed, 0 insertions, 53 deletions
diff --git a/node_modules/abbrev/lib/index.js b/node_modules/abbrev/lib/index.js
deleted file mode 100644
index f7bee0c..0000000
--- a/node_modules/abbrev/lib/index.js
+++ /dev/null
@@ -1,53 +0,0 @@
-module.exports = abbrev
-
-function abbrev (...args) {
- let list = args
- if (args.length === 1 && (Array.isArray(args[0]) || typeof args[0] === 'string')) {
- list = [].concat(args[0])
- }
-
- for (let i = 0, l = list.length; i < l; i++) {
- list[i] = typeof list[i] === 'string' ? list[i] : String(list[i])
- }
-
- // sort them lexicographically, so that they're next to their nearest kin
- list = list.sort(lexSort)
-
- // walk through each, seeing how much it has in common with the next and previous
- const abbrevs = {}
- let prev = ''
- for (let ii = 0, ll = list.length; ii < ll; ii++) {
- const current = list[ii]
- const next = list[ii + 1] || ''
- let nextMatches = true
- let prevMatches = true
- if (current === next) {
- continue
- }
- let j = 0
- const cl = current.length
- for (; j < cl; j++) {
- const curChar = current.charAt(j)
- nextMatches = nextMatches && curChar === next.charAt(j)
- prevMatches = prevMatches && curChar === prev.charAt(j)
- if (!nextMatches && !prevMatches) {
- j++
- break
- }
- }
- prev = current
- if (j === cl) {
- abbrevs[current] = current
- continue
- }
- for (let a = current.slice(0, j); j <= cl; j++) {
- abbrevs[a] = current
- a += current.charAt(j)
- }
- }
- return abbrevs
-}
-
-function lexSort (a, b) {
- return a === b ? 0 : a > b ? 1 : -1
-}