@@ -35,13 +35,8 @@ let getter: { a: number, c: number } =
3535 { ...op , c : 7 }
3636getter . a = 12 ;
3737
38- // null, undefined, functions and primitives result in { }
39- let spreadNull = { ...null } ;
40- let spreadUndefind = { ...undefined } ;
41- let spreadNum = { ...12 } ;
42- let spreadBool = { ...false } ;
38+ // functions result in { }
4339let spreadFunc = { ...( function ( ) { } ) } ;
44- let spreadStr = { ...'foo' } ;
4540
4641// methods are not enumerable
4742class C { p = 1 ; m ( ) { } }
@@ -80,22 +75,6 @@ let computedAfter: { a: number, b: string, "at the end": number } =
8075let a = 12 ;
8176let shortCutted : { a : number , b : string } = { ...o , a }
8277
83- // generics
84- function f < T , U > ( t : T , u : U ) : { ...T , ...U , id : string } {
85- return { ...t , ...u , id : 'id' } ;
86- }
87- let exclusive : { id : string , a : number , b : string , c : string , d : boolean } =
88- f ( { a : 1 , b : 'yes' } , { c : 'no' , d : false } )
89- let overlap : { id : string , a : number , b : string } =
90- f ( { a : 1 } , { a : 2 , b : 'extra' } )
91- let overlapConflict : { id :string , a : string } =
92- f ( { a : 1 } , { a : 'mismatch' } )
93- let overwriteId : { id : string , a : number , c : number , d : string } =
94- f ( { a : 1 , id : true } , { c : 1 , d : 'no' } )
95-
96- class D { m ( ) { } ; q = 2 ; }
97- let classesAreWrong : { id : string , ...C , ...D } =
98- f ( new C ( ) , new D ( ) )
9978
10079
10180//// [objectSpread.js]
@@ -128,13 +107,8 @@ var propertyNested = __assign({ a: __assign({}, o) });
128107var op = { get a ( ) { return 6 ; } } ;
129108var getter = __assign ( { } , op , { c : 7 } ) ;
130109getter . a = 12 ;
131- // null, undefined, functions and primitives result in { }
132- var spreadNull = __assign ( { } , null ) ;
133- var spreadUndefind = __assign ( { } , undefined ) ;
134- var spreadNum = __assign ( { } , 12 ) ;
135- var spreadBool = __assign ( { } , false ) ;
110+ // functions result in { }
136111var spreadFunc = __assign ( { } , ( function ( ) { } ) ) ;
137- var spreadStr = __assign ( { } , 'foo' ) ;
138112// methods are not enumerable
139113var C = ( function ( ) {
140114 function C ( ) {
@@ -167,21 +141,4 @@ var computedAfter = __assign({}, o, (_c = { b: 'yeah' }, _c['at the end'] = 14,
167141// shortcut syntax
168142var a = 12 ;
169143var shortCutted = __assign ( { } , o , { a : a } ) ;
170- // generics
171- function f ( t , u ) {
172- return __assign ( { } , t , u , { id : 'id' } ) ;
173- }
174- var exclusive = f ( { a : 1 , b : 'yes' } , { c : 'no' , d : false } ) ;
175- var overlap = f ( { a : 1 } , { a : 2 , b : 'extra' } ) ;
176- var overlapConflict = f ( { a : 1 } , { a : 'mismatch' } ) ;
177- var overwriteId = f ( { a : 1 , id : true } , { c : 1 , d : 'no' } ) ;
178- var D = ( function ( ) {
179- function D ( ) {
180- this . q = 2 ;
181- }
182- D . prototype . m = function ( ) { } ;
183- ;
184- return D ;
185- } ( ) ) ;
186- var classesAreWrong = f ( new C ( ) , new D ( ) ) ;
187144var _a , _b , _c ;
0 commit comments