]>
Commit | Line | Data |
---|---|---|
eb39fafa DC |
1 | /** |
2 | * @fileoverview Rule to disallow use of new operator with the `require` function | |
3 | * @author Wil Moore III | |
609c276f | 4 | * @deprecated in ESLint v7.0.0 |
eb39fafa DC |
5 | */ |
6 | ||
7 | "use strict"; | |
8 | ||
9 | //------------------------------------------------------------------------------ | |
10 | // Rule Definition | |
11 | //------------------------------------------------------------------------------ | |
12 | ||
34eeec05 | 13 | /** @type {import('../shared/types').Rule} */ |
eb39fafa DC |
14 | module.exports = { |
15 | meta: { | |
56c4a2cb DC |
16 | deprecated: true, |
17 | ||
ebb53d86 | 18 | replacedBy: [], |
56c4a2cb | 19 | |
eb39fafa DC |
20 | type: "suggestion", |
21 | ||
22 | docs: { | |
8f9d1d4d | 23 | description: "Disallow `new` operators with calls to `require`", |
eb39fafa | 24 | recommended: false, |
f2a92ac6 | 25 | url: "https://eslint.org/docs/latest/rules/no-new-require" |
eb39fafa DC |
26 | }, |
27 | ||
28 | schema: [], | |
29 | ||
30 | messages: { | |
31 | noNewRequire: "Unexpected use of new with require." | |
32 | } | |
33 | }, | |
34 | ||
35 | create(context) { | |
36 | ||
37 | return { | |
38 | ||
39 | NewExpression(node) { | |
40 | if (node.callee.type === "Identifier" && node.callee.name === "require") { | |
41 | context.report({ | |
42 | node, | |
43 | messageId: "noNewRequire" | |
44 | }); | |
45 | } | |
46 | } | |
47 | }; | |
48 | ||
49 | } | |
50 | }; |