MCPcopy Index your code
hub / github.com/nodejs/node / checkStrictModeEvalOrArguments

Function checkStrictModeEvalOrArguments

test/fixtures/snapshot/typescript.js:46621–46631  ·  view source on GitHub ↗
(contextNode, name)

Source from the content-addressed store, hash-verified

46619 return ts.isIdentifier(node) && (node.escapedText === "eval" || node.escapedText === "arguments");
46620 }
46621 function checkStrictModeEvalOrArguments(contextNode, name) {
46622 if (name && name.kind === 79 /* SyntaxKind.Identifier */) {
46623 var identifier = name;
46624 if (isEvalOrArgumentsIdentifier(identifier)) {
46625 // We check first if the name is inside class declaration or class expression; if so give explicit message
46626 // otherwise report generic error message.
46627 var span = ts.getErrorSpanForNode(file, name);
46628 file.bindDiagnostics.push(ts.createFileDiagnostic(file, span.start, span.length, getStrictModeEvalOrArgumentsMessage(contextNode), ts.idText(identifier)));
46629 }
46630 }
46631 }
46632 function getStrictModeEvalOrArgumentsMessage(node) {
46633 // Provide specialized messages to help the user understand why we think they're in
46634 // strict mode.

Calls 3

pushMethod · 0.45

Tested by

no test coverage detected