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

Function resolveAnonymousTypeMembers

test/fixtures/snapshot/typescript.js:58366–58450  ·  view source on GitHub ↗

* Converts an AnonymousType to a ResolvedType.

(type)

Source from the content-addressed store, hash-verified

58364 * Converts an AnonymousType to a ResolvedType.
58365 */
58366 function resolveAnonymousTypeMembers(type) {
58367 if (type.target) {
58368 setStructuredTypeMembers(type, emptySymbols, ts.emptyArray, ts.emptyArray, ts.emptyArray);
58369 var members_6 = createInstantiatedSymbolTable(getPropertiesOfObjectType(type.target), type.mapper, /*mappingThisOnly*/ false);
58370 var callSignatures = instantiateSignatures(getSignaturesOfType(type.target, 0 /* SignatureKind.Call */), type.mapper);
58371 var constructSignatures = instantiateSignatures(getSignaturesOfType(type.target, 1 /* SignatureKind.Construct */), type.mapper);
58372 var indexInfos_1 = instantiateIndexInfos(getIndexInfosOfType(type.target), type.mapper);
58373 setStructuredTypeMembers(type, members_6, callSignatures, constructSignatures, indexInfos_1);
58374 return;
58375 }
58376 var symbol = getMergedSymbol(type.symbol);
58377 if (symbol.flags & 2048 /* SymbolFlags.TypeLiteral */) {
58378 setStructuredTypeMembers(type, emptySymbols, ts.emptyArray, ts.emptyArray, ts.emptyArray);
58379 var members_7 = getMembersOfSymbol(symbol);
58380 var callSignatures = getSignaturesOfSymbol(members_7.get("__call" /* InternalSymbolName.Call */));
58381 var constructSignatures = getSignaturesOfSymbol(members_7.get("__new" /* InternalSymbolName.New */));
58382 var indexInfos_2 = getIndexInfosOfSymbol(symbol);
58383 setStructuredTypeMembers(type, members_7, callSignatures, constructSignatures, indexInfos_2);
58384 return;
58385 }
58386 // Combinations of function, class, enum and module
58387 var members = emptySymbols;
58388 var indexInfos;
58389 if (symbol.exports) {
58390 members = getExportsOfSymbol(symbol);
58391 if (symbol === globalThisSymbol) {
58392 var varsOnly_1 = new ts.Map();
58393 members.forEach(function (p) {
58394 var _a;
58395 if (!(p.flags & 418 /* SymbolFlags.BlockScoped */) && !(p.flags & 512 /* SymbolFlags.ValueModule */ && ((_a = p.declarations) === null || _a === void 0 ? void 0 : _a.length) && ts.every(p.declarations, ts.isAmbientModule))) {
58396 varsOnly_1.set(p.escapedName, p);
58397 }
58398 });
58399 members = varsOnly_1;
58400 }
58401 }
58402 var baseConstructorIndexInfo;
58403 setStructuredTypeMembers(type, members, ts.emptyArray, ts.emptyArray, ts.emptyArray);
58404 if (symbol.flags & 32 /* SymbolFlags.Class */) {
58405 var classType = getDeclaredTypeOfClassOrInterface(symbol);
58406 var baseConstructorType = getBaseConstructorTypeOfClass(classType);
58407 if (baseConstructorType.flags & (524288 /* TypeFlags.Object */ | 2097152 /* TypeFlags.Intersection */ | 8650752 /* TypeFlags.TypeVariable */)) {
58408 members = ts.createSymbolTable(getNamedOrIndexSignatureMembers(members));
58409 addInheritedMembers(members, getPropertiesOfType(baseConstructorType));
58410 }
58411 else if (baseConstructorType === anyType) {
58412 baseConstructorIndexInfo = createIndexInfo(stringType, anyType, /*isReadonly*/ false);
58413 }
58414 }
58415 var indexSymbol = getIndexSymbolFromSymbolTable(members);
58416 if (indexSymbol) {
58417 indexInfos = getIndexInfosOfIndexSymbol(indexSymbol);
58418 }
58419 else {
58420 if (baseConstructorIndexInfo) {
58421 indexInfos = ts.append(indexInfos, baseConstructorIndexInfo);
58422 }
58423 if (symbol.flags & 384 /* SymbolFlags.Enum */ && (getDeclaredTypeOfSymbol(symbol).flags & 32 /* TypeFlags.Enum */ ||

Callers 1

Calls 15

setStructuredTypeMembersFunction · 0.85
instantiateSignaturesFunction · 0.85
getSignaturesOfTypeFunction · 0.85
instantiateIndexInfosFunction · 0.85
getIndexInfosOfTypeFunction · 0.85
getMergedSymbolFunction · 0.85
getMembersOfSymbolFunction · 0.85
getSignaturesOfSymbolFunction · 0.85
getIndexInfosOfSymbolFunction · 0.85
getExportsOfSymbolFunction · 0.85

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…