The documentation's a bit light, and I can't tell from the implementation. This:
@await function fnord() {
@await blockingThing();
}
...can do one of these:
Calling fnord() returns immediately, queueing an orphaned promise which calls blockingThing() and resolves when blockingThing() does.
Blocks until the promise returned by blockingThing() is resolved.
In the Javascript world, (1) would be meaningless as promises only resolve when they're waited for, and (2) is impossible, but haxe works differently --- can you clarify?
The documentation's a bit light, and I can't tell from the implementation. This:
...can do one of these:
fnord()
returns immediately, queueing an orphaned promise which callsblockingThing()
and resolves whenblockingThing()
does.blockingThing()
is resolved.In the Javascript world, (1) would be meaningless as promises only resolve when they're waited for, and (2) is impossible, but haxe works differently --- can you clarify?