MCPcopy Create free account
hub / github.com/microsoft/typescript-go / getTargetOfExportSpecifier

Method getTargetOfExportSpecifier

internal/checker/checker.go:14877–14900  ·  view source on GitHub ↗
(node *ast.Node, meaning ast.SymbolFlags, dontResolveAlias bool)

Source from the content-addressed store, hash-verified

14875}
14876
14877func (c *Checker) getTargetOfExportSpecifier(node *ast.Node, meaning ast.SymbolFlags, dontResolveAlias bool) *ast.Symbol {
14878 name := node.PropertyNameOrName()
14879 if ast.ModuleExportNameIsDefault(name) {
14880 specifier := c.getModuleSpecifierForImportOrExport(node)
14881 if specifier != nil {
14882 moduleSymbol := c.resolveExternalModuleName(node, specifier, false /*ignoreErrors*/)
14883 if moduleSymbol != nil {
14884 return c.getTargetOfModuleDefault(moduleSymbol, node, dontResolveAlias)
14885 }
14886 }
14887 }
14888 exportDeclaration := node.Parent.Parent
14889 var resolved *ast.Symbol
14890 switch {
14891 case exportDeclaration.ModuleSpecifier() != nil:
14892 resolved = c.getExternalModuleMember(exportDeclaration, node, dontResolveAlias)
14893 case ast.IsStringLiteral(name):
14894 resolved = nil
14895 default:
14896 resolved = c.resolveEntityName(name, meaning, false /*ignoreErrors*/, dontResolveAlias, nil /*location*/)
14897 }
14898 c.markSymbolOfAliasDeclarationIfTypeOnly(node, nil)
14899 return resolved
14900}
14901
14902func (c *Checker) getTargetOfExportAssignment(node *ast.Node) *ast.Symbol {
14903 resolved := c.getTargetOfAliasLikeExpression(node.Expression())

Callers 2

markLinkedAliasesMethod · 0.80

Tested by

no test coverage detected