@tripod311/leg5
Version:
Zero-dependency concurrent function execution for Node.js using worker threads.
42 lines (41 loc) • 1.2 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.get_transferlist = get_transferlist;
exports.create_deferred_promise = create_deferred_promise;
function get_transferlist(obj) {
let result = [];
if (Array.isArray(obj)) {
for (let i = 0; i < obj.length; i++) {
if (obj[i] instanceof ArrayBuffer) {
result.push(obj[i]);
}
else if (Array.isArray(obj[i]) || (obj[i] !== null && typeof obj[i] === 'object')) {
result = result.concat(get_transferlist(obj[i]));
}
}
}
else {
for (let i in obj) {
if (obj[i] instanceof ArrayBuffer) {
result.push(obj[i]);
}
else if (Array.isArray(obj[i]) || (obj[i] !== null && typeof obj[i] === 'object')) {
result = result.concat(get_transferlist(obj[i]));
}
}
}
return result;
}
function create_deferred_promise() {
let resolve;
let reject;
const promise = new Promise((res, rej) => {
resolve = res;
reject = rej;
});
return {
resolve,
reject,
promise
};
}