@@ -447,34 +447,14 @@ export class Resolver extends DiagnosticEmitter {
447447 } else {
448448 if ( returnTypeNode . kind == NodeKind . TupleType && ( < TupleTypeNode > returnTypeNode ) . isReadonly ) {
449449 returnType = Type . void ;
450- returnTypes = this . resolveMultiValueReturnTypes (
451- < TupleTypeNode > returnTypeNode ,
452- flow ,
453- ctxElement ,
454- ctxTypes ,
455- reportMode
456- ) ;
450+ returnTypes = this . resolveMultiValueReturnTypes ( < TupleTypeNode > returnTypeNode , flow , ctxElement , ctxTypes , reportMode ) ;
457451 if ( ! returnTypes ) return null ;
458452 } else {
459- returnType = this . resolveType (
460- returnTypeNode ,
461- flow ,
462- ctxElement ,
463- ctxTypes ,
464- reportMode
465- ) ;
453+ returnType = this . resolveType ( returnTypeNode , flow , ctxElement , ctxTypes , reportMode ) ;
466454 }
467455 if ( ! returnType ) return null ;
468456 }
469- let signature = Signature . create (
470- this . program ,
471- parameterTypes ,
472- returnType ,
473- thisType ,
474- requiredParameters ,
475- hasRest ,
476- returnTypes
477- ) ;
457+ let signature = Signature . create ( this . program , parameterTypes , returnType , thisType , requiredParameters , hasRest , returnTypes ) ;
478458 return node . isNullable ? signature . type . asNullable ( ) : signature . type ;
479459 }
480460
@@ -2998,36 +2978,16 @@ export class Resolver extends DiagnosticEmitter {
29982978 }
29992979 if ( typeNode . kind == NodeKind . TupleType && ( < TupleTypeNode > typeNode ) . isReadonly ) {
30002980 returnType = Type . void ;
3001- returnTypes = this . resolveMultiValueReturnTypes (
3002- < TupleTypeNode > typeNode ,
3003- null ,
3004- prototype . parent ,
3005- ctxTypes ,
3006- reportMode
3007- ) ;
2981+ returnTypes = this . resolveMultiValueReturnTypes ( < TupleTypeNode > typeNode , null , prototype . parent , ctxTypes , reportMode ) ;
30082982 if ( ! returnTypes ) return null ;
30092983 } else {
3010- let type = this . resolveType (
3011- typeNode ,
3012- null ,
3013- prototype . parent , // relative to function
3014- ctxTypes ,
3015- reportMode
3016- ) ;
2984+ let type = this . resolveType ( typeNode , null , prototype . parent , ctxTypes , reportMode ) ;
30172985 if ( ! type ) return null ;
30182986 returnType = type ;
30192987 }
30202988 }
30212989
3022- let signature = Signature . create (
3023- this . program ,
3024- parameterTypes ,
3025- returnType ,
3026- thisType ,
3027- requiredParameters ,
3028- hasRest ,
3029- returnTypes
3030- ) ;
2990+ let signature = Signature . create ( this . program , parameterTypes , returnType , thisType , requiredParameters , hasRest , returnTypes ) ;
30312991
30322992 let nameInclTypeParameters = prototype . name ;
30332993 if ( instanceKey . length ) nameInclTypeParameters += `<${ instanceKey } >` ;
0 commit comments