compromise
Version:
natural language processing in the browser
37 lines (32 loc) • 865 B
JavaScript
;
//shallow-merge an object
exports.extendObj = (o, o2) => {
Object.keys(o2).forEach((k) => {
o[k] = o2[k];
});
return o;
};
//uncompress data in the adhoc compressed form {'ly':'kind,quick'}
exports.uncompress_suffixes = function(list, obj) {
let keys = Object.keys(obj);
let l = keys.length;
for (let i = 0; i < l; i++) {
const arr = obj[keys[i]].split(',');
for (let i2 = 0; i2 < arr.length; i2++) {
list.push(arr[i2] + keys[i]);
}
}
return list;
};
//uncompress data in the adhoc compressed form {'over':'blown,kill'}
exports.uncompress_prefixes = function(list, obj) {
let keys = Object.keys(obj);
let l = keys.length;
for (let i = 0; i < l; i++) {
const arr = obj[keys[i]].split(',');
for (let i2 = 0; i2 < arr.length; i2++) {
list.push(keys[i] + arr[i2]);
}
}
return list;
};