1234567891011121314151617181920212223242526272829303132 |
- // A wrapper around ESLint's core rule no-unused-expressions, additionally ignores type cast
- // expressions.
- import {
- getBuiltinRule,
- } from '../utilities/getBuiltinRule';
- const noUnusedExpressionsRule = getBuiltinRule('no-unused-expressions');
- const { meta } = noUnusedExpressionsRule;
- const create = (context) => {
- const coreChecks = noUnusedExpressionsRule.create(context);
- return {
- ExpressionStatement(node) {
- if (
- node.expression.type === 'TypeCastExpression'
- || node.expression.type === 'OptionalCallExpression'
- ) {
- return;
- }
- coreChecks.ExpressionStatement(node);
- },
- };
- };
- export default {
- create,
- meta,
- };
|