MCPcopy Create free account
hub / github.com/nodejs/node / create

Function create

tools/eslint-rules/lowercase-name-for-primitive.js:19–57  ·  view source on GitHub ↗
(context)

Source from the content-addressed store, hash-verified

17module.exports = {
18 meta: { fixable: 'code' },
19 create(context) {
20 function checkNamesArgument(node) {
21 const names = node.arguments[2];
22
23 switch (names.type) {
24 case 'Literal':
25 checkName(names);
26 break;
27 case 'ArrayExpression':
28 names.elements.forEach((name) => {
29 checkName(name);
30 });
31 break;
32 }
33 }
34
35 function checkName(node) {
36 const name = node.value;
37 const lowercaseName = name.toLowerCase();
38 if (name !== lowercaseName && primitives.includes(lowercaseName)) {
39 const msg = `primitive should use lowercase: ${name}`;
40 context.report({
41 node,
42 message: msg,
43 fix: (fixer) => {
44 return fixer.replaceText(
45 node,
46 `'${lowercaseName}'`,
47 );
48 },
49 });
50 }
51
52 }
53
54 return {
55 [astSelector]: (node) => checkNamesArgument(node),
56 };
57 },
58};

Callers

nothing calls this directly

Calls 1

checkNamesArgumentFunction · 0.85

Tested by

no test coverage detected