JS: Add support for Promise.try

This commit is contained in:
Asger F
2025-09-05 12:45:12 +02:00
parent 45eff3dac8
commit ee78b7dc96
3 changed files with 62 additions and 0 deletions

View File

@@ -0,0 +1,29 @@
async function t1() {
const promise = Promise.try(() => {
return source('try.1');
});
sink(await promise); // $ hasValueFlow=try.1
}
async function t2() {
const promise = Promise.try((x) => {
return x
}, source('try.2'));
sink(await promise); // $ hasValueFlow=try.2
}
async function t3() {
const promise = Promise.try((x) => {
throw x;
}, source('try.3'));
promise.catch(err => {
sink(err); // $ hasValueFlow=try.3
});
}
async function t4() {
const promise = Promise.try((x, y) => {
return y;
}, source('try.4.1'), source('try.4.2'));
sink(await promise); // $ hasValueFlow=try.4.2
}