Open gorosgobe opened 1 year ago
LS has not instance
/not in
composite keywords.
This has nothing to do with LS as the language, but rather with its implementation - see sourcegraph link above.
I thought this was a compilation error (wrong level), but the source has it as-is: https://github.com/gkz/LiveScript/blob/master/src/ast.ls#L2515
in
andinstanceof
expressions in JScan be negated by grouping them and applying the
!
operator, i.e.Applying the
!
operator incorrectly (on the LHS operand) leads to bugs:For more information, please see these MDN docs and the no-unsafe-negation recommended Eslint rule.
I have found several potentially problematic instances of the above bugs in your codebase: https://sourcegraph.com/search?q=context:global+repo:%5Egithub%5C.com/gkz/LiveScript%24+lang:javascript+/%5C%21%5B%5B:alnum:%5D%5D%2B+instanceof+%5B%5B:alnum:%5D%5D%2B/+-file:%5C.min%5C.js%24+count:all&patternType=standard&sm=1&groupBy=repo