Support generator functions in `startSpan` APIs
Today, we do not support providing generator functions as a callback to startSpan or startSpanManual.
This is fundamentally a bit tricky, first because it is a bit tricky (but probably possible?) to detect if a generator function has been provided as a callback. But more fundamentally, when using this in node, execution context handling will not work as expected inside of the generator function (which is a known node issue).
Still it's not unreasonable to want to use something like this:
function*() {
yield startSpan({ name: 'my span' }, function*() {
yield waitForSomeTask();
});
}
We should find some way to support this, either inside of startSpan or through a dedicated helper like startSpanGenerator (naming is hard, but you get the point...).
Related https://github.com/nodejs/node/issues/42237