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

Function getTypeWithThisArgument

test/fixtures/snapshot/typescript.js:57893–57907  ·  view source on GitHub ↗
(type, thisArgument, needApparentType)

Source from the content-addressed store, hash-verified

57891 return symbol;
57892 }
57893 function getTypeWithThisArgument(type, thisArgument, needApparentType) {
57894 if (ts.getObjectFlags(type) & 4 /* ObjectFlags.Reference */) {
57895 var target = type.target;
57896 var typeArguments = getTypeArguments(type);
57897 if (ts.length(target.typeParameters) === ts.length(typeArguments)) {
57898 var ref = createTypeReference(target, ts.concatenate(typeArguments, [thisArgument || target.thisType]));
57899 return needApparentType ? getApparentType(ref) : ref;
57900 }
57901 }
57902 else if (type.flags & 2097152 /* TypeFlags.Intersection */) {
57903 var types = ts.sameMap(type.types, function (t) { return getTypeWithThisArgument(t, thisArgument, needApparentType); });
57904 return types !== type.types ? getIntersectionType(types) : type;
57905 }
57906 return needApparentType ? getApparentType(type) : type;
57907 }
57908 function resolveObjectTypeMembers(type, source, typeParameters, typeArguments) {
57909 var mapper;
57910 var members;

Callers 15

resolveObjectTypeMembersFunction · 0.85
structuredTypeRelatedToFunction · 0.85
getInferredTypeFunction · 0.85
checkSuperExpressionFunction · 0.85
checkTypeArgumentsFunction · 0.85
checkTypeParameterFunction · 0.85

Calls 5

getTypeArgumentsFunction · 0.85
createTypeReferenceFunction · 0.85
getApparentTypeFunction · 0.85
getIntersectionTypeFunction · 0.85
lengthMethod · 0.45

Tested by

no test coverage detected