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

Function isSymbolAssigned

test/fixtures/snapshot/typescript.js:71435–71448  ·  view source on GitHub ↗
(symbol)

Source from the content-addressed store, hash-verified

71433 }
71434 // Check if a parameter or catch variable is assigned anywhere
71435 function isSymbolAssigned(symbol) {
71436 if (!symbol.valueDeclaration) {
71437 return false;
71438 }
71439 var parent = ts.getRootDeclaration(symbol.valueDeclaration).parent;
71440 var links = getNodeLinks(parent);
71441 if (!(links.flags & 8388608 /* NodeCheckFlags.AssignmentsMarked */)) {
71442 links.flags |= 8388608 /* NodeCheckFlags.AssignmentsMarked */;
71443 if (!hasParentWithAssignmentsMarked(parent)) {
71444 markNodeAssignments(parent);
71445 }
71446 }
71447 return symbol.isAssigned || false;
71448 }
71449 function hasParentWithAssignmentsMarked(node) {
71450 return !!ts.findAncestor(node.parent, function (node) {
71451 return (ts.isFunctionLike(node) || ts.isCatchClause(node)) && !!(getNodeLinks(node).flags & 8388608 /* NodeCheckFlags.AssignmentsMarked */);

Callers 3

isConstantReferenceFunction · 0.85
getNarrowedTypeOfSymbolFunction · 0.85
checkIdentifierFunction · 0.85

Calls 3

getNodeLinksFunction · 0.85
markNodeAssignmentsFunction · 0.85

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…