mirror of
https://github.com/YosysHQ/yosys
synced 2025-06-06 06:03:23 +00:00
Improved YosysJS WebWorker API
This commit is contained in:
parent
766dd51447
commit
c4dde71dca
3 changed files with 51 additions and 10 deletions
|
@ -227,6 +227,7 @@ var YosysJS = new function() {
|
|||
ys.worker = new Worker('yosyswrk.js');
|
||||
ys.callback_idx = 1;
|
||||
ys.callback_cache = {};
|
||||
ys.errmsg = "";
|
||||
|
||||
ys.callback_cache[0] = on_ready;
|
||||
on_ready = null;
|
||||
|
@ -235,6 +236,7 @@ var YosysJS = new function() {
|
|||
var response = e.data[0];
|
||||
var callback = ys.callback_cache[response.idx];
|
||||
delete ys.callback_cache[response.idx];
|
||||
if ("errmsg" in response) ys.errmsg = response.errmsg;
|
||||
if (callback) callback.apply(null, response.args);
|
||||
}
|
||||
|
||||
|
@ -294,6 +296,17 @@ var YosysJS = new function() {
|
|||
ys.worker.postMessage([request]);
|
||||
}
|
||||
|
||||
ys.verbose = function(value, callback) {
|
||||
var request = {
|
||||
"idx": ys.callback_idx,
|
||||
"mode": "verbose",
|
||||
"value": value
|
||||
};
|
||||
|
||||
ys.callback_cache[ys.callback_idx++] = callback;
|
||||
ys.worker.postMessage([request]);
|
||||
}
|
||||
|
||||
return ys;
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue