Performance improvement in PathSet

This commit is contained in:
Zaid Abdulla committed 2016-10-24 17:21:09 -07:00
1 parent 739d215a92
commit f24e05b7b6
1 file changed
+7 -8
+7 -8
View File
@@ -31,15 +31,14 @@ class PathSet {
add(path) { add(path) {
var sets = []; let sets;
if (!this.lengthIndex[path.length]) { if (!this.lengthIndex[path.length])
sets = null;
this.lengthIndex[path.length] = new Set(); this.lengthIndex[path.length] = new Set();
} else if (this.lengthIndex[path.length].has(path))
else if (sets) { return path;
sets.push(this.lengthIndex[path.length]) else
} sets = [this.lengthIndex[path.length]];
for (let i = 0; i < path.length; ++ i) { for (let i = 0; i < path.length; ++ i) {
let fragment = path[i]; let fragment = path[i];
@@ -53,7 +52,7 @@ class PathSet {
} }
if (!this.fragmentIndex[i][fragment]) { if (!this.fragmentIndex[i][fragment]) {
sets = null sets = null;
this.fragmentIndex[i][fragment] = new Set(); this.fragmentIndex[i][fragment] = new Set();
} }
else if (sets) else if (sets)