Mercurial Hosting > luan
annotate src/luan/cmd_line.luan @ 1436:65d4afc9ad07
cache fix
author | Franklin Schmidt <fschmidt@gmail.com> |
---|---|
date | Mon, 06 Jan 2020 18:17:46 -0700 |
parents | 8d95711f6615 |
children | 219f2b937f2b |
rev | line source |
---|---|
693
ca169567ce07
module URIs must now include ".luan"
Franklin Schmidt <fschmidt@gmail.com>
parents:
555
diff
changeset
|
1 local Luan = require "luan:Luan.luan" |
554
18504c41b0be
move debug() to Io and remove Debug module;
Franklin Schmidt <fschmidt@gmail.com>
parents:
517
diff
changeset
|
2 local error = Luan.error |
18504c41b0be
move debug() to Io and remove Debug module;
Franklin Schmidt <fschmidt@gmail.com>
parents:
517
diff
changeset
|
3 local ipairs = Luan.ipairs or error() |
18504c41b0be
move debug() to Io and remove Debug module;
Franklin Schmidt <fschmidt@gmail.com>
parents:
517
diff
changeset
|
4 local load_file = Luan.load_file or error() |
18504c41b0be
move debug() to Io and remove Debug module;
Franklin Schmidt <fschmidt@gmail.com>
parents:
517
diff
changeset
|
5 local try = Luan.try or error() |
693
ca169567ce07
module URIs must now include ".luan"
Franklin Schmidt <fschmidt@gmail.com>
parents:
555
diff
changeset
|
6 local Table = require "luan:Table.luan" |
1277 | 7 local pack = Table.pack or error() |
8 local unpack = Table.unpack or error() | |
693
ca169567ce07
module URIs must now include ".luan"
Franklin Schmidt <fschmidt@gmail.com>
parents:
555
diff
changeset
|
9 local Io = require "luan:Io.luan" |
554
18504c41b0be
move debug() to Io and remove Debug module;
Franklin Schmidt <fschmidt@gmail.com>
parents:
517
diff
changeset
|
10 local print = Io.print or error() |
1436 | 11 local Logging = require "luan:logging/Logging.luan" |
320
fed1893821bf
remove global namespace
fschmidt@gmail.com <fschmidt@gmail.com@21e917c8-12df-6dd8-5cb6-c86387c605b9>
parents:
313
diff
changeset
|
12 |
133
98aba462c422
add tools/cmd_line.luan
fschmidt@gmail.com <fschmidt@gmail.com@21e917c8-12df-6dd8-5cb6-c86387c605b9>
parents:
diff
changeset
|
13 |
98aba462c422
add tools/cmd_line.luan
fschmidt@gmail.com <fschmidt@gmail.com@21e917c8-12df-6dd8-5cb6-c86387c605b9>
parents:
diff
changeset
|
14 local args = {...} |
98aba462c422
add tools/cmd_line.luan
fschmidt@gmail.com <fschmidt@gmail.com@21e917c8-12df-6dd8-5cb6-c86387c605b9>
parents:
diff
changeset
|
15 if #args == 0 then |
774
3e30cf310e56
change download to use bitbucket
Franklin Schmidt <fschmidt@gmail.com>
parents:
693
diff
changeset
|
16 print("Luan "..Luan.VERSION) |
554
18504c41b0be
move debug() to Io and remove Debug module;
Franklin Schmidt <fschmidt@gmail.com>
parents:
517
diff
changeset
|
17 Io.debug("> ") |
133
98aba462c422
add tools/cmd_line.luan
fschmidt@gmail.com <fschmidt@gmail.com@21e917c8-12df-6dd8-5cb6-c86387c605b9>
parents:
diff
changeset
|
18 else |
462
2e79b47d02a2
remove all command line options;
Franklin Schmidt <fschmidt@gmail.com>
parents:
421
diff
changeset
|
19 local file = args[1] |
323
cd2924a1052c
improve testing
fschmidt@gmail.com <fschmidt@gmail.com@21e917c8-12df-6dd8-5cb6-c86387c605b9>
parents:
322
diff
changeset
|
20 Luan.arg = {} |
133
98aba462c422
add tools/cmd_line.luan
fschmidt@gmail.com <fschmidt@gmail.com@21e917c8-12df-6dd8-5cb6-c86387c605b9>
parents:
diff
changeset
|
21 for j,v in ipairs(args) do |
462
2e79b47d02a2
remove all command line options;
Franklin Schmidt <fschmidt@gmail.com>
parents:
421
diff
changeset
|
22 Luan.arg[j-1] = v |
133
98aba462c422
add tools/cmd_line.luan
fschmidt@gmail.com <fschmidt@gmail.com@21e917c8-12df-6dd8-5cb6-c86387c605b9>
parents:
diff
changeset
|
23 end |
326
db37d6aee4db
remove try-catch statement;
fschmidt@gmail.com <fschmidt@gmail.com@21e917c8-12df-6dd8-5cb6-c86387c605b9>
parents:
323
diff
changeset
|
24 try { |
db37d6aee4db
remove try-catch statement;
fschmidt@gmail.com <fschmidt@gmail.com@21e917c8-12df-6dd8-5cb6-c86387c605b9>
parents:
323
diff
changeset
|
25 function() |
1349 | 26 local main_file = load_file(file) or error("file '"..file.."' not found") |
1277 | 27 local rtn = pack( main_file( unpack(Luan.arg) ) ) |
28 if rtn.n > 0 then | |
29 print( unpack(rtn) ) | |
30 end | |
1175
d6d0bd05ad8c
exit on bind conflict, serve "127.0.0.1" for serve_for_nginx
Franklin Schmidt <fschmidt@gmail.com>
parents:
775
diff
changeset
|
31 end |
326
db37d6aee4db
remove try-catch statement;
fschmidt@gmail.com <fschmidt@gmail.com@21e917c8-12df-6dd8-5cb6-c86387c605b9>
parents:
323
diff
changeset
|
32 catch = function(e) |
1353
8d95711f6615
replace java() with require "java"
Franklin Schmidt <fschmidt@gmail.com>
parents:
1349
diff
changeset
|
33 -- require "java"; e.java.printStackTrace(); |
326
db37d6aee4db
remove try-catch statement;
fschmidt@gmail.com <fschmidt@gmail.com@21e917c8-12df-6dd8-5cb6-c86387c605b9>
parents:
323
diff
changeset
|
34 Io.print_to(Io.stderr, e ) |
1175
d6d0bd05ad8c
exit on bind conflict, serve "127.0.0.1" for serve_for_nginx
Franklin Schmidt <fschmidt@gmail.com>
parents:
775
diff
changeset
|
35 end |
326
db37d6aee4db
remove try-catch statement;
fschmidt@gmail.com <fschmidt@gmail.com@21e917c8-12df-6dd8-5cb6-c86387c605b9>
parents:
323
diff
changeset
|
36 } |
133
98aba462c422
add tools/cmd_line.luan
fschmidt@gmail.com <fschmidt@gmail.com@21e917c8-12df-6dd8-5cb6-c86387c605b9>
parents:
diff
changeset
|
37 end |