@@ -386,6 +386,148 @@ getExprType
386386| tst.ts:293:7:293:21 | payload.toFixed | (fractionDigits?: number) => string |
387387| tst.ts:293:7:293:23 | payload.toFixed() | string |
388388| tst.ts:293:15:293:21 | toFixed | (fractionDigits?: number) => string |
389+ | tst.ts:298:7:298:9 | key | typeof key |
390+ | tst.ts:298:13:298:18 | Symbol | SymbolConstructor |
391+ | tst.ts:298:13:298:20 | Symbol() | typeof key |
392+ | tst.ts:300:7:300:20 | numberOrString | "hello" \| 42 |
393+ | tst.ts:300:24:300:27 | Math | Math |
394+ | tst.ts:300:24:300:34 | Math.random | () => number |
395+ | tst.ts:300:24:300:36 | Math.random() | number |
396+ | tst.ts:300:24:300:42 | Math.random() < 0.5 | boolean |
397+ | tst.ts:300:24:300:57 | Math.ra ... "hello" | "hello" \| 42 |
398+ | tst.ts:300:29:300:34 | random | () => number |
399+ | tst.ts:300:40:300:42 | 0.5 | 0.5 |
400+ | tst.ts:300:46:300:47 | 42 | 42 |
401+ | tst.ts:300:51:300:57 | "hello" | "hello" |
402+ | tst.ts:302:5:302:7 | obj | { [key]: string \| number; } |
403+ | tst.ts:302:11:304:1 | {\\n [ke ... ring,\\n} | { [key]: string \| number; } |
404+ | tst.ts:303:4:303:6 | key | typeof key |
405+ | tst.ts:303:10:303:23 | numberOrString | "hello" \| 42 |
406+ | tst.ts:306:5:306:19 | typeof obj[key] | "string" \| "number" \| "bigint" \| "boolean" \| "s... |
407+ | tst.ts:306:5:306:32 | typeof ... string" | boolean |
408+ | tst.ts:306:12:306:14 | obj | { [key]: string \| number; } |
409+ | tst.ts:306:12:306:19 | obj[key] | string \| number |
410+ | tst.ts:306:16:306:18 | key | typeof key |
411+ | tst.ts:306:25:306:32 | "string" | "string" |
412+ | tst.ts:307:7:307:9 | str | string |
413+ | tst.ts:307:13:307:15 | obj | { [key]: string \| number; } |
414+ | tst.ts:307:13:307:20 | obj[key] | string |
415+ | tst.ts:307:17:307:19 | key | typeof key |
416+ | tst.ts:308:3:308:5 | str | string |
417+ | tst.ts:308:3:308:17 | str.toUpperCase | () => string |
418+ | tst.ts:308:3:308:19 | str.toUpperCase() | string |
419+ | tst.ts:308:7:308:17 | toUpperCase | () => string |
420+ | tst.ts:313:10:313:10 | f | <T>(arg: { produce: (n: string) => T; consume: ... |
421+ | tst.ts:313:15:313:17 | arg | { produce: (n: string) => T; consume: (x: T) =>... |
422+ | tst.ts:314:3:314:9 | produce | (n: string) => T |
423+ | tst.ts:314:12:314:27 | (n: string) => T | (n: string) => T |
424+ | tst.ts:314:13:314:13 | n | string |
425+ | tst.ts:315:3:315:9 | consume | (x: T) => void |
426+ | tst.ts:315:12:315:25 | (x: T) => void | (x: T) => void |
427+ | tst.ts:315:13:315:13 | x | T |
428+ | tst.ts:318:1:318:1 | f | <T>(arg: { produce: (n: string) => T; consume: ... |
429+ | tst.ts:318:1:321:2 | f({\\n p ... se()\\n}) | void |
430+ | tst.ts:318:3:321:1 | {\\n pro ... ase()\\n} | { produce: (n: string) => string; consume: (x: ... |
431+ | tst.ts:319:3:319:9 | produce | (n: string) => string |
432+ | tst.ts:319:12:319:12 | n | string |
433+ | tst.ts:319:12:319:17 | n => n | (n: string) => string |
434+ | tst.ts:319:17:319:17 | n | string |
435+ | tst.ts:320:3:320:9 | consume | (x: string) => string |
436+ | tst.ts:320:12:320:12 | x | string |
437+ | tst.ts:320:12:320:31 | x => x.toLowerCase() | (x: string) => string |
438+ | tst.ts:320:17:320:17 | x | string |
439+ | tst.ts:320:17:320:29 | x.toLowerCase | () => string |
440+ | tst.ts:320:17:320:31 | x.toLowerCase() | string |
441+ | tst.ts:320:19:320:29 | toLowerCase | () => string |
442+ | tst.ts:325:7:325:14 | ErrorMap | { new (entries?: readonly (readonly [string, Er... |
443+ | tst.ts:325:18:325:20 | Map | MapConstructor |
444+ | tst.ts:325:18:325:35 | Map<string, Error> | any |
445+ | tst.ts:327:7:327:14 | errorMap | Map<string, Error> |
446+ | tst.ts:327:18:327:31 | new ErrorMap() | Map<string, Error> |
447+ | tst.ts:327:22:327:29 | ErrorMap | { new (entries?: readonly (readonly [string, Er... |
448+ | tst.ts:338:7:338:7 | a | "a" \| "b" |
449+ | tst.ts:338:14:338:16 | 'a' | "a" |
450+ | tst.ts:343:3:343:5 | get | () => T |
451+ | tst.ts:343:8:343:14 | () => T | () => T |
452+ | tst.ts:344:3:344:5 | set | (value: T) => void |
453+ | tst.ts:344:8:344:25 | (value: T) => void | (value: T) => void |
454+ | tst.ts:344:9:344:13 | value | T |
455+ | tst.ts:347:7:347:11 | state | State<number> |
456+ | tst.ts:347:30:350:1 | {\\n get ... > { }\\n} | State<number> |
457+ | tst.ts:348:3:348:5 | get | () => number |
458+ | tst.ts:348:8:348:15 | () => 42 | () => number |
459+ | tst.ts:348:14:348:15 | 42 | 42 |
460+ | tst.ts:349:3:349:5 | set | (value: number) => void |
461+ | tst.ts:349:8:349:21 | (value) => { } | (value: number) => void |
462+ | tst.ts:349:9:349:13 | value | number |
463+ | tst.ts:352:7:352:14 | fortyTwo | number |
464+ | tst.ts:352:18:352:22 | state | State<number> |
465+ | tst.ts:352:18:352:26 | state.get | () => number |
466+ | tst.ts:352:18:352:28 | state.get() | number |
467+ | tst.ts:352:24:352:26 | get | () => number |
468+ | tst.ts:356:8:356:18 | tstModuleES | () => "a" \| "b" |
469+ | tst.ts:356:25:356:43 | './tstModuleES.mjs' | any |
470+ | tst.ts:358:1:358:7 | console | Console |
471+ | tst.ts:358:1:358:11 | console.log | (...data: any[]) => void |
472+ | tst.ts:358:1:358:26 | console ... leES()) | void |
473+ | tst.ts:358:9:358:11 | log | (...data: any[]) => void |
474+ | tst.ts:358:13:358:23 | tstModuleES | () => "a" \| "b" |
475+ | tst.ts:358:13:358:25 | tstModuleES() | "a" \| "b" |
476+ | tst.ts:360:10:360:21 | tstModuleCJS | () => "a" \| "b" |
477+ | tst.ts:360:10:360:21 | tstModuleCJS | () => "a" \| "b" |
478+ | tst.ts:360:30:360:49 | './tstModuleCJS.cjs' | any |
479+ | tst.ts:362:1:362:7 | console | Console |
480+ | tst.ts:362:1:362:11 | console.log | (...data: any[]) => void |
481+ | tst.ts:362:1:362:27 | console ... eCJS()) | void |
482+ | tst.ts:362:9:362:11 | log | (...data: any[]) => void |
483+ | tst.ts:362:13:362:24 | tstModuleCJS | () => "a" \| "b" |
484+ | tst.ts:362:13:362:26 | tstModuleCJS() | "a" \| "b" |
485+ | tst.ts:368:13:368:13 | A | typeof library-tests/TypeScript/Types/tstSuffixA.ts |
486+ | tst.ts:368:20:368:33 | './tstSuffixA' | any |
487+ | tst.ts:370:1:370:7 | console | Console |
488+ | tst.ts:370:1:370:11 | console.log | (...data: any[]) => void |
489+ | tst.ts:370:1:370:29 | console ... File()) | void |
490+ | tst.ts:370:9:370:11 | log | (...data: any[]) => void |
491+ | tst.ts:370:13:370:13 | A | typeof library-tests/TypeScript/Types/tstSuffixA.ts |
492+ | tst.ts:370:13:370:26 | A.resolvedFile | () => "tstSuffixA.ts" |
493+ | tst.ts:370:13:370:28 | A.resolvedFile() | "tstSuffixA.ts" |
494+ | tst.ts:370:15:370:26 | resolvedFile | () => "tstSuffixA.ts" |
495+ | tst.ts:372:13:372:13 | B | typeof library-tests/TypeScript/Types/tstSuffixB.ios.ts |
496+ | tst.ts:372:20:372:33 | './tstSuffixB' | any |
497+ | tst.ts:374:1:374:7 | console | Console |
498+ | tst.ts:374:1:374:11 | console.log | (...data: any[]) => void |
499+ | tst.ts:374:1:374:29 | console ... File()) | void |
500+ | tst.ts:374:9:374:11 | log | (...data: any[]) => void |
501+ | tst.ts:374:13:374:13 | B | typeof library-tests/TypeScript/Types/tstSuffixB.ios.ts |
502+ | tst.ts:374:13:374:26 | B.resolvedFile | () => "tstSuffixB.ios.ts" |
503+ | tst.ts:374:13:374:28 | B.resolvedFile() | "tstSuffixB.ios.ts" |
504+ | tst.ts:374:15:374:26 | resolvedFile | () => "tstSuffixB.ios.ts" |
505+ | tstModuleCJS.cts:1:17:1:28 | tstModuleCJS | () => "a" \| "b" |
506+ | tstModuleCJS.cts:2:12:2:15 | Math | Math |
507+ | tstModuleCJS.cts:2:12:2:22 | Math.random | () => number |
508+ | tstModuleCJS.cts:2:12:2:24 | Math.random() | number |
509+ | tstModuleCJS.cts:2:12:2:30 | Math.random() > 0.5 | boolean |
510+ | tstModuleCJS.cts:2:12:2:42 | Math.ra ... ' : 'b' | "a" \| "b" |
511+ | tstModuleCJS.cts:2:17:2:22 | random | () => number |
512+ | tstModuleCJS.cts:2:28:2:30 | 0.5 | 0.5 |
513+ | tstModuleCJS.cts:2:34:2:36 | 'a' | "a" |
514+ | tstModuleCJS.cts:2:40:2:42 | 'b' | "b" |
515+ | tstModuleES.mts:1:25:1:35 | tstModuleES | () => "a" \| "b" |
516+ | tstModuleES.mts:2:12:2:15 | Math | Math |
517+ | tstModuleES.mts:2:12:2:22 | Math.random | () => number |
518+ | tstModuleES.mts:2:12:2:24 | Math.random() | number |
519+ | tstModuleES.mts:2:12:2:30 | Math.random() > 0.5 | boolean |
520+ | tstModuleES.mts:2:12:2:42 | Math.ra ... ' : 'b' | "a" \| "b" |
521+ | tstModuleES.mts:2:17:2:22 | random | () => number |
522+ | tstModuleES.mts:2:28:2:30 | 0.5 | 0.5 |
523+ | tstModuleES.mts:2:34:2:36 | 'a' | "a" |
524+ | tstModuleES.mts:2:40:2:42 | 'b' | "b" |
525+ | tstSuffixA.ts:1:17:1:28 | resolvedFile | () => "tstSuffixA.ts" |
526+ | tstSuffixA.ts:2:12:2:26 | 'tstSuffixA.ts' | "tstSuffixA.ts" |
527+ | tstSuffixB.ios.ts:1:17:1:28 | resolvedFile | () => "tstSuffixB.ios.ts" |
528+ | tstSuffixB.ios.ts:2:12:2:30 | 'tstSuffixB.ios.ts' | "tstSuffixB.ios.ts" |
529+ | tstSuffixB.ts:1:17:1:28 | resolvedFile | () => "tstSuffixB.ts" |
530+ | tstSuffixB.ts:2:12:2:26 | 'tstSuffixB.ts' | "tstSuffixB.ts" |
389531| type_alias.ts:3:5:3:5 | b | boolean |
390532| type_alias.ts:7:5:7:5 | c | ValueOrArray<number> |
391533| type_alias.ts:14:9:14:32 | [proper ... ]: Json | any |
@@ -461,6 +603,9 @@ getTypeDefinitionType
461603| tst.ts:265:3:269:3 | interfa ... an;\\n } | TypeMap |
462604| tst.ts:271:3:276:7 | type Un ... }[P]; | UnionRecord<P> |
463605| tst.ts:289:3:289:63 | type Fu ... > void; | Func |
606+ | tst.ts:331:1:334:14 | type Fi ... never; | FirstString<T> |
607+ | tst.ts:336:1:336:51 | type F ... lean]>; | "a" \| "b" |
608+ | tst.ts:342:1:345:1 | interfa ... void;\\n} | State<T> |
464609| type_alias.ts:1:1:1:17 | type B = boolean; | boolean |
465610| type_alias.ts:5:1:5:50 | type Va ... ay<T>>; | ValueOrArray<T> |
466611| type_alias.ts:9:1:15:13 | type Js ... Json[]; | Json |
@@ -703,6 +848,48 @@ getTypeExprType
703848| tst.ts:289:47:289:52 | string | string |
704849| tst.ts:289:59:289:62 | void | void |
705850| tst.ts:291:13:291:16 | Func | Func |
851+ | tst.ts:313:12:313:12 | T | T |
852+ | tst.ts:313:20:315:27 | {\\n pro ... void } | { produce: (n: string) => T; consume: (x: T) =>... |
853+ | tst.ts:314:12:314:27 | (n: string) => T | (n: string) => T |
854+ | tst.ts:314:16:314:21 | string | string |
855+ | tst.ts:314:27:314:27 | T | T |
856+ | tst.ts:315:12:315:25 | (x: T) => void | (x: T) => void |
857+ | tst.ts:315:16:315:16 | T | T |
858+ | tst.ts:315:22:315:25 | void | void |
859+ | tst.ts:316:4:316:7 | void | void |
860+ | tst.ts:325:22:325:27 | string | string |
861+ | tst.ts:325:30:325:34 | Error | Error |
862+ | tst.ts:331:6:331:16 | FirstString | FirstString<T> |
863+ | tst.ts:331:18:331:18 | T | T |
864+ | tst.ts:336:6:336:6 | F | "a" \| "b" |
865+ | tst.ts:336:10:336:20 | FirstString | FirstString<T> |
866+ | tst.ts:336:10:336:50 | FirstSt ... olean]> | "a" \| "b" |
867+ | tst.ts:336:22:336:49 | ['a' \| ... oolean] | ["a" \| "b", number, boolean] |
868+ | tst.ts:336:23:336:25 | 'a' | "a" |
869+ | tst.ts:336:23:336:31 | 'a' \| 'b' | "a" \| "b" |
870+ | tst.ts:336:29:336:31 | 'b' | "b" |
871+ | tst.ts:336:34:336:39 | number | number |
872+ | tst.ts:336:42:336:48 | boolean | boolean |
873+ | tst.ts:338:10:338:10 | F | "a" \| "b" |
874+ | tst.ts:342:11:342:15 | State | State<T> |
875+ | tst.ts:342:24:342:24 | T | T |
876+ | tst.ts:343:8:343:14 | () => T | () => T |
877+ | tst.ts:343:14:343:14 | T | T |
878+ | tst.ts:344:8:344:25 | (value: T) => void | (value: T) => void |
879+ | tst.ts:344:16:344:16 | T | T |
880+ | tst.ts:344:22:344:25 | void | void |
881+ | tst.ts:347:14:347:18 | State | State<T> |
882+ | tst.ts:347:14:347:26 | State<number> | State<number> |
883+ | tst.ts:347:20:347:25 | number | number |
884+ | tstModuleCJS.cts:1:33:1:35 | 'a' | "a" |
885+ | tstModuleCJS.cts:1:33:1:41 | 'a' \| 'b' | "a" \| "b" |
886+ | tstModuleCJS.cts:1:39:1:41 | 'b' | "b" |
887+ | tstModuleES.mts:1:40:1:42 | 'a' | "a" |
888+ | tstModuleES.mts:1:40:1:48 | 'a' \| 'b' | "a" \| "b" |
889+ | tstModuleES.mts:1:46:1:48 | 'b' | "b" |
890+ | tstSuffixA.ts:1:33:1:47 | 'tstSuffixA.ts' | "tstSuffixA.ts" |
891+ | tstSuffixB.ios.ts:1:33:1:51 | 'tstSuffixB.ios.ts' | "tstSuffixB.ios.ts" |
892+ | tstSuffixB.ts:1:33:1:47 | 'tstSuffixB.ts' | "tstSuffixB.ts" |
706893| type_alias.ts:1:6:1:6 | B | boolean |
707894| type_alias.ts:1:10:1:16 | boolean | boolean |
708895| type_alias.ts:3:8:3:8 | B | boolean |
@@ -783,6 +970,7 @@ referenceDefinition
783970| E | type_definition_objects.ts:6:8:6:16 | enum E {} |
784971| EnumWithOneMember | type_definitions.ts:18:26:18:31 | member |
785972| Error | tst.ts:210:10:213:3 | interfa ... ng;\\n } |
973+ | FirstString<T> | tst.ts:331:1:334:14 | type Fi ... never; |
786974| Foo | tst.ts:116:3:129:3 | class F ... }\\n } |
787975| Foo | tst.ts:165:5:167:5 | interfa ... ;\\n } |
788976| Foo | tst.ts:179:3:192:3 | class F ... \\n } |
@@ -796,6 +984,8 @@ referenceDefinition
796984| NonAbstractDummy | tst.ts:54:1:56:1 | interfa ... mber;\\n} |
797985| Person | tst.ts:222:3:234:3 | class P ... }\\n } |
798986| Shape | tst.ts:140:3:142:47 | type Sh ... mber }; |
987+ | State<T> | tst.ts:342:1:345:1 | interfa ... void;\\n} |
988+ | State<number> | tst.ts:342:1:345:1 | interfa ... void;\\n} |
799989| Sub | tst.ts:97:3:101:3 | class S ... }\\n } |
800990| Success | tst.ts:205:10:208:3 | interfa ... ng;\\n } |
801991| Super | tst.ts:91:3:95:3 | class S ... }\\n } |
@@ -852,16 +1042,20 @@ abstractSignature
8521042unionIndex
8531043| 1 | 0 | 1 \| 2 |
8541044| 2 | 1 | 1 \| 2 |
1045+ | 42 | 1 | "hello" \| 42 |
8551046| "NumberContents" | 0 | "NumberContents" \| "StringContents" |
8561047| "StringContents" | 1 | "NumberContents" \| "StringContents" |
8571048| "a" | 0 | "a" \| "b" |
8581049| "a" | 1 | number \| "a" |
1050+ | "a" | 3 | number \| boolean \| "a" \| "b" |
8591051| "b" | 1 | "a" \| "b" |
1052+ | "b" | 4 | number \| boolean \| "a" \| "b" |
8601053| "bigint" | 2 | "string" \| "number" \| "bigint" \| "boolean" \| "s... |
8611054| "boolean" | 2 | keyof TypeMap |
8621055| "boolean" | 3 | "string" \| "number" \| "bigint" \| "boolean" \| "s... |
8631056| "circle" | 0 | "circle" \| "square" |
8641057| "function" | 7 | "string" \| "number" \| "bigint" \| "boolean" \| "s... |
1058+ | "hello" | 0 | "hello" \| 42 |
8651059| "number" | 1 | "string" \| "number" \| "bigint" \| "boolean" \| "s... |
8661060| "number" | 1 | keyof TypeMap |
8671061| "object" | 6 | "string" \| "number" \| "bigint" \| "boolean" \| "s... |
@@ -871,6 +1065,7 @@ unionIndex
8711065| "symbol" | 4 | "string" \| "number" \| "bigint" \| "boolean" \| "s... |
8721066| "undefined" | 5 | "string" \| "number" \| "bigint" \| "boolean" \| "s... |
8731067| Error | 1 | Success \| Error |
1068+ | Error | 1 | string \| Error |
8741069| Json[] | 5 | string \| number \| boolean \| { [property: string... |
8751070| Promise<number> | 2 | boolean \| Promise<number> |
8761071| PromiseLike<TResult1> | 1 | TResult1 \| PromiseLike<TResult1> |
@@ -890,16 +1085,19 @@ unionIndex
8901085| false | 0 | boolean |
8911086| false | 0 | boolean \| Promise<number> |
8921087| false | 1 | number \| boolean |
1088+ | false | 1 | number \| boolean \| "a" \| "b" |
8931089| false | 2 | string \| number \| boolean |
8941090| false | 2 | string \| number \| boolean \| { [property: string... |
8951091| number | 0 | number \| "a" |
8961092| number | 0 | number \| ValueOrArray<number>[] |
8971093| number | 0 | number \| boolean |
1094+ | number | 0 | number \| boolean \| "a" \| "b" |
8981095| number | 1 | string \| number |
8991096| number | 1 | string \| number \| boolean |
9001097| number | 1 | string \| number \| boolean \| { [property: string... |
9011098| number | 1 | string \| number \| true |
9021099| string | 0 | VirtualNode \| { [key: string]: any; } |
1100+ | string | 0 | string \| Error |
9031101| string | 0 | string \| [string, { [key: string]: any; }, ...V... |
9041102| string | 0 | string \| number |
9051103| string | 0 | string \| number \| boolean |
@@ -911,6 +1109,7 @@ unionIndex
9111109| true | 1 | boolean |
9121110| true | 1 | boolean \| Promise<number> |
9131111| true | 2 | number \| boolean |
1112+ | true | 2 | number \| boolean \| "a" \| "b" |
9141113| true | 2 | string \| number \| true |
9151114| true | 3 | string \| number \| boolean |
9161115| true | 3 | string \| number \| boolean \| { [property: string... |
0 commit comments