Index: lib/filterClasses.js |
=================================================================== |
--- a/lib/filterClasses.js |
+++ b/lib/filterClasses.js |
@@ -767,16 +767,24 @@ |
this.sitekeySource = null; |
} |
Object.defineProperty( |
this, "sitekeys", {value: sitekeys, enumerable: true} |
); |
return this.sitekeys; |
}, |
+ /** |
+ * Tests whether the filter only has location. |
+ */ |
+ get isLocationOnly() |
+ { |
+ return this.contentType == RegExpFilter.prototype.contentType && |
+ this.thirdParty == null && !this.domains && !this.sitekeys; |
+ }, |
/** |
* Tests whether the URL matches this filter |
* @param {string} location URL to be tested |
* @param {number} typeMask bitmask of content / request types to match |
* @param {string} [docDomain] domain name of the document that loads the URL |
* @param {boolean} [thirdParty] should be true if the URL is a third-party |
* request |
@@ -784,16 +792,20 @@ |
* @return {boolean} true in case of a match |
*/ |
matches(location, typeMask, docDomain, thirdParty, sitekey) |
{ |
return (this.contentType & typeMask) != 0 && |
(this.thirdParty == null || this.thirdParty == thirdParty) && |
this.isActiveOnDomain(docDomain, sitekey) && |
this.regexp.test(location); |
+ }, |
+ matchesLocation(location) |
+ { |
+ return this.regexp.test(location); |
} |
}); |
/** |
* Yields the filter itself (required to optimize {@link Matcher}). |
* @yields {RegExpFilter} |
*/ |
RegExpFilter.prototype[Symbol.iterator] = function*() |