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

Function checkObjectTypeForDuplicateDeclarations

test/fixtures/snapshot/typescript.js:80359–80386  ·  view source on GitHub ↗
(node)

Source from the content-addressed store, hash-verified

80357 }
80358 }
80359 function checkObjectTypeForDuplicateDeclarations(node) {
80360 var names = new ts.Map();
80361 for (var _i = 0, _a = node.members; _i < _a.length; _i++) {
80362 var member = _a[_i];
80363 if (member.kind === 166 /* SyntaxKind.PropertySignature */) {
80364 var memberName = void 0;
80365 var name = member.name;
80366 switch (name.kind) {
80367 case 10 /* SyntaxKind.StringLiteral */:
80368 case 8 /* SyntaxKind.NumericLiteral */:
80369 memberName = name.text;
80370 break;
80371 case 79 /* SyntaxKind.Identifier */:
80372 memberName = ts.idText(name);
80373 break;
80374 default:
80375 continue;
80376 }
80377 if (names.get(memberName)) {
80378 error(ts.getNameOfDeclaration(member.symbol.valueDeclaration), ts.Diagnostics.Duplicate_identifier_0, memberName);
80379 error(member.name, ts.Diagnostics.Duplicate_identifier_0, memberName);
80380 }
80381 else {
80382 names.set(memberName, true);
80383 }
80384 }
80385 }
80386 }
80387 function checkTypeForDuplicateIndexSignatures(node) {
80388 if (node.kind === 258 /* SyntaxKind.InterfaceDeclaration */) {
80389 var nodeSymbol = getSymbolOfNode(node);

Callers 2

Calls 3

errorFunction · 0.70
getMethod · 0.65
setMethod · 0.45

Tested by

no test coverage detected