| function shouldBe(actual, expected) { |
| if (actual !== expected) |
| throw new Error('bad value: ' + actual); |
| } |
| |
| var GeneratorFunction = function*(){}.constructor; |
| var AsyncFunction = async function(){}.constructor; |
| var AsyncGeneratorFunction = async function*(){}.constructor; |
| |
| var f = Function(`return 42`); |
| shouldBe(typeof anonymous, `undefined`); |
| shouldBe(f.toString(), |
| `function anonymous() { |
| return 42 |
| }`); |
| |
| var gf = GeneratorFunction(`return 42`); |
| shouldBe(typeof anonymous, `undefined`); |
| shouldBe(gf.toString(), |
| `function* anonymous() { |
| return 42 |
| }`); |
| |
| var af = AsyncFunction(`return 42`); |
| shouldBe(typeof anonymous, `undefined`); |
| shouldBe(af.toString(), |
| `async function anonymous() { |
| return 42 |
| }`); |
| |
| var agf = AsyncGeneratorFunction(`return 42`); |
| shouldBe(typeof anonymous, `undefined`); |
| shouldBe(agf.toString(), |
| `async function* anonymous() { |
| return 42 |
| }`); |