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 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79
|
=== tests/cases/conformance/classes/members/privateNames/privateNameStaticMethodAsync.ts ===
const C = class {
>C : typeof C
>class { static async #bar() { return await Promise.resolve(42); } static async foo() { const b = await this.#bar(); return b + (this.#baz().next().value || 0) + ((await this.#qux().next()).value || 0); } static *#baz() { yield 42; } static async *#qux() { yield (await Promise.resolve(42)); } async static *#bazBad() { yield 42; }} : typeof C
static async #bar() { return await Promise.resolve(42); }
>#bar : () => Promise<number>
>await Promise.resolve(42) : number
>Promise.resolve(42) : Promise<number>
>Promise.resolve : { (): Promise<void>; <T>(value: T): Promise<Awaited<T>>; <T>(value: T | PromiseLike<T>): Promise<Awaited<T>>; }
>Promise : PromiseConstructor
>resolve : { (): Promise<void>; <T>(value: T): Promise<Awaited<T>>; <T>(value: T | PromiseLike<T>): Promise<Awaited<T>>; }
>42 : 42
static async foo() {
>foo : () => Promise<number>
const b = await this.#bar();
>b : number
>await this.#bar() : number
>this.#bar() : Promise<number>
>this.#bar : () => Promise<number>
>this : typeof C
return b + (this.#baz().next().value || 0) + ((await this.#qux().next()).value || 0);
>b + (this.#baz().next().value || 0) + ((await this.#qux().next()).value || 0) : number
>b + (this.#baz().next().value || 0) : number
>b : number
>(this.#baz().next().value || 0) : number
>this.#baz().next().value || 0 : number
>this.#baz().next().value : number | void
>this.#baz().next() : IteratorResult<number, void>
>this.#baz().next : (...args: [] | [unknown]) => IteratorResult<number, void>
>this.#baz() : Generator<number, void, unknown>
>this.#baz : () => Generator<number, void, unknown>
>this : typeof C
>next : (...args: [] | [unknown]) => IteratorResult<number, void>
>value : number | void
>0 : 0
>((await this.#qux().next()).value || 0) : number
>(await this.#qux().next()).value || 0 : number
>(await this.#qux().next()).value : number | void
>(await this.#qux().next()) : IteratorResult<number, void>
>await this.#qux().next() : IteratorResult<number, void>
>this.#qux().next() : Promise<IteratorResult<number, void>>
>this.#qux().next : (...args: [] | [unknown]) => Promise<IteratorResult<number, void>>
>this.#qux() : AsyncGenerator<number, void, unknown>
>this.#qux : () => AsyncGenerator<number, void, unknown>
>this : typeof C
>next : (...args: [] | [unknown]) => Promise<IteratorResult<number, void>>
>value : number | void
>0 : 0
}
static *#baz() { yield 42; }
>#baz : () => Generator<number, void, unknown>
>yield 42 : any
>42 : 42
static async *#qux() {
>#qux : () => AsyncGenerator<number, void, unknown>
yield (await Promise.resolve(42));
>yield (await Promise.resolve(42)) : any
>(await Promise.resolve(42)) : number
>await Promise.resolve(42) : number
>Promise.resolve(42) : Promise<number>
>Promise.resolve : { (): Promise<void>; <T>(value: T): Promise<Awaited<T>>; <T>(value: T | PromiseLike<T>): Promise<Awaited<T>>; }
>Promise : PromiseConstructor
>resolve : { (): Promise<void>; <T>(value: T): Promise<Awaited<T>>; <T>(value: T | PromiseLike<T>): Promise<Awaited<T>>; }
>42 : 42
}
async static *#bazBad() { yield 42; }
>#bazBad : () => AsyncGenerator<number, void, unknown>
>yield 42 : any
>42 : 42
}
|