File tree Expand file tree Collapse file tree 2 files changed +32
-9
lines changed
packages/language-core/lib/generators
test-workspace/tsc/vue3/#3845 Expand file tree Collapse file tree 2 files changed +32
-9
lines changed Original file line number Diff line number Diff line change @@ -211,19 +211,25 @@ const __VLS_intrinsicElements: __VLS_IntrinsicElements;
211
211
function __VLS_getVForSourceType(source: number): [number, number, number][];
212
212
function __VLS_getVForSourceType(source: string): [string, number, number][];
213
213
function __VLS_getVForSourceType<T extends any[]>(source: T): [
214
- T[number], // item
215
- number, // key
216
- number, // index
214
+ item: T[number],
215
+ key: number,
216
+ index: number,
217
217
][];
218
218
function __VLS_getVForSourceType<T extends { [Symbol.iterator](): Iterator<any> }>(source: T): [
219
- T extends { [Symbol.iterator](): Iterator<infer T1> } ? T1 : never, // item
220
- number, // key
221
- undefined, // index
219
+ item: T extends { [Symbol.iterator](): Iterator<infer T1> } ? T1 : never,
220
+ key: number,
221
+ index: undefined,
222
+ ][];
223
+ // #3845
224
+ function __VLS_getVForSourceType<T extends number | { [Symbol.iterator](): Iterator<any> }>(source: T): [
225
+ item: number | (Exclude<T, number> extends { [Symbol.iterator](): Iterator<infer T1> } ? T1 : never),
226
+ key: number,
227
+ index: undefined,
222
228
][];
223
229
function __VLS_getVForSourceType<T>(source: T): [
224
- T[keyof T], // item
225
- keyof T, // key
226
- number, // index
230
+ item: T[keyof T],
231
+ key: keyof T,
232
+ index: number,
227
233
][];
228
234
229
235
// @ts-ignore
Original file line number Diff line number Diff line change
1
+ <script setup lang="ts">
2
+ import { exactType } from ' ../../shared' ;
3
+
4
+ declare const list1: number | number [];
5
+ declare const list2: string | number [];
6
+ declare const list3: string | number ;
7
+ declare const list4: string | number | { [Symbol .iterator ](): Iterator <any > };
8
+ declare const list5: string | number | Set <string >;
9
+ </script >
10
+
11
+ <template >
12
+ <div v-for =" f in list1" :key =" f" >{{ exactType(f, 1 as number) }}</div >
13
+ <div v-for =" f in list2" :key =" f" >{{ exactType(f, 1 as string | number) }}</div >
14
+ <div v-for =" f in list3" :key =" f" >{{ exactType(f, 1 as string | number) }}</div >
15
+ <div v-for =" f in list4" :key =" f" >{{ exactType(f, 1 as any) }}</div >
16
+ <div v-for =" f in list5" :key =" f" >{{ exactType(f, 1 as string | number | string) }}</div >
17
+ </template >
You can’t perform that action at this time.
0 commit comments