|
|
|
@@ -108,247 +108,279 @@ type T40 = Boxified<A | A[] | ReadonlyArray<A> | [A, B] | string | string[]>;
|
|
|
|
|
>A : Symbol(A, Decl(mappedTypesArraysTuples.ts, 22, 39))
|
|
|
|
|
>B : Symbol(B, Decl(mappedTypesArraysTuples.ts, 24, 23))
|
|
|
|
|
|
|
|
|
|
type ReadWrite<T> = { -readonly [P in keyof T] : T[P] };
|
|
|
|
|
>ReadWrite : Symbol(ReadWrite, Decl(mappedTypesArraysTuples.ts, 27, 77))
|
|
|
|
|
>T : Symbol(T, Decl(mappedTypesArraysTuples.ts, 29, 15))
|
|
|
|
|
>P : Symbol(P, Decl(mappedTypesArraysTuples.ts, 29, 33))
|
|
|
|
|
>T : Symbol(T, Decl(mappedTypesArraysTuples.ts, 29, 15))
|
|
|
|
|
>T : Symbol(T, Decl(mappedTypesArraysTuples.ts, 29, 15))
|
|
|
|
|
>P : Symbol(P, Decl(mappedTypesArraysTuples.ts, 29, 33))
|
|
|
|
|
|
|
|
|
|
type T50 = Readonly<string[]>;
|
|
|
|
|
>T50 : Symbol(T50, Decl(mappedTypesArraysTuples.ts, 29, 56))
|
|
|
|
|
>Readonly : Symbol(Readonly, Decl(lib.es5.d.ts, --, --))
|
|
|
|
|
|
|
|
|
|
type T51 = Readonly<[number, number]>;
|
|
|
|
|
>T51 : Symbol(T51, Decl(mappedTypesArraysTuples.ts, 31, 30))
|
|
|
|
|
>Readonly : Symbol(Readonly, Decl(lib.es5.d.ts, --, --))
|
|
|
|
|
|
|
|
|
|
type T52 = Partial<Readonly<string[]>>;
|
|
|
|
|
>T52 : Symbol(T52, Decl(mappedTypesArraysTuples.ts, 32, 38))
|
|
|
|
|
>Partial : Symbol(Partial, Decl(lib.es5.d.ts, --, --))
|
|
|
|
|
>Readonly : Symbol(Readonly, Decl(lib.es5.d.ts, --, --))
|
|
|
|
|
|
|
|
|
|
type T53 = Readonly<Partial<string[]>>;
|
|
|
|
|
>T53 : Symbol(T53, Decl(mappedTypesArraysTuples.ts, 33, 39))
|
|
|
|
|
>Readonly : Symbol(Readonly, Decl(lib.es5.d.ts, --, --))
|
|
|
|
|
>Partial : Symbol(Partial, Decl(lib.es5.d.ts, --, --))
|
|
|
|
|
|
|
|
|
|
type T54 = ReadWrite<Required<T53>>;
|
|
|
|
|
>T54 : Symbol(T54, Decl(mappedTypesArraysTuples.ts, 34, 39))
|
|
|
|
|
>ReadWrite : Symbol(ReadWrite, Decl(mappedTypesArraysTuples.ts, 27, 77))
|
|
|
|
|
>Required : Symbol(Required, Decl(lib.es5.d.ts, --, --))
|
|
|
|
|
>T53 : Symbol(T53, Decl(mappedTypesArraysTuples.ts, 33, 39))
|
|
|
|
|
|
|
|
|
|
declare function unboxify<T>(x: Boxified<T>): T;
|
|
|
|
|
>unboxify : Symbol(unboxify, Decl(mappedTypesArraysTuples.ts, 27, 77))
|
|
|
|
|
>T : Symbol(T, Decl(mappedTypesArraysTuples.ts, 29, 26))
|
|
|
|
|
>x : Symbol(x, Decl(mappedTypesArraysTuples.ts, 29, 29))
|
|
|
|
|
>unboxify : Symbol(unboxify, Decl(mappedTypesArraysTuples.ts, 35, 36))
|
|
|
|
|
>T : Symbol(T, Decl(mappedTypesArraysTuples.ts, 37, 26))
|
|
|
|
|
>x : Symbol(x, Decl(mappedTypesArraysTuples.ts, 37, 29))
|
|
|
|
|
>Boxified : Symbol(Boxified, Decl(mappedTypesArraysTuples.ts, 0, 27))
|
|
|
|
|
>T : Symbol(T, Decl(mappedTypesArraysTuples.ts, 29, 26))
|
|
|
|
|
>T : Symbol(T, Decl(mappedTypesArraysTuples.ts, 29, 26))
|
|
|
|
|
>T : Symbol(T, Decl(mappedTypesArraysTuples.ts, 37, 26))
|
|
|
|
|
>T : Symbol(T, Decl(mappedTypesArraysTuples.ts, 37, 26))
|
|
|
|
|
|
|
|
|
|
declare let x10: [Box<number>, Box<string>, ...Box<boolean>[]];
|
|
|
|
|
>x10 : Symbol(x10, Decl(mappedTypesArraysTuples.ts, 31, 11))
|
|
|
|
|
>x10 : Symbol(x10, Decl(mappedTypesArraysTuples.ts, 39, 11))
|
|
|
|
|
>Box : Symbol(Box, Decl(mappedTypesArraysTuples.ts, 0, 0))
|
|
|
|
|
>Box : Symbol(Box, Decl(mappedTypesArraysTuples.ts, 0, 0))
|
|
|
|
|
>Box : Symbol(Box, Decl(mappedTypesArraysTuples.ts, 0, 0))
|
|
|
|
|
|
|
|
|
|
let y10 = unboxify(x10);
|
|
|
|
|
>y10 : Symbol(y10, Decl(mappedTypesArraysTuples.ts, 32, 3))
|
|
|
|
|
>unboxify : Symbol(unboxify, Decl(mappedTypesArraysTuples.ts, 27, 77))
|
|
|
|
|
>x10 : Symbol(x10, Decl(mappedTypesArraysTuples.ts, 31, 11))
|
|
|
|
|
>y10 : Symbol(y10, Decl(mappedTypesArraysTuples.ts, 40, 3))
|
|
|
|
|
>unboxify : Symbol(unboxify, Decl(mappedTypesArraysTuples.ts, 35, 36))
|
|
|
|
|
>x10 : Symbol(x10, Decl(mappedTypesArraysTuples.ts, 39, 11))
|
|
|
|
|
|
|
|
|
|
declare let x11: Box<number>[];
|
|
|
|
|
>x11 : Symbol(x11, Decl(mappedTypesArraysTuples.ts, 34, 11))
|
|
|
|
|
>x11 : Symbol(x11, Decl(mappedTypesArraysTuples.ts, 42, 11))
|
|
|
|
|
>Box : Symbol(Box, Decl(mappedTypesArraysTuples.ts, 0, 0))
|
|
|
|
|
|
|
|
|
|
let y11 = unboxify(x11);
|
|
|
|
|
>y11 : Symbol(y11, Decl(mappedTypesArraysTuples.ts, 35, 3))
|
|
|
|
|
>unboxify : Symbol(unboxify, Decl(mappedTypesArraysTuples.ts, 27, 77))
|
|
|
|
|
>x11 : Symbol(x11, Decl(mappedTypesArraysTuples.ts, 34, 11))
|
|
|
|
|
>y11 : Symbol(y11, Decl(mappedTypesArraysTuples.ts, 43, 3))
|
|
|
|
|
>unboxify : Symbol(unboxify, Decl(mappedTypesArraysTuples.ts, 35, 36))
|
|
|
|
|
>x11 : Symbol(x11, Decl(mappedTypesArraysTuples.ts, 42, 11))
|
|
|
|
|
|
|
|
|
|
declare let x12: { a: Box<number>, b: Box<string[]> };
|
|
|
|
|
>x12 : Symbol(x12, Decl(mappedTypesArraysTuples.ts, 37, 11))
|
|
|
|
|
>a : Symbol(a, Decl(mappedTypesArraysTuples.ts, 37, 18))
|
|
|
|
|
>x12 : Symbol(x12, Decl(mappedTypesArraysTuples.ts, 45, 11))
|
|
|
|
|
>a : Symbol(a, Decl(mappedTypesArraysTuples.ts, 45, 18))
|
|
|
|
|
>Box : Symbol(Box, Decl(mappedTypesArraysTuples.ts, 0, 0))
|
|
|
|
|
>b : Symbol(b, Decl(mappedTypesArraysTuples.ts, 37, 34))
|
|
|
|
|
>b : Symbol(b, Decl(mappedTypesArraysTuples.ts, 45, 34))
|
|
|
|
|
>Box : Symbol(Box, Decl(mappedTypesArraysTuples.ts, 0, 0))
|
|
|
|
|
|
|
|
|
|
let y12 = unboxify(x12);
|
|
|
|
|
>y12 : Symbol(y12, Decl(mappedTypesArraysTuples.ts, 38, 3))
|
|
|
|
|
>unboxify : Symbol(unboxify, Decl(mappedTypesArraysTuples.ts, 27, 77))
|
|
|
|
|
>x12 : Symbol(x12, Decl(mappedTypesArraysTuples.ts, 37, 11))
|
|
|
|
|
>y12 : Symbol(y12, Decl(mappedTypesArraysTuples.ts, 46, 3))
|
|
|
|
|
>unboxify : Symbol(unboxify, Decl(mappedTypesArraysTuples.ts, 35, 36))
|
|
|
|
|
>x12 : Symbol(x12, Decl(mappedTypesArraysTuples.ts, 45, 11))
|
|
|
|
|
|
|
|
|
|
declare function nonpartial<T>(x: Partial<T>): T;
|
|
|
|
|
>nonpartial : Symbol(nonpartial, Decl(mappedTypesArraysTuples.ts, 38, 24))
|
|
|
|
|
>T : Symbol(T, Decl(mappedTypesArraysTuples.ts, 40, 28))
|
|
|
|
|
>x : Symbol(x, Decl(mappedTypesArraysTuples.ts, 40, 31))
|
|
|
|
|
>nonpartial : Symbol(nonpartial, Decl(mappedTypesArraysTuples.ts, 46, 24))
|
|
|
|
|
>T : Symbol(T, Decl(mappedTypesArraysTuples.ts, 48, 28))
|
|
|
|
|
>x : Symbol(x, Decl(mappedTypesArraysTuples.ts, 48, 31))
|
|
|
|
|
>Partial : Symbol(Partial, Decl(lib.es5.d.ts, --, --))
|
|
|
|
|
>T : Symbol(T, Decl(mappedTypesArraysTuples.ts, 40, 28))
|
|
|
|
|
>T : Symbol(T, Decl(mappedTypesArraysTuples.ts, 40, 28))
|
|
|
|
|
>T : Symbol(T, Decl(mappedTypesArraysTuples.ts, 48, 28))
|
|
|
|
|
>T : Symbol(T, Decl(mappedTypesArraysTuples.ts, 48, 28))
|
|
|
|
|
|
|
|
|
|
declare let x20: [number | undefined, string?, ...boolean[]];
|
|
|
|
|
>x20 : Symbol(x20, Decl(mappedTypesArraysTuples.ts, 42, 11))
|
|
|
|
|
>x20 : Symbol(x20, Decl(mappedTypesArraysTuples.ts, 50, 11))
|
|
|
|
|
|
|
|
|
|
let y20 = nonpartial(x20);
|
|
|
|
|
>y20 : Symbol(y20, Decl(mappedTypesArraysTuples.ts, 43, 3))
|
|
|
|
|
>nonpartial : Symbol(nonpartial, Decl(mappedTypesArraysTuples.ts, 38, 24))
|
|
|
|
|
>x20 : Symbol(x20, Decl(mappedTypesArraysTuples.ts, 42, 11))
|
|
|
|
|
>y20 : Symbol(y20, Decl(mappedTypesArraysTuples.ts, 51, 3))
|
|
|
|
|
>nonpartial : Symbol(nonpartial, Decl(mappedTypesArraysTuples.ts, 46, 24))
|
|
|
|
|
>x20 : Symbol(x20, Decl(mappedTypesArraysTuples.ts, 50, 11))
|
|
|
|
|
|
|
|
|
|
declare let x21: (number | undefined)[];
|
|
|
|
|
>x21 : Symbol(x21, Decl(mappedTypesArraysTuples.ts, 45, 11))
|
|
|
|
|
>x21 : Symbol(x21, Decl(mappedTypesArraysTuples.ts, 53, 11))
|
|
|
|
|
|
|
|
|
|
let y21 = nonpartial(x21);
|
|
|
|
|
>y21 : Symbol(y21, Decl(mappedTypesArraysTuples.ts, 46, 3))
|
|
|
|
|
>nonpartial : Symbol(nonpartial, Decl(mappedTypesArraysTuples.ts, 38, 24))
|
|
|
|
|
>x21 : Symbol(x21, Decl(mappedTypesArraysTuples.ts, 45, 11))
|
|
|
|
|
>y21 : Symbol(y21, Decl(mappedTypesArraysTuples.ts, 54, 3))
|
|
|
|
|
>nonpartial : Symbol(nonpartial, Decl(mappedTypesArraysTuples.ts, 46, 24))
|
|
|
|
|
>x21 : Symbol(x21, Decl(mappedTypesArraysTuples.ts, 53, 11))
|
|
|
|
|
|
|
|
|
|
declare let x22: { a: number | undefined, b?: string[] };
|
|
|
|
|
>x22 : Symbol(x22, Decl(mappedTypesArraysTuples.ts, 48, 11))
|
|
|
|
|
>a : Symbol(a, Decl(mappedTypesArraysTuples.ts, 48, 18))
|
|
|
|
|
>b : Symbol(b, Decl(mappedTypesArraysTuples.ts, 48, 41))
|
|
|
|
|
>x22 : Symbol(x22, Decl(mappedTypesArraysTuples.ts, 56, 11))
|
|
|
|
|
>a : Symbol(a, Decl(mappedTypesArraysTuples.ts, 56, 18))
|
|
|
|
|
>b : Symbol(b, Decl(mappedTypesArraysTuples.ts, 56, 41))
|
|
|
|
|
|
|
|
|
|
let y22 = nonpartial(x22);
|
|
|
|
|
>y22 : Symbol(y22, Decl(mappedTypesArraysTuples.ts, 49, 3))
|
|
|
|
|
>nonpartial : Symbol(nonpartial, Decl(mappedTypesArraysTuples.ts, 38, 24))
|
|
|
|
|
>x22 : Symbol(x22, Decl(mappedTypesArraysTuples.ts, 48, 11))
|
|
|
|
|
>y22 : Symbol(y22, Decl(mappedTypesArraysTuples.ts, 57, 3))
|
|
|
|
|
>nonpartial : Symbol(nonpartial, Decl(mappedTypesArraysTuples.ts, 46, 24))
|
|
|
|
|
>x22 : Symbol(x22, Decl(mappedTypesArraysTuples.ts, 56, 11))
|
|
|
|
|
|
|
|
|
|
type Awaited<T> = T extends PromiseLike<infer U> ? U : T;
|
|
|
|
|
>Awaited : Symbol(Awaited, Decl(mappedTypesArraysTuples.ts, 49, 26))
|
|
|
|
|
>T : Symbol(T, Decl(mappedTypesArraysTuples.ts, 51, 13))
|
|
|
|
|
>T : Symbol(T, Decl(mappedTypesArraysTuples.ts, 51, 13))
|
|
|
|
|
>Awaited : Symbol(Awaited, Decl(mappedTypesArraysTuples.ts, 57, 26))
|
|
|
|
|
>T : Symbol(T, Decl(mappedTypesArraysTuples.ts, 59, 13))
|
|
|
|
|
>T : Symbol(T, Decl(mappedTypesArraysTuples.ts, 59, 13))
|
|
|
|
|
>PromiseLike : Symbol(PromiseLike, Decl(lib.es5.d.ts, --, --))
|
|
|
|
|
>U : Symbol(U, Decl(mappedTypesArraysTuples.ts, 51, 45))
|
|
|
|
|
>U : Symbol(U, Decl(mappedTypesArraysTuples.ts, 51, 45))
|
|
|
|
|
>T : Symbol(T, Decl(mappedTypesArraysTuples.ts, 51, 13))
|
|
|
|
|
>U : Symbol(U, Decl(mappedTypesArraysTuples.ts, 59, 45))
|
|
|
|
|
>U : Symbol(U, Decl(mappedTypesArraysTuples.ts, 59, 45))
|
|
|
|
|
>T : Symbol(T, Decl(mappedTypesArraysTuples.ts, 59, 13))
|
|
|
|
|
|
|
|
|
|
type Awaitified<T> = { [P in keyof T]: Awaited<T[P]> };
|
|
|
|
|
>Awaitified : Symbol(Awaitified, Decl(mappedTypesArraysTuples.ts, 51, 57))
|
|
|
|
|
>T : Symbol(T, Decl(mappedTypesArraysTuples.ts, 52, 16))
|
|
|
|
|
>P : Symbol(P, Decl(mappedTypesArraysTuples.ts, 52, 24))
|
|
|
|
|
>T : Symbol(T, Decl(mappedTypesArraysTuples.ts, 52, 16))
|
|
|
|
|
>Awaited : Symbol(Awaited, Decl(mappedTypesArraysTuples.ts, 49, 26))
|
|
|
|
|
>T : Symbol(T, Decl(mappedTypesArraysTuples.ts, 52, 16))
|
|
|
|
|
>P : Symbol(P, Decl(mappedTypesArraysTuples.ts, 52, 24))
|
|
|
|
|
>Awaitified : Symbol(Awaitified, Decl(mappedTypesArraysTuples.ts, 59, 57))
|
|
|
|
|
>T : Symbol(T, Decl(mappedTypesArraysTuples.ts, 60, 16))
|
|
|
|
|
>P : Symbol(P, Decl(mappedTypesArraysTuples.ts, 60, 24))
|
|
|
|
|
>T : Symbol(T, Decl(mappedTypesArraysTuples.ts, 60, 16))
|
|
|
|
|
>Awaited : Symbol(Awaited, Decl(mappedTypesArraysTuples.ts, 57, 26))
|
|
|
|
|
>T : Symbol(T, Decl(mappedTypesArraysTuples.ts, 60, 16))
|
|
|
|
|
>P : Symbol(P, Decl(mappedTypesArraysTuples.ts, 60, 24))
|
|
|
|
|
|
|
|
|
|
declare function all<T extends any[]>(...values: T): Promise<Awaitified<T>>;
|
|
|
|
|
>all : Symbol(all, Decl(mappedTypesArraysTuples.ts, 52, 55))
|
|
|
|
|
>T : Symbol(T, Decl(mappedTypesArraysTuples.ts, 54, 21))
|
|
|
|
|
>values : Symbol(values, Decl(mappedTypesArraysTuples.ts, 54, 38))
|
|
|
|
|
>T : Symbol(T, Decl(mappedTypesArraysTuples.ts, 54, 21))
|
|
|
|
|
>all : Symbol(all, Decl(mappedTypesArraysTuples.ts, 60, 55))
|
|
|
|
|
>T : Symbol(T, Decl(mappedTypesArraysTuples.ts, 62, 21))
|
|
|
|
|
>values : Symbol(values, Decl(mappedTypesArraysTuples.ts, 62, 38))
|
|
|
|
|
>T : Symbol(T, Decl(mappedTypesArraysTuples.ts, 62, 21))
|
|
|
|
|
>Promise : Symbol(Promise, Decl(lib.es5.d.ts, --, --))
|
|
|
|
|
>Awaitified : Symbol(Awaitified, Decl(mappedTypesArraysTuples.ts, 51, 57))
|
|
|
|
|
>T : Symbol(T, Decl(mappedTypesArraysTuples.ts, 54, 21))
|
|
|
|
|
>Awaitified : Symbol(Awaitified, Decl(mappedTypesArraysTuples.ts, 59, 57))
|
|
|
|
|
>T : Symbol(T, Decl(mappedTypesArraysTuples.ts, 62, 21))
|
|
|
|
|
|
|
|
|
|
function f1(a: number, b: Promise<number>, c: string[], d: Promise<string[]>) {
|
|
|
|
|
>f1 : Symbol(f1, Decl(mappedTypesArraysTuples.ts, 54, 76))
|
|
|
|
|
>a : Symbol(a, Decl(mappedTypesArraysTuples.ts, 56, 12))
|
|
|
|
|
>b : Symbol(b, Decl(mappedTypesArraysTuples.ts, 56, 22))
|
|
|
|
|
>f1 : Symbol(f1, Decl(mappedTypesArraysTuples.ts, 62, 76))
|
|
|
|
|
>a : Symbol(a, Decl(mappedTypesArraysTuples.ts, 64, 12))
|
|
|
|
|
>b : Symbol(b, Decl(mappedTypesArraysTuples.ts, 64, 22))
|
|
|
|
|
>Promise : Symbol(Promise, Decl(lib.es5.d.ts, --, --))
|
|
|
|
|
>c : Symbol(c, Decl(mappedTypesArraysTuples.ts, 56, 42))
|
|
|
|
|
>d : Symbol(d, Decl(mappedTypesArraysTuples.ts, 56, 55))
|
|
|
|
|
>c : Symbol(c, Decl(mappedTypesArraysTuples.ts, 64, 42))
|
|
|
|
|
>d : Symbol(d, Decl(mappedTypesArraysTuples.ts, 64, 55))
|
|
|
|
|
>Promise : Symbol(Promise, Decl(lib.es5.d.ts, --, --))
|
|
|
|
|
|
|
|
|
|
let x1 = all(a);
|
|
|
|
|
>x1 : Symbol(x1, Decl(mappedTypesArraysTuples.ts, 57, 7))
|
|
|
|
|
>all : Symbol(all, Decl(mappedTypesArraysTuples.ts, 52, 55))
|
|
|
|
|
>a : Symbol(a, Decl(mappedTypesArraysTuples.ts, 56, 12))
|
|
|
|
|
>x1 : Symbol(x1, Decl(mappedTypesArraysTuples.ts, 65, 7))
|
|
|
|
|
>all : Symbol(all, Decl(mappedTypesArraysTuples.ts, 60, 55))
|
|
|
|
|
>a : Symbol(a, Decl(mappedTypesArraysTuples.ts, 64, 12))
|
|
|
|
|
|
|
|
|
|
let x2 = all(a, b);
|
|
|
|
|
>x2 : Symbol(x2, Decl(mappedTypesArraysTuples.ts, 58, 7))
|
|
|
|
|
>all : Symbol(all, Decl(mappedTypesArraysTuples.ts, 52, 55))
|
|
|
|
|
>a : Symbol(a, Decl(mappedTypesArraysTuples.ts, 56, 12))
|
|
|
|
|
>b : Symbol(b, Decl(mappedTypesArraysTuples.ts, 56, 22))
|
|
|
|
|
>x2 : Symbol(x2, Decl(mappedTypesArraysTuples.ts, 66, 7))
|
|
|
|
|
>all : Symbol(all, Decl(mappedTypesArraysTuples.ts, 60, 55))
|
|
|
|
|
>a : Symbol(a, Decl(mappedTypesArraysTuples.ts, 64, 12))
|
|
|
|
|
>b : Symbol(b, Decl(mappedTypesArraysTuples.ts, 64, 22))
|
|
|
|
|
|
|
|
|
|
let x3 = all(a, b, c);
|
|
|
|
|
>x3 : Symbol(x3, Decl(mappedTypesArraysTuples.ts, 59, 7))
|
|
|
|
|
>all : Symbol(all, Decl(mappedTypesArraysTuples.ts, 52, 55))
|
|
|
|
|
>a : Symbol(a, Decl(mappedTypesArraysTuples.ts, 56, 12))
|
|
|
|
|
>b : Symbol(b, Decl(mappedTypesArraysTuples.ts, 56, 22))
|
|
|
|
|
>c : Symbol(c, Decl(mappedTypesArraysTuples.ts, 56, 42))
|
|
|
|
|
>x3 : Symbol(x3, Decl(mappedTypesArraysTuples.ts, 67, 7))
|
|
|
|
|
>all : Symbol(all, Decl(mappedTypesArraysTuples.ts, 60, 55))
|
|
|
|
|
>a : Symbol(a, Decl(mappedTypesArraysTuples.ts, 64, 12))
|
|
|
|
|
>b : Symbol(b, Decl(mappedTypesArraysTuples.ts, 64, 22))
|
|
|
|
|
>c : Symbol(c, Decl(mappedTypesArraysTuples.ts, 64, 42))
|
|
|
|
|
|
|
|
|
|
let x4 = all(a, b, c, d);
|
|
|
|
|
>x4 : Symbol(x4, Decl(mappedTypesArraysTuples.ts, 60, 7))
|
|
|
|
|
>all : Symbol(all, Decl(mappedTypesArraysTuples.ts, 52, 55))
|
|
|
|
|
>a : Symbol(a, Decl(mappedTypesArraysTuples.ts, 56, 12))
|
|
|
|
|
>b : Symbol(b, Decl(mappedTypesArraysTuples.ts, 56, 22))
|
|
|
|
|
>c : Symbol(c, Decl(mappedTypesArraysTuples.ts, 56, 42))
|
|
|
|
|
>d : Symbol(d, Decl(mappedTypesArraysTuples.ts, 56, 55))
|
|
|
|
|
>x4 : Symbol(x4, Decl(mappedTypesArraysTuples.ts, 68, 7))
|
|
|
|
|
>all : Symbol(all, Decl(mappedTypesArraysTuples.ts, 60, 55))
|
|
|
|
|
>a : Symbol(a, Decl(mappedTypesArraysTuples.ts, 64, 12))
|
|
|
|
|
>b : Symbol(b, Decl(mappedTypesArraysTuples.ts, 64, 22))
|
|
|
|
|
>c : Symbol(c, Decl(mappedTypesArraysTuples.ts, 64, 42))
|
|
|
|
|
>d : Symbol(d, Decl(mappedTypesArraysTuples.ts, 64, 55))
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
function f2<T extends any[]>(a: Boxified<T>) {
|
|
|
|
|
>f2 : Symbol(f2, Decl(mappedTypesArraysTuples.ts, 61, 1))
|
|
|
|
|
>T : Symbol(T, Decl(mappedTypesArraysTuples.ts, 63, 12))
|
|
|
|
|
>a : Symbol(a, Decl(mappedTypesArraysTuples.ts, 63, 29))
|
|
|
|
|
>f2 : Symbol(f2, Decl(mappedTypesArraysTuples.ts, 69, 1))
|
|
|
|
|
>T : Symbol(T, Decl(mappedTypesArraysTuples.ts, 71, 12))
|
|
|
|
|
>a : Symbol(a, Decl(mappedTypesArraysTuples.ts, 71, 29))
|
|
|
|
|
>Boxified : Symbol(Boxified, Decl(mappedTypesArraysTuples.ts, 0, 27))
|
|
|
|
|
>T : Symbol(T, Decl(mappedTypesArraysTuples.ts, 63, 12))
|
|
|
|
|
>T : Symbol(T, Decl(mappedTypesArraysTuples.ts, 71, 12))
|
|
|
|
|
|
|
|
|
|
let x: Box<any> | undefined = a.pop();
|
|
|
|
|
>x : Symbol(x, Decl(mappedTypesArraysTuples.ts, 64, 7))
|
|
|
|
|
>x : Symbol(x, Decl(mappedTypesArraysTuples.ts, 72, 7))
|
|
|
|
|
>Box : Symbol(Box, Decl(mappedTypesArraysTuples.ts, 0, 0))
|
|
|
|
|
>a.pop : Symbol(Array.pop, Decl(lib.es5.d.ts, --, --))
|
|
|
|
|
>a : Symbol(a, Decl(mappedTypesArraysTuples.ts, 63, 29))
|
|
|
|
|
>a : Symbol(a, Decl(mappedTypesArraysTuples.ts, 71, 29))
|
|
|
|
|
>pop : Symbol(Array.pop, Decl(lib.es5.d.ts, --, --))
|
|
|
|
|
|
|
|
|
|
let y: Box<any>[] = a.concat(a);
|
|
|
|
|
>y : Symbol(y, Decl(mappedTypesArraysTuples.ts, 65, 7))
|
|
|
|
|
>y : Symbol(y, Decl(mappedTypesArraysTuples.ts, 73, 7))
|
|
|
|
|
>Box : Symbol(Box, Decl(mappedTypesArraysTuples.ts, 0, 0))
|
|
|
|
|
>a.concat : Symbol(Array.concat, Decl(lib.es5.d.ts, --, --), Decl(lib.es5.d.ts, --, --))
|
|
|
|
|
>a : Symbol(a, Decl(mappedTypesArraysTuples.ts, 63, 29))
|
|
|
|
|
>a : Symbol(a, Decl(mappedTypesArraysTuples.ts, 71, 29))
|
|
|
|
|
>concat : Symbol(Array.concat, Decl(lib.es5.d.ts, --, --), Decl(lib.es5.d.ts, --, --))
|
|
|
|
|
>a : Symbol(a, Decl(mappedTypesArraysTuples.ts, 63, 29))
|
|
|
|
|
>a : Symbol(a, Decl(mappedTypesArraysTuples.ts, 71, 29))
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// Repro from #26163
|
|
|
|
|
|
|
|
|
|
type ElementType<T> = T extends Array<infer U> ? U : never;
|
|
|
|
|
>ElementType : Symbol(ElementType, Decl(mappedTypesArraysTuples.ts, 66, 1))
|
|
|
|
|
>T : Symbol(T, Decl(mappedTypesArraysTuples.ts, 70, 17))
|
|
|
|
|
>T : Symbol(T, Decl(mappedTypesArraysTuples.ts, 70, 17))
|
|
|
|
|
>ElementType : Symbol(ElementType, Decl(mappedTypesArraysTuples.ts, 74, 1))
|
|
|
|
|
>T : Symbol(T, Decl(mappedTypesArraysTuples.ts, 78, 17))
|
|
|
|
|
>T : Symbol(T, Decl(mappedTypesArraysTuples.ts, 78, 17))
|
|
|
|
|
>Array : Symbol(Array, Decl(lib.es5.d.ts, --, --), Decl(lib.es5.d.ts, --, --))
|
|
|
|
|
>U : Symbol(U, Decl(mappedTypesArraysTuples.ts, 70, 43))
|
|
|
|
|
>U : Symbol(U, Decl(mappedTypesArraysTuples.ts, 70, 43))
|
|
|
|
|
>U : Symbol(U, Decl(mappedTypesArraysTuples.ts, 78, 43))
|
|
|
|
|
>U : Symbol(U, Decl(mappedTypesArraysTuples.ts, 78, 43))
|
|
|
|
|
|
|
|
|
|
type Mapped<T> = { [K in keyof T]: T[K] };
|
|
|
|
|
>Mapped : Symbol(Mapped, Decl(mappedTypesArraysTuples.ts, 70, 59))
|
|
|
|
|
>T : Symbol(T, Decl(mappedTypesArraysTuples.ts, 71, 12))
|
|
|
|
|
>K : Symbol(K, Decl(mappedTypesArraysTuples.ts, 71, 20))
|
|
|
|
|
>T : Symbol(T, Decl(mappedTypesArraysTuples.ts, 71, 12))
|
|
|
|
|
>T : Symbol(T, Decl(mappedTypesArraysTuples.ts, 71, 12))
|
|
|
|
|
>K : Symbol(K, Decl(mappedTypesArraysTuples.ts, 71, 20))
|
|
|
|
|
>Mapped : Symbol(Mapped, Decl(mappedTypesArraysTuples.ts, 78, 59))
|
|
|
|
|
>T : Symbol(T, Decl(mappedTypesArraysTuples.ts, 79, 12))
|
|
|
|
|
>K : Symbol(K, Decl(mappedTypesArraysTuples.ts, 79, 20))
|
|
|
|
|
>T : Symbol(T, Decl(mappedTypesArraysTuples.ts, 79, 12))
|
|
|
|
|
>T : Symbol(T, Decl(mappedTypesArraysTuples.ts, 79, 12))
|
|
|
|
|
>K : Symbol(K, Decl(mappedTypesArraysTuples.ts, 79, 20))
|
|
|
|
|
|
|
|
|
|
type F<T> = ElementType<Mapped<T>>;
|
|
|
|
|
>F : Symbol(F, Decl(mappedTypesArraysTuples.ts, 71, 42))
|
|
|
|
|
>T : Symbol(T, Decl(mappedTypesArraysTuples.ts, 73, 7))
|
|
|
|
|
>ElementType : Symbol(ElementType, Decl(mappedTypesArraysTuples.ts, 66, 1))
|
|
|
|
|
>Mapped : Symbol(Mapped, Decl(mappedTypesArraysTuples.ts, 70, 59))
|
|
|
|
|
>T : Symbol(T, Decl(mappedTypesArraysTuples.ts, 73, 7))
|
|
|
|
|
>F : Symbol(F, Decl(mappedTypesArraysTuples.ts, 79, 42))
|
|
|
|
|
>T : Symbol(T, Decl(mappedTypesArraysTuples.ts, 81, 7))
|
|
|
|
|
>ElementType : Symbol(ElementType, Decl(mappedTypesArraysTuples.ts, 74, 1))
|
|
|
|
|
>Mapped : Symbol(Mapped, Decl(mappedTypesArraysTuples.ts, 78, 59))
|
|
|
|
|
>T : Symbol(T, Decl(mappedTypesArraysTuples.ts, 81, 7))
|
|
|
|
|
|
|
|
|
|
type R1 = F<[string, number, boolean]>; // string | number | boolean
|
|
|
|
|
>R1 : Symbol(R1, Decl(mappedTypesArraysTuples.ts, 73, 35))
|
|
|
|
|
>F : Symbol(F, Decl(mappedTypesArraysTuples.ts, 71, 42))
|
|
|
|
|
>R1 : Symbol(R1, Decl(mappedTypesArraysTuples.ts, 81, 35))
|
|
|
|
|
>F : Symbol(F, Decl(mappedTypesArraysTuples.ts, 79, 42))
|
|
|
|
|
|
|
|
|
|
type R2 = ElementType<Mapped<[string, number, boolean]>>; // string | number | boolean
|
|
|
|
|
>R2 : Symbol(R2, Decl(mappedTypesArraysTuples.ts, 74, 39))
|
|
|
|
|
>ElementType : Symbol(ElementType, Decl(mappedTypesArraysTuples.ts, 66, 1))
|
|
|
|
|
>Mapped : Symbol(Mapped, Decl(mappedTypesArraysTuples.ts, 70, 59))
|
|
|
|
|
>R2 : Symbol(R2, Decl(mappedTypesArraysTuples.ts, 82, 39))
|
|
|
|
|
>ElementType : Symbol(ElementType, Decl(mappedTypesArraysTuples.ts, 74, 1))
|
|
|
|
|
>Mapped : Symbol(Mapped, Decl(mappedTypesArraysTuples.ts, 78, 59))
|
|
|
|
|
|
|
|
|
|
// Repro from #26163
|
|
|
|
|
|
|
|
|
|
declare function acceptArray(arr: any[]): void;
|
|
|
|
|
>acceptArray : Symbol(acceptArray, Decl(mappedTypesArraysTuples.ts, 75, 57))
|
|
|
|
|
>arr : Symbol(arr, Decl(mappedTypesArraysTuples.ts, 79, 29))
|
|
|
|
|
>acceptArray : Symbol(acceptArray, Decl(mappedTypesArraysTuples.ts, 83, 57))
|
|
|
|
|
>arr : Symbol(arr, Decl(mappedTypesArraysTuples.ts, 87, 29))
|
|
|
|
|
|
|
|
|
|
declare function mapArray<T extends any[]>(arr: T): Mapped<T>;
|
|
|
|
|
>mapArray : Symbol(mapArray, Decl(mappedTypesArraysTuples.ts, 79, 47))
|
|
|
|
|
>T : Symbol(T, Decl(mappedTypesArraysTuples.ts, 80, 26))
|
|
|
|
|
>arr : Symbol(arr, Decl(mappedTypesArraysTuples.ts, 80, 43))
|
|
|
|
|
>T : Symbol(T, Decl(mappedTypesArraysTuples.ts, 80, 26))
|
|
|
|
|
>Mapped : Symbol(Mapped, Decl(mappedTypesArraysTuples.ts, 70, 59))
|
|
|
|
|
>T : Symbol(T, Decl(mappedTypesArraysTuples.ts, 80, 26))
|
|
|
|
|
>mapArray : Symbol(mapArray, Decl(mappedTypesArraysTuples.ts, 87, 47))
|
|
|
|
|
>T : Symbol(T, Decl(mappedTypesArraysTuples.ts, 88, 26))
|
|
|
|
|
>arr : Symbol(arr, Decl(mappedTypesArraysTuples.ts, 88, 43))
|
|
|
|
|
>T : Symbol(T, Decl(mappedTypesArraysTuples.ts, 88, 26))
|
|
|
|
|
>Mapped : Symbol(Mapped, Decl(mappedTypesArraysTuples.ts, 78, 59))
|
|
|
|
|
>T : Symbol(T, Decl(mappedTypesArraysTuples.ts, 88, 26))
|
|
|
|
|
|
|
|
|
|
function acceptMappedArray<T extends any[]>(arr: T) {
|
|
|
|
|
>acceptMappedArray : Symbol(acceptMappedArray, Decl(mappedTypesArraysTuples.ts, 80, 62))
|
|
|
|
|
>T : Symbol(T, Decl(mappedTypesArraysTuples.ts, 81, 27))
|
|
|
|
|
>arr : Symbol(arr, Decl(mappedTypesArraysTuples.ts, 81, 44))
|
|
|
|
|
>T : Symbol(T, Decl(mappedTypesArraysTuples.ts, 81, 27))
|
|
|
|
|
>acceptMappedArray : Symbol(acceptMappedArray, Decl(mappedTypesArraysTuples.ts, 88, 62))
|
|
|
|
|
>T : Symbol(T, Decl(mappedTypesArraysTuples.ts, 89, 27))
|
|
|
|
|
>arr : Symbol(arr, Decl(mappedTypesArraysTuples.ts, 89, 44))
|
|
|
|
|
>T : Symbol(T, Decl(mappedTypesArraysTuples.ts, 89, 27))
|
|
|
|
|
|
|
|
|
|
acceptArray(mapArray(arr));
|
|
|
|
|
>acceptArray : Symbol(acceptArray, Decl(mappedTypesArraysTuples.ts, 75, 57))
|
|
|
|
|
>mapArray : Symbol(mapArray, Decl(mappedTypesArraysTuples.ts, 79, 47))
|
|
|
|
|
>arr : Symbol(arr, Decl(mappedTypesArraysTuples.ts, 81, 44))
|
|
|
|
|
>acceptArray : Symbol(acceptArray, Decl(mappedTypesArraysTuples.ts, 83, 57))
|
|
|
|
|
>mapArray : Symbol(mapArray, Decl(mappedTypesArraysTuples.ts, 87, 47))
|
|
|
|
|
>arr : Symbol(arr, Decl(mappedTypesArraysTuples.ts, 89, 44))
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// Repro from #26163
|
|
|
|
|
|
|
|
|
|
type Unconstrained<T> = ElementType<Mapped<T>>;
|
|
|
|
|
>Unconstrained : Symbol(Unconstrained, Decl(mappedTypesArraysTuples.ts, 83, 1))
|
|
|
|
|
>T : Symbol(T, Decl(mappedTypesArraysTuples.ts, 87, 19))
|
|
|
|
|
>ElementType : Symbol(ElementType, Decl(mappedTypesArraysTuples.ts, 66, 1))
|
|
|
|
|
>Mapped : Symbol(Mapped, Decl(mappedTypesArraysTuples.ts, 70, 59))
|
|
|
|
|
>T : Symbol(T, Decl(mappedTypesArraysTuples.ts, 87, 19))
|
|
|
|
|
>Unconstrained : Symbol(Unconstrained, Decl(mappedTypesArraysTuples.ts, 91, 1))
|
|
|
|
|
>T : Symbol(T, Decl(mappedTypesArraysTuples.ts, 95, 19))
|
|
|
|
|
>ElementType : Symbol(ElementType, Decl(mappedTypesArraysTuples.ts, 74, 1))
|
|
|
|
|
>Mapped : Symbol(Mapped, Decl(mappedTypesArraysTuples.ts, 78, 59))
|
|
|
|
|
>T : Symbol(T, Decl(mappedTypesArraysTuples.ts, 95, 19))
|
|
|
|
|
|
|
|
|
|
type T1 = Unconstrained<[string, number, boolean]>; // string | number | boolean
|
|
|
|
|
>T1 : Symbol(T1, Decl(mappedTypesArraysTuples.ts, 87, 47))
|
|
|
|
|
>Unconstrained : Symbol(Unconstrained, Decl(mappedTypesArraysTuples.ts, 83, 1))
|
|
|
|
|
>T1 : Symbol(T1, Decl(mappedTypesArraysTuples.ts, 95, 47))
|
|
|
|
|
>Unconstrained : Symbol(Unconstrained, Decl(mappedTypesArraysTuples.ts, 91, 1))
|
|
|
|
|
|
|
|
|
|
type Constrained<T extends any[]> = ElementType<Mapped<T>>;
|
|
|
|
|
>Constrained : Symbol(Constrained, Decl(mappedTypesArraysTuples.ts, 88, 51))
|
|
|
|
|
>T : Symbol(T, Decl(mappedTypesArraysTuples.ts, 90, 17))
|
|
|
|
|
>ElementType : Symbol(ElementType, Decl(mappedTypesArraysTuples.ts, 66, 1))
|
|
|
|
|
>Mapped : Symbol(Mapped, Decl(mappedTypesArraysTuples.ts, 70, 59))
|
|
|
|
|
>T : Symbol(T, Decl(mappedTypesArraysTuples.ts, 90, 17))
|
|
|
|
|
>Constrained : Symbol(Constrained, Decl(mappedTypesArraysTuples.ts, 96, 51))
|
|
|
|
|
>T : Symbol(T, Decl(mappedTypesArraysTuples.ts, 98, 17))
|
|
|
|
|
>ElementType : Symbol(ElementType, Decl(mappedTypesArraysTuples.ts, 74, 1))
|
|
|
|
|
>Mapped : Symbol(Mapped, Decl(mappedTypesArraysTuples.ts, 78, 59))
|
|
|
|
|
>T : Symbol(T, Decl(mappedTypesArraysTuples.ts, 98, 17))
|
|
|
|
|
|
|
|
|
|
type T2 = Constrained<[string, number, boolean]>; // string | number | boolean
|
|
|
|
|
>T2 : Symbol(T2, Decl(mappedTypesArraysTuples.ts, 90, 59))
|
|
|
|
|
>Constrained : Symbol(Constrained, Decl(mappedTypesArraysTuples.ts, 88, 51))
|
|
|
|
|
>T2 : Symbol(T2, Decl(mappedTypesArraysTuples.ts, 98, 59))
|
|
|
|
|
>Constrained : Symbol(Constrained, Decl(mappedTypesArraysTuples.ts, 96, 51))
|
|
|
|
|
|
|
|
|
|