1
0
mirror of https://github.com/gorhill/uBlock.git synced 2024-11-22 02:12:44 +01:00

Rewrite logical expressions for ESLint (#3801)

This commit is contained in:
Manish Jethani 2021-08-03 20:29:01 +05:30 committed by GitHub
parent 3ca5e6817d
commit 6ef74fc21b
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 33 additions and 26 deletions

View File

@ -19,8 +19,7 @@
"ObjectExpression": "off",
"ignoreComments": true,
"ignoredNodes": [
"AssignmentExpression:has(Literal)",
"LogicalExpression"
"AssignmentExpression:has(Literal)"
]
}
],

View File

@ -2437,22 +2437,7 @@ const NetOptionsIterator = class {
descriptor = netOptionTokenDescriptors.get(token);
}
// Validate option according to context
if (
descriptor === undefined ||
ltok !== lopt &&
hasNoBits(descriptor, OPTCanNegate) ||
this.exception &&
hasBits(descriptor, OPTBlockOnly) ||
this.exception === false &&
hasBits(descriptor, OPTAllowOnly) ||
assigned &&
hasNoBits(descriptor, OPTMayAssign | OPTMustAssign) ||
assigned === false &&
hasBits(descriptor, OPTMustAssign) && (
this.exception === false ||
hasNoBits(descriptor, OPTAllowMayAssign)
)
) {
if ( !this.optionIsValidInContext(descriptor, ltok !== lopt, assigned) ) {
descriptor = OPTTokenInvalid;
}
// Keep track of which options are present: any given option can
@ -2665,6 +2650,30 @@ const NetOptionsIterator = class {
this.readPtr = i + 6;
return this;
}
optionIsValidInContext(descriptor, negated, assigned) {
if ( descriptor === undefined ) {
return false;
}
if ( negated && hasNoBits(descriptor, OPTCanNegate) ) {
return false;
}
if ( this.exception && hasBits(descriptor, OPTBlockOnly) ) {
return false;
}
if ( this.exception === false && hasBits(descriptor, OPTAllowOnly) ) {
return false;
}
if ( assigned && hasNoBits(descriptor, OPTMayAssign | OPTMustAssign) ) {
return false;
}
if ( assigned === false && hasBits(descriptor, OPTMustAssign) ) {
if ( this.exception === false || hasNoBits(descriptor, OPTAllowMayAssign) ) {
return false;
}
}
return true;
}
};
/******************************************************************************/

View File

@ -3268,14 +3268,13 @@ const FilterParser = class {
}
isJustOrigin() {
return this.optionUnitBits === this.DOMAIN_BIT &&
this.isRegex === false && (
this.pattern === '*' || (
this.anchor === 0b010 &&
/^(?:http[s*]?:(?:\/\/)?)$/.test(this.pattern)
)
) &&
this.domainOpt.indexOf('~') === -1;
if ( this.optionUnitBits !== this.DOMAIN_BIT ) { return false; }
if ( this.isRegex ) { return false; }
if ( this.domainOpt.includes('~') ) { return false; }
if ( this.pattern === '*' ) { return true; }
if ( this.anchor !== 0b010 ) { return false; }
if ( /^(?:http[s*]?:(?:\/\/)?)$/.test(this.pattern) ) { return true; }
return false;
}
domainIsEntity(s) {