pub(crate) fn resolve_maybe_thenable(
it: &mut Interp,
item: &Value,
) -> Option<Rc<RefCell<PromiseState>>>Expand description
値を「Promise 化した状態」に正規化する共通ヘルパ。本物の Promise ならその
state、汎用 thenable(.then を持つがそれ自体は Promise ではないオブジェクト。
Promise.resolve/await は同化に対応済みだったが allSettled/race/any の
配列要素だけ「非 Promise」として素通ししてしまう非対称なバグがあった)なら
新規 pending state を作って promise_resolve(thenable 同化に対応済み)に通す。
どちらでもなければ None(呼び出し側は元の値をそのまま扱う)。