12345678910111213141516171819202122232425262728 |
- // NOTE: This code is called using the jtalkc bash script - do not use directly.
- // The arguments variable is a series of .st filenames and category names.
- // If it is a .st file we import it, if it is a category name we export it
- // as aCategoryName.js.
- var sys = require('sys'), fs = require('fs');
- // Only care about our arguments, strip away node, all.js and debug flag.
- var arguments = process.argv.splice(3);
- // First argument is debugMode: "true" or "false"
- if (process.argv[2] == "true") {
- smalltalk.debugMode = true;
- } else {
- smalltalk.debugMode = false;
- }
- console.log("Compiling in debugMode: " + smalltalk.debugMode);
- // If it ends with .st, import it, otherwise export category as .js
- arguments.forEach(function(val, index, array) {
- if (/\.st/.test(val)) {
- sys.puts("Reading file " + val);
- code = fs.readFileSync(val, "utf8");
- smalltalk.Importer._new()._import_(code._stream());
- } else {
- sys.puts("Exporting category " + val);
- fs.writeFileSync(val + ".js", smalltalk.Exporter._new()._exportCategory_(val));
- }
- });
|