added caching to parse() function

This commit is contained in:
Tim 2019-03-01 21:39:35 +01:00 committed by GitHub
parent 1faa9b3b8f
commit 1ab1aa1e38
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -1044,9 +1044,16 @@
this._protocolRegex = /^[a-zA-Z]+:\/\//i;
this._urlRegex = /^((https?:\/\/)?[\w-]+(\.[\w-]+)+\.?(:\d+)?(\/\S*)?)$/i;
this.parse = this.parse.bind(this);
this._lastQuery = "";
this._lastParse;
}
parse(query) {
if (this._lastQuery === query) {
return this._lastParse;
}
this._lastQuery = query;
const res = { query: query, split: null };
if (this._urlRegex.test(query)) {
@ -1090,6 +1097,7 @@
}
res.color = QueryParser._getColorFromUrl(this._commands, res.redirect);
this._lastParse = res;
return res;
}