MCPcopy
hub / github.com/csev/py4e / invokeCallback

Function invokeCallback

tools/pythonauto/static/skulpt-004/skulpt.js:4542–4570  ·  view source on GitHub ↗
(settled, promise, callback, detail)

Source from the content-addressed store, hash-verified

4540 }
4541
4542 function invokeCallback(settled, promise, callback, detail) {
4543 var hasCallback = isFunction(callback),
4544 value, error, succeeded, failed;
4545
4546 if (hasCallback) {
4547 try {
4548 value = callback(detail);
4549 succeeded = true;
4550 } catch(e) {
4551 failed = true;
4552 error = e;
4553 }
4554 } else {
4555 value = detail;
4556 succeeded = true;
4557 }
4558
4559 if (handleThenable(promise, value)) {
4560 return;
4561 } else if (hasCallback && succeeded) {
4562 resolve(promise, value);
4563 } else if (failed) {
4564 reject(promise, error);
4565 } else if (settled === FULFILLED) {
4566 resolve(promise, value);
4567 } else if (settled === REJECTED) {
4568 reject(promise, value);
4569 }
4570 }
4571
4572 var PENDING = void 0;
4573 var SEALED = 0;

Callers 2

publishFunction · 0.85
skulpt.jsFile · 0.85

Calls 4

handleThenableFunction · 0.85
resolveFunction · 0.85
rejectFunction · 0.85
isFunctionFunction · 0.70

Tested by

no test coverage detected