Skip to content

Commit e88fe15

Browse files
authored
Remove ts namespace import from checker (#52890)
1 parent e1ae30e commit e88fe15

File tree

4 files changed

+8
-13
lines changed

4 files changed

+8
-13
lines changed

src/compiler/checker.ts

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
import * as ts from "./_namespaces/ts";
21
import {
32
__String,
43
AccessExpression,
@@ -387,6 +386,7 @@ import {
387386
hasStaticModifier,
388387
hasSyntacticModifier,
389388
hasSyntacticModifiers,
389+
hasType,
390390
HeritageClause,
391391
Identifier,
392392
identifierToKeywordKind,
@@ -1816,6 +1816,7 @@ export function createTypeChecker(host: TypeCheckerHost): TypeChecker {
18161816
getTypeOnlyAliasDeclaration,
18171817
getMemberOverrideModifierStatus,
18181818
isTypeParameterPossiblyReferenced,
1819+
typeHasCallOrConstructSignatures,
18191820
};
18201821

18211822
function runWithoutResolvedSignatureCaching<T>(node: Node | undefined, fn: () => T): T {
@@ -10069,7 +10070,7 @@ export function createTypeChecker(host: TypeCheckerHost): TypeChecker {
1006910070

1007010071
function findResolutionCycleStartIndex(target: TypeSystemEntity, propertyName: TypeSystemPropertyName): number {
1007110072
for (let i = resolutionTargets.length - 1; i >= 0; i--) {
10072-
if (hasType(resolutionTargets[i], resolutionPropertyNames[i])) {
10073+
if (resolutionTargetHasProperty(resolutionTargets[i], resolutionPropertyNames[i])) {
1007310074
return -1;
1007410075
}
1007510076
if (resolutionTargets[i] === target && resolutionPropertyNames[i] === propertyName) {
@@ -10079,7 +10080,7 @@ export function createTypeChecker(host: TypeCheckerHost): TypeChecker {
1007910080
return -1;
1008010081
}
1008110082

10082-
function hasType(target: TypeSystemEntity, propertyName: TypeSystemPropertyName): boolean {
10083+
function resolutionTargetHasProperty(target: TypeSystemEntity, propertyName: TypeSystemPropertyName): boolean {
1008310084
switch (propertyName) {
1008410085
case TypeSystemPropertyName.Type:
1008510086
return !!getSymbolLinks(target as Symbol).type;
@@ -19260,7 +19261,7 @@ export function createTypeChecker(host: TypeCheckerHost): TypeChecker {
1926019261
return false;
1926119262
}
1926219263
// Or functions with annotated parameter types
19263-
if (some(node.parameters, ts.hasType)) {
19264+
if (some(node.parameters, hasType)) {
1926419265
return false;
1926519266
}
1926619267
const sourceSig = getSingleCallSignature(source);
@@ -45567,7 +45568,7 @@ export function createTypeChecker(host: TypeCheckerHost): TypeChecker {
4556745568
}
4556845569

4556945570
function typeHasCallOrConstructSignatures(type: Type): boolean {
45570-
return ts.typeHasCallOrConstructSignatures(type, checker);
45571+
return getSignaturesOfType(type, SignatureKind.Call).length !== 0 || getSignaturesOfType(type, SignatureKind.Construct).length !== 0;
4557145572
}
4557245573

4557345574
function getRootSymbols(symbol: Symbol): readonly Symbol[] {

src/compiler/types.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5240,6 +5240,7 @@ export interface TypeChecker {
52405240
/** @internal */ getTypeOnlyAliasDeclaration(symbol: Symbol): TypeOnlyAliasDeclaration | undefined;
52415241
/** @internal */ getMemberOverrideModifierStatus(node: ClassLikeDeclaration, member: ClassElement, memberSymbol: Symbol): MemberOverrideStatus;
52425242
/** @internal */ isTypeParameterPossiblyReferenced(tp: TypeParameter, node: Node): boolean;
5243+
/** @internal */ typeHasCallOrConstructSignatures(type: Type): boolean;
52435244
}
52445245

52455246
/** @internal */

src/compiler/utilities.ts

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -464,7 +464,6 @@ import {
464464
Signature,
465465
SignatureDeclaration,
466466
SignatureFlags,
467-
SignatureKind,
468467
singleElementArray,
469468
singleOrUndefined,
470469
skipOuterExpressions,
@@ -7645,11 +7644,6 @@ export function getObjectFlags(type: Type): ObjectFlags {
76457644
return type.flags & TypeFlags.ObjectFlagsType ? (type as ObjectFlagsType).objectFlags : 0;
76467645
}
76477646

7648-
/** @internal */
7649-
export function typeHasCallOrConstructSignatures(type: Type, checker: TypeChecker) {
7650-
return checker.getSignaturesOfType(type, SignatureKind.Call).length !== 0 || checker.getSignaturesOfType(type, SignatureKind.Construct).length !== 0;
7651-
}
7652-
76537647
/** @internal */
76547648
export function forSomeAncestorDirectory(directory: string, callback: (directory: string) => boolean): boolean {
76557649
return !!forEachAncestorDirectory(directory, d => callback(d) ? true : undefined);

src/services/completions.ts

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -347,7 +347,6 @@ import {
347347
TypeChecker,
348348
TypeElement,
349349
TypeFlags,
350-
typeHasCallOrConstructSignatures,
351350
TypeLiteralNode,
352351
TypeNode,
353352
TypeOnlyImportDeclaration,
@@ -4774,7 +4773,7 @@ function getApparentProperties(type: Type, node: ObjectLiteralExpression | JsxAt
47744773
!(memberType.flags & TypeFlags.Primitive
47754774
|| checker.isArrayLikeType(memberType)
47764775
|| checker.isTypeInvalidDueToUnionDiscriminant(memberType, node)
4777-
|| typeHasCallOrConstructSignatures(memberType, checker)
4776+
|| checker.typeHasCallOrConstructSignatures(memberType)
47784777
|| memberType.isClass() && containsNonPublicProperties(memberType.getApparentProperties()))));
47794778
}
47804779

0 commit comments

Comments
 (0)