1- import * as ts from "./_namespaces/ts";
21import {
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[] {
0 commit comments