We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
1 parent 05ef9dd commit b9af986Copy full SHA for b9af986
4 files changed
tests/baselines/reference/objectSpreadScenarios.js
@@ -1,7 +1,7 @@
1
//// [objectSpreadScenarios.ts]
2
interface A1 { a: boolean }
3
interface B1 { b: number };
4
-function override<U>(initial: U, override: U): U {
+function override<U>(initial: U, override: U): { ...U, ...U } {
5
return { ...initial, ...override };
6
}
7
function update<U>(this: { u: U }, override: U): void {
tests/baselines/reference/objectSpreadScenarios.symbols
@@ -7,13 +7,14 @@ interface B1 { b: number };
>B1 : Symbol(B1, Decl(objectSpreadScenarios.ts, 0, 27))
8
>b : Symbol(B1.b, Decl(objectSpreadScenarios.ts, 1, 14))
9
10
11
>override : Symbol(override, Decl(objectSpreadScenarios.ts, 1, 27))
12
>U : Symbol(U, Decl(objectSpreadScenarios.ts, 2, 18))
13
>initial : Symbol(initial, Decl(objectSpreadScenarios.ts, 2, 21))
14
15
>override : Symbol(override, Decl(objectSpreadScenarios.ts, 2, 32))
16
17
+>U : Symbol(U, Decl(objectSpreadScenarios.ts, 2, 18))
18
19
20
tests/baselines/reference/objectSpreadScenarios.types
>B1 : B1
>b : number
->override : <U>(initial: U, override: U) => U
+>override : <U>(initial: U, override: U) => { ...U; ...U }
>U : U
>initial : U
>override : U
+>U : U
@@ -72,10 +73,10 @@ let b1: B1 = { b: 101 };
72
73
>101 : 101
74
75
a1 = override(a1, { a: false });
->a1 = override(a1, { a: false }) : A1
76
+>a1 = override(a1, { a: false }) : { ...A1; ...A1 }
77
>a1 : A1
->override(a1, { a: false }) : A1
78
+>override(a1, { a: false }) : { ...A1; ...A1 }
79
80
81
>{ a: false } : { a: false; }
82
>a : boolean
tests/cases/conformance/types/spread/objectSpreadScenarios.ts
@@ -1,6 +1,6 @@
0 commit comments