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 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56
|
=== tests/cases/conformance/types/typeRelationships/assignmentCompatibility/assignmentCompatBetweenTupleAndArray.ts ===
var numStrTuple: [number, string];
>numStrTuple : [number, string]
var numNumTuple: [number, number];
>numNumTuple : [number, number]
var numEmptyObjTuple: [number, {}];
>numEmptyObjTuple : [number, {}]
var emptyObjTuple: [{}];
>emptyObjTuple : [{}]
var numArray: number[];
>numArray : number[]
var emptyObjArray: {}[];
>emptyObjArray : {}[]
// no error
numArray = numNumTuple;
>numArray = numNumTuple : [number, number]
>numArray : number[]
>numNumTuple : [number, number]
emptyObjArray = emptyObjTuple;
>emptyObjArray = emptyObjTuple : [{}]
>emptyObjArray : {}[]
>emptyObjTuple : [{}]
emptyObjArray = numStrTuple;
>emptyObjArray = numStrTuple : [number, string]
>emptyObjArray : {}[]
>numStrTuple : [number, string]
emptyObjArray = numNumTuple;
>emptyObjArray = numNumTuple : [number, number]
>emptyObjArray : {}[]
>numNumTuple : [number, number]
emptyObjArray = numEmptyObjTuple;
>emptyObjArray = numEmptyObjTuple : [number, {}]
>emptyObjArray : {}[]
>numEmptyObjTuple : [number, {}]
// error
numArray = numStrTuple;
>numArray = numStrTuple : [number, string]
>numArray : number[]
>numStrTuple : [number, string]
emptyObjTuple = emptyObjArray;
>emptyObjTuple = emptyObjArray : {}[]
>emptyObjTuple : [{}]
>emptyObjArray : {}[]
|