(typeChecker, node)
| 139812 | } |
| 139813 | } |
| 139814 | function getDefinitionFromOverriddenMember(typeChecker, node) { |
| 139815 | var classElement = ts.findAncestor(node, ts.isClassElement); |
| 139816 | if (!(classElement && classElement.name)) |
| 139817 | return; |
| 139818 | var baseDeclaration = ts.findAncestor(classElement, ts.isClassLike); |
| 139819 | if (!baseDeclaration) |
| 139820 | return; |
| 139821 | var baseTypeNode = ts.getEffectiveBaseTypeNode(baseDeclaration); |
| 139822 | var baseType = baseTypeNode ? typeChecker.getTypeAtLocation(baseTypeNode) : undefined; |
| 139823 | if (!baseType) |
| 139824 | return; |
| 139825 | var name = ts.unescapeLeadingUnderscores(ts.getTextOfPropertyName(classElement.name)); |
| 139826 | var symbol = ts.hasStaticModifier(classElement) |
| 139827 | ? typeChecker.getPropertyOfType(typeChecker.getTypeOfSymbolAtLocation(baseType.symbol, baseDeclaration), name) |
| 139828 | : typeChecker.getPropertyOfType(baseType, name); |
| 139829 | if (!symbol) |
| 139830 | return; |
| 139831 | return getDefinitionFromSymbol(typeChecker, symbol, node); |
| 139832 | } |
| 139833 | function getReferenceAtPosition(sourceFile, position, program) { |
| 139834 | var _a, _b; |
| 139835 | var referencePath = findReferenceInPosition(sourceFile.referencedFiles, position); |
no test coverage detected