static S jsWorkerFromString(S code) { ret "var workerCode = " + jsQuote(code) + [[; window.URL = window.URL || window.webkitURL; var blob; try { blob = new Blob([workerCode], {type: 'application/javascript'}); } catch (e) { // Backwards-compatibility window.BlobBuilder = window.BlobBuilder || window.WebKitBlobBuilder || window.MozBlobBuilder; blob = new BlobBuilder(); blob.append(workerCode); blob = blob.getBlob(); } var worker = new Worker(URL.createObjectURL(blob)); ]]; }