forked from malgorithms/toffee
-
Notifications
You must be signed in to change notification settings - Fork 0
/
command_line.js
44 lines (37 loc) · 1.12 KB
/
command_line.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
// Generated by CoffeeScript 1.3.3
(function() {
var engine, fs, getVersionNumber, printUsage, view;
fs = require("fs");
engine = require('../lib/engine').engine;
view = require('../lib/view').view;
printUsage = function() {
console.log(" Usage: toffee [-c] input.toffee\n\n -c == output to CoffeeScript (instead of JS)\n\n TODO: make a more useful command line tool.");
return process.exit(1);
};
getVersionNumber = function() {
return JSON.parse(fs.readFileSync("" + __dirname + "/../package.json", "utf8")).version;
};
exports.run = function() {
var args, coffee, e, fname, source, v;
e = new engine();
args = process.argv.slice(2);
if (args.length === 2) {
coffee = true;
if (args[0] !== "-c") {
printUsage();
}
} else if (args.length !== 1) {
printUsage();
}
fname = args.slice(-1)[0];
source = fs.readFileSync(fname, "utf8");
v = new view(source, {
fileName: fname
});
if (coffee) {
return console.log(v._toCoffee());
} else {
return console.log(v._toJavaScript());
}
};
}).call(this);