mirror of
https://github.com/quinton-ashley/java2js
synced 2024-12-29 10:11:54 +01:00
1.2.9
This commit is contained in:
parent
d1dbf3b6f2
commit
bafdc47b1d
32
jdk.js
32
jdk.js
@ -221,8 +221,24 @@
|
|||||||
|
|
||||||
let packageName = (file.match(/package\s+([^;]+)/gm) || [])[1] || 'default';
|
let packageName = (file.match(/package\s+([^;]+)/gm) || [])[1] || 'default';
|
||||||
|
|
||||||
let trans = await java_to_javascript(file);
|
let trans;
|
||||||
|
|
||||||
|
let workerPath = this.root.split('/').slice(0, -1).join('/') + '/transpile_worker.js';
|
||||||
|
try {
|
||||||
|
let worker = new Worker(workerPath);
|
||||||
|
worker.postMessage(file);
|
||||||
|
await new Promise((resolve, reject) => {
|
||||||
|
worker.onmessage = (e) => {
|
||||||
|
trans = e.data;
|
||||||
|
resolve();
|
||||||
|
};
|
||||||
|
});
|
||||||
|
} catch (ror) {
|
||||||
|
console.warn(
|
||||||
|
'Due to a likely CORS error, java2js was unable to transpile with multithreaded worker: ' + workerPath
|
||||||
|
);
|
||||||
|
trans = java_to_javascript(file);
|
||||||
|
}
|
||||||
// log(trans);
|
// log(trans);
|
||||||
|
|
||||||
// TODO fix this by adding real support for lambda
|
// TODO fix this by adding real support for lambda
|
||||||
@ -19572,9 +19588,8 @@
|
|||||||
* @return {string} - Converted JavaScript
|
* @return {string} - Converted JavaScript
|
||||||
*/
|
*/
|
||||||
const javaToJavascript = (javaString, options = {}, progress) => {
|
const javaToJavascript = (javaString, options = {}, progress) => {
|
||||||
return new Promise((resolve, reject) => {
|
|
||||||
if (typeof javaString !== 'string') {
|
if (typeof javaString !== 'string') {
|
||||||
reject('java-to-javascript: First argument must be a string');
|
throw 'java-to-javascript: First argument must be a string';
|
||||||
}
|
}
|
||||||
|
|
||||||
// Reset opts parameters
|
// Reset opts parameters
|
||||||
@ -19597,8 +19612,8 @@
|
|||||||
javaAST$$1 = javaAST.parse(javaString);
|
javaAST$$1 = javaAST.parse(javaString);
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
let line = e.location.start.line;
|
let line = e.location.start.line;
|
||||||
if (e.location) reject(`on line ${line}: \n\n${javaString.split('\n')[line - 1].trim()}\n\n${e.stack}`);
|
if (e.location) throw `on line ${line}: \n\n${javaString.split('\n')[line - 1].trim()}\n\n${e.stack}`;
|
||||||
else reject(e);
|
else throw e;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (progress) progress(0.5, 'Converting to JavaScript');
|
if (progress) progress(0.5, 'Converting to JavaScript');
|
||||||
@ -19607,9 +19622,7 @@
|
|||||||
if (options.p5) {
|
if (options.p5) {
|
||||||
jsString = globalsToJs(parseClass(javaAST$$1.types[0], true));
|
jsString = globalsToJs(parseClass(javaAST$$1.types[0], true));
|
||||||
} else {
|
} else {
|
||||||
jsString = javaAST$$1.types
|
jsString = javaAST$$1.types.map((globalClass) => classToJs(parseClass(globalClass))).join(opts.separator);
|
||||||
.map((globalClass) => classToJs(parseClass(globalClass)))
|
|
||||||
.join(opts.separator);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (progress) progress(0.75, 'Beautifying');
|
if (progress) progress(0.75, 'Beautifying');
|
||||||
@ -19623,8 +19636,7 @@
|
|||||||
|
|
||||||
if (progress) progress(1.0, 'Success');
|
if (progress) progress(1.0, 'Success');
|
||||||
|
|
||||||
resolve(jsString);
|
return jsString;
|
||||||
});
|
|
||||||
};
|
};
|
||||||
|
|
||||||
var lib = javaToJavascript;
|
var lib = javaToJavascript;
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "java2js",
|
"name": "java2js",
|
||||||
"version": "1.2.8",
|
"version": "1.2.9",
|
||||||
"description": "Converts Java to JavaScript and runs it with a JS JDK",
|
"description": "Converts Java to JavaScript and runs it with a JS JDK",
|
||||||
"main": "jdk.js",
|
"main": "jdk.js",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
|
19404
transpile_worker.js
Normal file
19404
transpile_worker.js
Normal file
File diff suppressed because it is too large
Load Diff
Loading…
x
Reference in New Issue
Block a user