Skip to content

Commit 77c8da7

Browse files
author
Chris Brody
authoredAug 26, 2020
test(TypeScript): test ...infer type with parens (#9056)
1 parent ee57066 commit 77c8da7

File tree

2 files changed

+18
-0
lines changed

2 files changed

+18
-0
lines changed
 

‎tests/typescript/rest-type/__snapshots__/jsfmt.spec.js.snap

+12
Original file line numberDiff line numberDiff line change
@@ -22,13 +22,25 @@ printWidth: 80
2222
=====================================input======================================
2323
type Tail<T extends any[]> = T extends [infer U, ...infer R] ? R : never;
2424
25+
// should remove parens from this, to avoid a type issue with TypeScript 4.0:
26+
type Tail2<T extends any[]> = T extends [infer U, ...(infer R)] ? R : never;
27+
28+
// but not remove parens from this:
29+
type Tail3<T extends any[]> = T extends [infer U, ...(infer R)[]] ? R : never;
30+
2531
type ReduceNextElement<
2632
T extends readonly unknown[]
2733
> = T extends readonly [infer V, ...infer R] ? [V, R] : never
2834
2935
=====================================output=====================================
3036
type Tail<T extends any[]> = T extends [infer U, ...infer R] ? R : never;
3137
38+
// should remove parens from this, to avoid a type issue with TypeScript 4.0:
39+
type Tail2<T extends any[]> = T extends [infer U, ...infer R] ? R : never;
40+
41+
// but not remove parens from this:
42+
type Tail3<T extends any[]> = T extends [infer U, ...(infer R)[]] ? R : never;
43+
3244
type ReduceNextElement<T extends readonly unknown[]> = T extends readonly [
3345
infer V,
3446
...infer R
+6
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,11 @@
11
type Tail<T extends any[]> = T extends [infer U, ...infer R] ? R : never;
22

3+
// should remove parens from this, to avoid a type issue with TypeScript 4.0:
4+
type Tail2<T extends any[]> = T extends [infer U, ...(infer R)] ? R : never;
5+
6+
// but not remove parens from this:
7+
type Tail3<T extends any[]> = T extends [infer U, ...(infer R)[]] ? R : never;
8+
39
type ReduceNextElement<
410
T extends readonly unknown[]
511
> = T extends readonly [infer V, ...infer R] ? [V, R] : never

0 commit comments

Comments
 (0)
Please sign in to comment.