(program, cancellationToken, sourceFiles, sourceFile, position)
| 136973 | FindReferencesUse[FindReferencesUse["Rename"] = 2] = "Rename"; |
| 136974 | })(FindReferencesUse = FindAllReferences.FindReferencesUse || (FindAllReferences.FindReferencesUse = {})); |
| 136975 | function findReferencedSymbols(program, cancellationToken, sourceFiles, sourceFile, position) { |
| 136976 | var node = ts.getTouchingPropertyName(sourceFile, position); |
| 136977 | var options = { use: 1 /* FindReferencesUse.References */ }; |
| 136978 | var referencedSymbols = Core.getReferencedSymbolsForNode(position, node, program, sourceFiles, cancellationToken, options); |
| 136979 | var checker = program.getTypeChecker(); |
| 136980 | // Unless the starting node is a declaration (vs e.g. JSDoc), don't attempt to compute isDefinition |
| 136981 | var adjustedNode = Core.getAdjustedNode(node, options); |
| 136982 | var symbol = isDefinitionForReference(adjustedNode) ? checker.getSymbolAtLocation(adjustedNode) : undefined; |
| 136983 | return !referencedSymbols || !referencedSymbols.length ? undefined : ts.mapDefined(referencedSymbols, function (_a) { |
| 136984 | var definition = _a.definition, references = _a.references; |
| 136985 | // Only include referenced symbols that have a valid definition. |
| 136986 | return definition && { |
| 136987 | definition: checker.runWithCancellationToken(cancellationToken, function (checker) { return definitionToReferencedSymbolDefinitionInfo(definition, checker, node); }), |
| 136988 | references: references.map(function (r) { return toReferencedSymbolEntry(r, symbol); }) |
| 136989 | }; |
| 136990 | }); |
| 136991 | } |
| 136992 | FindAllReferences.findReferencedSymbols = findReferencedSymbols; |
| 136993 | function isDefinitionForReference(node) { |
| 136994 | return node.kind === 88 /* SyntaxKind.DefaultKeyword */ |
nothing calls this directly
no test coverage detected