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

Function cloneTypeAsModuleType

test/fixtures/snapshot/typescript.js:51388–51405  ·  view source on GitHub ↗

* Create a new symbol which has the module's type less the call and construct signatures

(symbol, moduleType, referenceParent)

Source from the content-addressed store, hash-verified

51386 * Create a new symbol which has the module's type less the call and construct signatures
51387 */
51388 function cloneTypeAsModuleType(symbol, moduleType, referenceParent) {
51389 var result = createSymbol(symbol.flags, symbol.escapedName);
51390 result.declarations = symbol.declarations ? symbol.declarations.slice() : [];
51391 result.parent = symbol.parent;
51392 result.target = symbol;
51393 result.originatingImport = referenceParent;
51394 if (symbol.valueDeclaration)
51395 result.valueDeclaration = symbol.valueDeclaration;
51396 if (symbol.constEnumOnlyModule)
51397 result.constEnumOnlyModule = true;
51398 if (symbol.members)
51399 result.members = new ts.Map(symbol.members);
51400 if (symbol.exports)
51401 result.exports = new ts.Map(symbol.exports);
51402 var resolvedModuleType = resolveStructuredTypeMembers(moduleType); // Should already be resolved from the signature checks above
51403 result.type = createAnonymousType(result, resolvedModuleType.members, ts.emptyArray, ts.emptyArray, resolvedModuleType.indexInfos);
51404 return result;
51405 }
51406 function hasExportAssignmentSymbol(moduleSymbol) {
51407 return moduleSymbol.exports.get("export=" /* InternalSymbolName.ExportEquals */) !== undefined;
51408 }

Callers 1

resolveESModuleSymbolFunction · 0.85

Calls 4

createSymbolFunction · 0.85
createAnonymousTypeFunction · 0.85
sliceMethod · 0.65

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…