1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
|
=== tests/cases/compiler/spreadBooleanRespectsFreshness.ts ===
type Foo = FooBase | FooArray;
>Foo : FooBase | FooArray
type FooBase = string | false;
>FooBase : string | false
>false : false
type FooArray = FooBase[];
>FooArray : FooBase[]
declare let foo1: Foo;
>foo1 : Foo
declare let foo2: Foo;
>foo2 : Foo
foo1 = [...Array.isArray(foo2) ? foo2 : [foo2]];
>foo1 = [...Array.isArray(foo2) ? foo2 : [foo2]] : FooBase[]
>foo1 : Foo
>[...Array.isArray(foo2) ? foo2 : [foo2]] : FooBase[]
>...Array.isArray(foo2) ? foo2 : [foo2] : FooBase
>Array.isArray(foo2) ? foo2 : [foo2] : FooArray
>Array.isArray(foo2) : boolean
>Array.isArray : (arg: any) => arg is any[]
>Array : ArrayConstructor
>isArray : (arg: any) => arg is any[]
>foo2 : Foo
>foo2 : FooArray
>[foo2] : FooBase[]
>foo2 : FooBase
|