rufus-lua-moon 0.4.0.1 → 0.5.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/vendor/leafo/moonscript/cmd/args.lua +69 -0
- data/vendor/leafo/moonscript/cmd/coverage.lua +1 -0
- data/vendor/leafo/moonscript/cmd/moonc.lua +1 -1
- data/vendor/leafo/moonscript/cmd/watchers.lua +269 -0
- data/vendor/leafo/moonscript/compile/statement.lua +6 -6
- data/vendor/leafo/moonscript/compile/value.lua +6 -3
- data/vendor/leafo/moonscript/dump.lua +1 -1
- data/vendor/leafo/moonscript/parse.lua +22 -19
- data/vendor/leafo/moonscript/parse/literals.lua +6 -1
- data/vendor/leafo/moonscript/parse/util.lua +60 -3
- data/vendor/leafo/moonscript/transform/class.lua +1 -1
- data/vendor/leafo/moonscript/transform/names.lua +12 -1
- data/vendor/leafo/moonscript/transform/statement.lua +57 -18
- data/vendor/leafo/moonscript/transform/value.lua +2 -2
- data/vendor/leafo/moonscript/version.lua +1 -1
- metadata +5 -17
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 0ba945cbe870fea8680be30b884f6b9c0db0468e
|
4
|
+
data.tar.gz: 57e18176d0bdfafd8e750cb0cd0ddfd58a41bce2
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: ef694a92dc32e88ec30f5f98974a451db8061e38763cc257d10ca7b3c5e7fc5b6a4046d7b29f88f35af5d93c5e166ddf91c461a5ccae8e96b646445ae090d090
|
7
|
+
data.tar.gz: 648090a519c07b3b559438c748bc7eb0f5dbbfbfe72c00c5da2624d7fd3c93d353a324658004c205f67d6faf1428cbc68b097a59a1c5758031314583c01a9cf8
|
@@ -0,0 +1,69 @@
|
|
1
|
+
local unpack
|
2
|
+
unpack = require("moonscript.util").unpack
|
3
|
+
local parse_spec
|
4
|
+
parse_spec = function(spec)
|
5
|
+
local flags, words
|
6
|
+
if type(spec) == "table" then
|
7
|
+
flags, words = unpack(spec), spec
|
8
|
+
else
|
9
|
+
flags, words = spec, { }
|
10
|
+
end
|
11
|
+
assert("no flags for arguments")
|
12
|
+
local out = { }
|
13
|
+
for part in flags:gmatch("%w:?") do
|
14
|
+
if part:match(":$") then
|
15
|
+
out[part:sub(1, 1)] = {
|
16
|
+
value = true
|
17
|
+
}
|
18
|
+
else
|
19
|
+
out[part] = { }
|
20
|
+
end
|
21
|
+
end
|
22
|
+
return out
|
23
|
+
end
|
24
|
+
local parse_arguments
|
25
|
+
parse_arguments = function(spec, args)
|
26
|
+
spec = parse_spec(spec)
|
27
|
+
local out = { }
|
28
|
+
local remaining = { }
|
29
|
+
local last_flag = nil
|
30
|
+
for _index_0 = 1, #args do
|
31
|
+
local _continue_0 = false
|
32
|
+
repeat
|
33
|
+
local arg = args[_index_0]
|
34
|
+
local group = { }
|
35
|
+
if last_flag then
|
36
|
+
out[last_flag] = arg
|
37
|
+
_continue_0 = true
|
38
|
+
break
|
39
|
+
end
|
40
|
+
do
|
41
|
+
local flag = arg:match("-(%w+)")
|
42
|
+
if flag then
|
43
|
+
do
|
44
|
+
local short_name = spec[flag]
|
45
|
+
if short_name then
|
46
|
+
out[short_name] = true
|
47
|
+
else
|
48
|
+
for char in flag:gmatch(".") do
|
49
|
+
out[char] = true
|
50
|
+
end
|
51
|
+
end
|
52
|
+
end
|
53
|
+
_continue_0 = true
|
54
|
+
break
|
55
|
+
end
|
56
|
+
end
|
57
|
+
table.insert(remaining, arg)
|
58
|
+
_continue_0 = true
|
59
|
+
until true
|
60
|
+
if not _continue_0 then
|
61
|
+
break
|
62
|
+
end
|
63
|
+
end
|
64
|
+
return out, remaining
|
65
|
+
end
|
66
|
+
return {
|
67
|
+
parse_arguments = parse_arguments,
|
68
|
+
parse_spec = parse_spec
|
69
|
+
}
|
@@ -0,0 +1,269 @@
|
|
1
|
+
local remove_dupes
|
2
|
+
remove_dupes = function(list, key_fn)
|
3
|
+
local seen = { }
|
4
|
+
return (function()
|
5
|
+
local _accum_0 = { }
|
6
|
+
local _len_0 = 1
|
7
|
+
for _index_0 = 1, #list do
|
8
|
+
local _continue_0 = false
|
9
|
+
repeat
|
10
|
+
local item = list[_index_0]
|
11
|
+
local key
|
12
|
+
if key_fn then
|
13
|
+
key = key_fn(item)
|
14
|
+
else
|
15
|
+
key = item
|
16
|
+
end
|
17
|
+
if seen[key] then
|
18
|
+
_continue_0 = true
|
19
|
+
break
|
20
|
+
end
|
21
|
+
seen[key] = true
|
22
|
+
local _value_0 = item
|
23
|
+
_accum_0[_len_0] = _value_0
|
24
|
+
_len_0 = _len_0 + 1
|
25
|
+
_continue_0 = true
|
26
|
+
until true
|
27
|
+
if not _continue_0 then
|
28
|
+
break
|
29
|
+
end
|
30
|
+
end
|
31
|
+
return _accum_0
|
32
|
+
end)()
|
33
|
+
end
|
34
|
+
local plural
|
35
|
+
plural = function(count, word)
|
36
|
+
return tostring(count) .. " " .. tostring(word) .. tostring(count == 1 and "" or "s")
|
37
|
+
end
|
38
|
+
local Watcher
|
39
|
+
do
|
40
|
+
local _class_0
|
41
|
+
local _base_0 = {
|
42
|
+
start_msg = "Starting watch loop (Ctrl-C to exit)",
|
43
|
+
print_start = function(self, mode, misc)
|
44
|
+
return io.stderr:write(tostring(self.start_msg) .. " with " .. tostring(mode) .. " [" .. tostring(misc) .. "]\n")
|
45
|
+
end
|
46
|
+
}
|
47
|
+
_base_0.__index = _base_0
|
48
|
+
_class_0 = setmetatable({
|
49
|
+
__init = function(self, file_list)
|
50
|
+
self.file_list = file_list
|
51
|
+
end,
|
52
|
+
__base = _base_0,
|
53
|
+
__name = "Watcher"
|
54
|
+
}, {
|
55
|
+
__index = _base_0,
|
56
|
+
__call = function(cls, ...)
|
57
|
+
local _self_0 = setmetatable({}, _base_0)
|
58
|
+
cls.__init(_self_0, ...)
|
59
|
+
return _self_0
|
60
|
+
end
|
61
|
+
})
|
62
|
+
_base_0.__class = _class_0
|
63
|
+
Watcher = _class_0
|
64
|
+
end
|
65
|
+
local InotifyWacher
|
66
|
+
do
|
67
|
+
local _class_0
|
68
|
+
local _parent_0 = Watcher
|
69
|
+
local _base_0 = {
|
70
|
+
get_dirs = function(self)
|
71
|
+
local parse_dir
|
72
|
+
parse_dir = require("moonscript.cmd.moonc").parse_dir
|
73
|
+
local dirs
|
74
|
+
do
|
75
|
+
local _accum_0 = { }
|
76
|
+
local _len_0 = 1
|
77
|
+
local _list_0 = self.file_list
|
78
|
+
for _index_0 = 1, #_list_0 do
|
79
|
+
local _des_0 = _list_0[_index_0]
|
80
|
+
local file_path
|
81
|
+
file_path = _des_0[1]
|
82
|
+
local dir = parse_dir(file_path)
|
83
|
+
if dir == "" then
|
84
|
+
dir = "./"
|
85
|
+
end
|
86
|
+
local _value_0 = dir
|
87
|
+
_accum_0[_len_0] = _value_0
|
88
|
+
_len_0 = _len_0 + 1
|
89
|
+
end
|
90
|
+
dirs = _accum_0
|
91
|
+
end
|
92
|
+
return remove_dupes(dirs)
|
93
|
+
end,
|
94
|
+
each_update = function(self)
|
95
|
+
return coroutine.wrap(function()
|
96
|
+
local dirs = self:get_dirs()
|
97
|
+
self:print_start("inotify", plural(#dirs, "dir"))
|
98
|
+
local wd_table = { }
|
99
|
+
local inotify = require("inotify")
|
100
|
+
local handle = inotify.init()
|
101
|
+
for _index_0 = 1, #dirs do
|
102
|
+
local dir = dirs[_index_0]
|
103
|
+
local wd = handle:addwatch(dir, inotify.IN_CLOSE_WRITE, inotify.IN_MOVED_TO)
|
104
|
+
wd_table[wd] = dir
|
105
|
+
end
|
106
|
+
while true do
|
107
|
+
local events = handle:read()
|
108
|
+
if not (events) then
|
109
|
+
break
|
110
|
+
end
|
111
|
+
for _index_0 = 1, #events do
|
112
|
+
local _continue_0 = false
|
113
|
+
repeat
|
114
|
+
local ev = events[_index_0]
|
115
|
+
local fname = ev.name
|
116
|
+
if not (fname:match("%.moon$")) then
|
117
|
+
_continue_0 = true
|
118
|
+
break
|
119
|
+
end
|
120
|
+
local dir = wd_table[ev.wd]
|
121
|
+
if dir ~= "./" then
|
122
|
+
fname = dir .. fname
|
123
|
+
end
|
124
|
+
coroutine.yield(fname)
|
125
|
+
_continue_0 = true
|
126
|
+
until true
|
127
|
+
if not _continue_0 then
|
128
|
+
break
|
129
|
+
end
|
130
|
+
end
|
131
|
+
end
|
132
|
+
end)
|
133
|
+
end
|
134
|
+
}
|
135
|
+
_base_0.__index = _base_0
|
136
|
+
setmetatable(_base_0, _parent_0.__base)
|
137
|
+
_class_0 = setmetatable({
|
138
|
+
__init = function(self, ...)
|
139
|
+
return _class_0.__parent.__init(self, ...)
|
140
|
+
end,
|
141
|
+
__base = _base_0,
|
142
|
+
__name = "InotifyWacher",
|
143
|
+
__parent = _parent_0
|
144
|
+
}, {
|
145
|
+
__index = function(cls, name)
|
146
|
+
local val = rawget(_base_0, name)
|
147
|
+
if val == nil then
|
148
|
+
local parent = rawget(cls, "__parent")
|
149
|
+
if parent then
|
150
|
+
return parent[name]
|
151
|
+
end
|
152
|
+
else
|
153
|
+
return val
|
154
|
+
end
|
155
|
+
end,
|
156
|
+
__call = function(cls, ...)
|
157
|
+
local _self_0 = setmetatable({}, _base_0)
|
158
|
+
cls.__init(_self_0, ...)
|
159
|
+
return _self_0
|
160
|
+
end
|
161
|
+
})
|
162
|
+
_base_0.__class = _class_0
|
163
|
+
local self = _class_0
|
164
|
+
self.available = function(self)
|
165
|
+
return pcall(function()
|
166
|
+
return require("inotify")
|
167
|
+
end)
|
168
|
+
end
|
169
|
+
if _parent_0.__inherited then
|
170
|
+
_parent_0.__inherited(_parent_0, _class_0)
|
171
|
+
end
|
172
|
+
InotifyWacher = _class_0
|
173
|
+
end
|
174
|
+
local SleepWatcher
|
175
|
+
do
|
176
|
+
local _class_0
|
177
|
+
local _parent_0 = Watcher
|
178
|
+
local _base_0 = {
|
179
|
+
polling_rate = 1.0,
|
180
|
+
get_sleep_func = function(self)
|
181
|
+
local sleep
|
182
|
+
pcall(function()
|
183
|
+
sleep = require("socket").sleep
|
184
|
+
end)
|
185
|
+
sleep = sleep or require("moonscript")._sleep
|
186
|
+
if not (sleep) then
|
187
|
+
error("Missing sleep function; install LuaSocket")
|
188
|
+
end
|
189
|
+
return sleep
|
190
|
+
end,
|
191
|
+
each_update = function(self)
|
192
|
+
return coroutine.wrap(function()
|
193
|
+
local lfs = require("lfs")
|
194
|
+
local sleep = self:get_sleep_func()
|
195
|
+
self:print_start("polling", plural(#self.file_list, "files"))
|
196
|
+
local mod_time = { }
|
197
|
+
while true do
|
198
|
+
local _list_0 = self.file_list
|
199
|
+
for _index_0 = 1, #_list_0 do
|
200
|
+
local _continue_0 = false
|
201
|
+
repeat
|
202
|
+
local _des_0 = _list_0[_index_0]
|
203
|
+
local file
|
204
|
+
file = _des_0[1]
|
205
|
+
local time = lfs.attributes(file, "modification")
|
206
|
+
print(file, time)
|
207
|
+
if not (time) then
|
208
|
+
mod_time[file] = nil
|
209
|
+
_continue_0 = true
|
210
|
+
break
|
211
|
+
end
|
212
|
+
if not (mod_time[file]) then
|
213
|
+
mod_time[file] = time
|
214
|
+
_continue_0 = true
|
215
|
+
break
|
216
|
+
end
|
217
|
+
if time > mod_time[file] then
|
218
|
+
mod_time[file] = time
|
219
|
+
coroutine.yield(file)
|
220
|
+
end
|
221
|
+
_continue_0 = true
|
222
|
+
until true
|
223
|
+
if not _continue_0 then
|
224
|
+
break
|
225
|
+
end
|
226
|
+
end
|
227
|
+
sleep(self.polling_rate)
|
228
|
+
end
|
229
|
+
end)
|
230
|
+
end
|
231
|
+
}
|
232
|
+
_base_0.__index = _base_0
|
233
|
+
setmetatable(_base_0, _parent_0.__base)
|
234
|
+
_class_0 = setmetatable({
|
235
|
+
__init = function(self, ...)
|
236
|
+
return _class_0.__parent.__init(self, ...)
|
237
|
+
end,
|
238
|
+
__base = _base_0,
|
239
|
+
__name = "SleepWatcher",
|
240
|
+
__parent = _parent_0
|
241
|
+
}, {
|
242
|
+
__index = function(cls, name)
|
243
|
+
local val = rawget(_base_0, name)
|
244
|
+
if val == nil then
|
245
|
+
local parent = rawget(cls, "__parent")
|
246
|
+
if parent then
|
247
|
+
return parent[name]
|
248
|
+
end
|
249
|
+
else
|
250
|
+
return val
|
251
|
+
end
|
252
|
+
end,
|
253
|
+
__call = function(cls, ...)
|
254
|
+
local _self_0 = setmetatable({}, _base_0)
|
255
|
+
cls.__init(_self_0, ...)
|
256
|
+
return _self_0
|
257
|
+
end
|
258
|
+
})
|
259
|
+
_base_0.__class = _class_0
|
260
|
+
if _parent_0.__inherited then
|
261
|
+
_parent_0.__inherited(_parent_0, _class_0)
|
262
|
+
end
|
263
|
+
SleepWatcher = _class_0
|
264
|
+
end
|
265
|
+
return {
|
266
|
+
Watcher = Watcher,
|
267
|
+
SleepWatcher = SleepWatcher,
|
268
|
+
InotifyWacher = InotifyWacher
|
269
|
+
}
|
@@ -57,7 +57,7 @@ return {
|
|
57
57
|
end
|
58
58
|
end,
|
59
59
|
assign = function(self, node)
|
60
|
-
local
|
60
|
+
local names, values = unpack(node, 2)
|
61
61
|
local undeclared = self:declare(names)
|
62
62
|
local declare = "local " .. concat(undeclared, ", ")
|
63
63
|
local has_fndef = false
|
@@ -136,7 +136,7 @@ return {
|
|
136
136
|
current = next
|
137
137
|
end
|
138
138
|
for _index_0 = 4, #node do
|
139
|
-
cond = node[_index_0]
|
139
|
+
local cond = node[_index_0]
|
140
140
|
add_clause(cond)
|
141
141
|
end
|
142
142
|
return root
|
@@ -150,7 +150,7 @@ return {
|
|
150
150
|
end
|
151
151
|
end,
|
152
152
|
["while"] = function(self, node)
|
153
|
-
local
|
153
|
+
local cond, block = unpack(node, 2)
|
154
154
|
do
|
155
155
|
local _with_0 = self:block(self:line("while ", self:value(cond), " do"))
|
156
156
|
_with_0:stms(block)
|
@@ -158,7 +158,7 @@ return {
|
|
158
158
|
end
|
159
159
|
end,
|
160
160
|
["for"] = function(self, node)
|
161
|
-
local
|
161
|
+
local name, bounds, block = unpack(node, 2)
|
162
162
|
local loop = self:line("for ", self:name(name), " = ", self:value({
|
163
163
|
"explist",
|
164
164
|
unpack(bounds)
|
@@ -173,7 +173,7 @@ return {
|
|
173
173
|
end
|
174
174
|
end,
|
175
175
|
foreach = function(self, node)
|
176
|
-
local
|
176
|
+
local names, exps, block = unpack(node, 2)
|
177
177
|
local loop
|
178
178
|
do
|
179
179
|
local _with_0 = self:line()
|
@@ -210,7 +210,7 @@ return {
|
|
210
210
|
end
|
211
211
|
end,
|
212
212
|
export = function(self, node)
|
213
|
-
local
|
213
|
+
local names = unpack(node, 2)
|
214
214
|
if type(names) == "string" then
|
215
215
|
if names == "*" then
|
216
216
|
self.export_all = true
|
@@ -71,7 +71,7 @@ return {
|
|
71
71
|
return self:line("(", self:value(node[2]), ")")
|
72
72
|
end,
|
73
73
|
string = function(self, node)
|
74
|
-
local
|
74
|
+
local delim, inner = unpack(node, 2)
|
75
75
|
local end_delim = delim:gsub("%[", "]")
|
76
76
|
if delim == "'" or delim == '"' then
|
77
77
|
inner = inner:gsub("[\r\n]", string_chars)
|
@@ -133,7 +133,7 @@ return {
|
|
133
133
|
return self:line(callee_value, actions)
|
134
134
|
end,
|
135
135
|
fndef = function(self, node)
|
136
|
-
local
|
136
|
+
local args, whitelist, arrow, block = unpack(node, 2)
|
137
137
|
local default_args = { }
|
138
138
|
local self_args = { }
|
139
139
|
local arg_names
|
@@ -238,7 +238,7 @@ return {
|
|
238
238
|
end
|
239
239
|
end,
|
240
240
|
table = function(self, node)
|
241
|
-
local
|
241
|
+
local items = unpack(node, 2)
|
242
242
|
do
|
243
243
|
local _with_0 = self:block("{", "}")
|
244
244
|
local format_line
|
@@ -286,6 +286,9 @@ return {
|
|
286
286
|
number = function(self, node)
|
287
287
|
return node[2]
|
288
288
|
end,
|
289
|
+
bitnot = function(self, node)
|
290
|
+
return self:line("~", self:value(node[2]))
|
291
|
+
end,
|
289
292
|
length = function(self, node)
|
290
293
|
return self:line("#", self:value(node[2]))
|
291
294
|
end,
|
@@ -15,10 +15,10 @@ local wrap_env
|
|
15
15
|
wrap_env = require("moonscript.parse.env").wrap_env
|
16
16
|
local R, S, V, P, C, Ct, Cmt, Cg, Cb, Cc
|
17
17
|
R, S, V, P, C, Ct, Cmt, Cg, Cb, Cc = lpeg.R, lpeg.S, lpeg.V, lpeg.P, lpeg.C, lpeg.Ct, lpeg.Cmt, lpeg.Cg, lpeg.Cb, lpeg.Cc
|
18
|
-
local White, Break, Stop, Comment, Space, SomeSpace, SpaceBreak, EmptyLine, AlphaNum, Num, Shebang, _Name
|
18
|
+
local White, Break, Stop, Comment, Space, SomeSpace, SpaceBreak, EmptyLine, AlphaNum, Num, Shebang, L, _Name
|
19
19
|
do
|
20
20
|
local _obj_0 = require("moonscript.parse.literals")
|
21
|
-
White, Break, Stop, Comment, Space, SomeSpace, SpaceBreak, EmptyLine, AlphaNum, Num, Shebang, _Name = _obj_0.White, _obj_0.Break, _obj_0.Stop, _obj_0.Comment, _obj_0.Space, _obj_0.SomeSpace, _obj_0.SpaceBreak, _obj_0.EmptyLine, _obj_0.AlphaNum, _obj_0.Num, _obj_0.Shebang, _obj_0.Name
|
21
|
+
White, Break, Stop, Comment, Space, SomeSpace, SpaceBreak, EmptyLine, AlphaNum, Num, Shebang, L, _Name = _obj_0.White, _obj_0.Break, _obj_0.Stop, _obj_0.Comment, _obj_0.Space, _obj_0.SomeSpace, _obj_0.SpaceBreak, _obj_0.EmptyLine, _obj_0.AlphaNum, _obj_0.Num, _obj_0.Shebang, _obj_0.L, _obj_0.Name
|
22
22
|
end
|
23
23
|
local SpaceName = Space * _Name
|
24
24
|
Num = Space * (Num / function(v)
|
@@ -27,10 +27,10 @@ Num = Space * (Num / function(v)
|
|
27
27
|
v
|
28
28
|
}
|
29
29
|
end)
|
30
|
-
local Indent, Cut, ensure, extract_line, mark, pos, flatten_or_mark, is_assignable, check_assignable, format_assign, format_single_assign, sym, symx, simple_string, wrap_func_arg, join_chain, wrap_decorator, check_lua_string, self_assign
|
30
|
+
local Indent, Cut, ensure, extract_line, mark, pos, flatten_or_mark, is_assignable, check_assignable, format_assign, format_single_assign, sym, symx, simple_string, wrap_func_arg, join_chain, wrap_decorator, check_lua_string, self_assign, got
|
31
31
|
do
|
32
32
|
local _obj_0 = require("moonscript.parse.util")
|
33
|
-
Indent, Cut, ensure, extract_line, mark, pos, flatten_or_mark, is_assignable, check_assignable, format_assign, format_single_assign, sym, symx, simple_string, wrap_func_arg, join_chain, wrap_decorator, check_lua_string, self_assign = _obj_0.Indent, _obj_0.Cut, _obj_0.ensure, _obj_0.extract_line, _obj_0.mark, _obj_0.pos, _obj_0.flatten_or_mark, _obj_0.is_assignable, _obj_0.check_assignable, _obj_0.format_assign, _obj_0.format_single_assign, _obj_0.sym, _obj_0.symx, _obj_0.simple_string, _obj_0.wrap_func_arg, _obj_0.join_chain, _obj_0.wrap_decorator, _obj_0.check_lua_string, _obj_0.self_assign
|
33
|
+
Indent, Cut, ensure, extract_line, mark, pos, flatten_or_mark, is_assignable, check_assignable, format_assign, format_single_assign, sym, symx, simple_string, wrap_func_arg, join_chain, wrap_decorator, check_lua_string, self_assign, got = _obj_0.Indent, _obj_0.Cut, _obj_0.ensure, _obj_0.extract_line, _obj_0.mark, _obj_0.pos, _obj_0.flatten_or_mark, _obj_0.is_assignable, _obj_0.check_assignable, _obj_0.format_assign, _obj_0.format_single_assign, _obj_0.sym, _obj_0.symx, _obj_0.simple_string, _obj_0.wrap_func_arg, _obj_0.join_chain, _obj_0.wrap_decorator, _obj_0.check_lua_string, _obj_0.self_assign, _obj_0.got
|
34
34
|
end
|
35
35
|
local build_grammar = wrap_env(debug_grammar, function(root)
|
36
36
|
local _indent = Stack(0)
|
@@ -110,10 +110,10 @@ local build_grammar = wrap_env(debug_grammar, function(root)
|
|
110
110
|
File = Shebang ^ -1 * (Block + Ct("")),
|
111
111
|
Block = Ct(Line * (Break ^ 1 * Line) ^ 0),
|
112
112
|
CheckIndent = Cmt(Indent, check_indent),
|
113
|
-
Line = (CheckIndent * Statement + Space *
|
113
|
+
Line = (CheckIndent * Statement + Space * L(Stop)),
|
114
114
|
Statement = pos(Import + While + With + For + ForEach + Switch + Return + Local + Export + BreakLoop + Ct(ExpList) * (Update + Assign) ^ -1 / format_assign) * Space * ((key("if") * Exp * (key("else") * Exp) ^ -1 * Space / mark("if") + key("unless") * Exp / mark("unless") + CompInner / mark("comprehension")) * Space) ^ -1 / wrap_decorator,
|
115
115
|
Body = Space ^ -1 * Break * EmptyLine ^ 0 * InBlock + Ct(Statement),
|
116
|
-
Advance =
|
116
|
+
Advance = L(Cmt(Indent, advance_indent)),
|
117
117
|
PushIndent = Cmt(Indent, push_indent),
|
118
118
|
PreventIndent = Cmt(Cc(-1), push_indent),
|
119
119
|
PopIndent = Cmt("", pop_indent),
|
@@ -131,8 +131,10 @@ local build_grammar = wrap_env(debug_grammar, function(root)
|
|
131
131
|
SwitchCase = key("when") * Ct(ExpList) * key("then") ^ -1 * Body / mark("case"),
|
132
132
|
SwitchElse = key("else") * Body / mark("else"),
|
133
133
|
IfCond = Exp * Assign ^ -1 / format_single_assign,
|
134
|
-
|
135
|
-
|
134
|
+
IfElse = (Break * EmptyLine ^ 0 * CheckIndent) ^ -1 * key("else") * Body / mark("else"),
|
135
|
+
IfElseIf = (Break * EmptyLine ^ 0 * CheckIndent) ^ -1 * key("elseif") * pos(IfCond) * key("then") ^ -1 * Body / mark("elseif"),
|
136
|
+
If = key("if") * IfCond * key("then") ^ -1 * Body * IfElseIf ^ 0 * IfElse ^ -1 / mark("if"),
|
137
|
+
Unless = key("unless") * IfCond * key("then") ^ -1 * Body * IfElseIf ^ 0 * IfElse ^ -1 / mark("unless"),
|
136
138
|
While = key("while") * DisableDo * ensure(Exp, PopDo) * key("do") ^ -1 * Body / mark("while"),
|
137
139
|
For = key("for") * DisableDo * ensure(Name * sym("=") * Ct(Exp * sym(",") * Exp * (sym(",") * Exp) ^ -1), PopDo) * key("do") ^ -1 * Body / mark("for"),
|
138
140
|
ForEach = key("for") * Ct(AssignableNameList) * key("in") * DisableDo * ensure(Ct(sym("*") * Exp / mark("unpack") + ExpList), PopDo) * key("do") ^ -1 * Body / mark("foreach"),
|
@@ -140,20 +142,20 @@ local build_grammar = wrap_env(debug_grammar, function(root)
|
|
140
142
|
Comprehension = sym("[") * Exp * CompInner * sym("]") / mark("comprehension"),
|
141
143
|
TblComprehension = sym("{") * Ct(Exp * (sym(",") * Exp) ^ -1) * CompInner * sym("}") / mark("tblcomprehension"),
|
142
144
|
CompInner = Ct((CompForEach + CompFor) * CompClause ^ 0),
|
143
|
-
CompForEach = key("for") * Ct(
|
145
|
+
CompForEach = key("for") * Ct(AssignableNameList) * key("in") * (sym("*") * Exp / mark("unpack") + Exp) / mark("foreach"),
|
144
146
|
CompFor = key("for" * Name * sym("=") * Ct(Exp * sym(",") * Exp * (sym(",") * Exp) ^ -1) / mark("for")),
|
145
147
|
CompClause = CompFor + CompForEach + key("when") * Exp / mark("when"),
|
146
148
|
Assign = sym("=") * (Ct(With + If + Switch) + Ct(TableBlock + ExpListLow)) / mark("assign"),
|
147
|
-
Update = ((sym("..=") + sym("+=") + sym("-=") + sym("*=") + sym("/=") + sym("%=") + sym("or=") + sym("and=")) / trim) * Exp / mark("update"),
|
148
|
-
CharOperators = Space * C(S("
|
149
|
-
WordOperators = op("or") + op("and") + op("<=") + op(">=") + op("~=") + op("!=") + op("==") + op(".."),
|
149
|
+
Update = ((sym("..=") + sym("+=") + sym("-=") + sym("*=") + sym("/=") + sym("%=") + sym("or=") + sym("and=") + sym("&=") + sym("|=") + sym(">>=") + sym("<<=")) / trim) * Exp / mark("update"),
|
150
|
+
CharOperators = Space * C(S("+-*/%^><|&")),
|
151
|
+
WordOperators = op("or") + op("and") + op("<=") + op(">=") + op("~=") + op("!=") + op("==") + op("..") + op("<<") + op(">>") + op("//"),
|
150
152
|
BinaryOperator = (WordOperators + CharOperators) * SpaceBreak ^ 0,
|
151
153
|
Assignable = Cmt(Chain, check_assignable) + Name + SelfName,
|
152
154
|
Exp = Ct(Value * (BinaryOperator * Value) ^ 0) / flatten_or_mark("exp"),
|
153
|
-
SimpleValue = If + Unless + Switch + With + ClassDecl + ForEach + For + While + Cmt(Do, check_do) + sym("-") * -SomeSpace * Exp / mark("minus") + sym("#") * Exp / mark("length") + key("not") * Exp / mark("not") + TblComprehension + TableLit + Comprehension + FunLit + Num,
|
155
|
+
SimpleValue = If + Unless + Switch + With + ClassDecl + ForEach + For + While + Cmt(Do, check_do) + sym("-") * -SomeSpace * Exp / mark("minus") + sym("#") * Exp / mark("length") + sym("~") * Exp / mark("bitnot") + key("not") * Exp / mark("not") + TblComprehension + TableLit + Comprehension + FunLit + Num,
|
154
156
|
ChainValue = (Chain + Callable) * Ct(InvokeArgs ^ -1) / join_chain,
|
155
157
|
Value = pos(SimpleValue + Ct(KeyValueList) / mark("table") + ChainValue + String),
|
156
|
-
SliceValue =
|
158
|
+
SliceValue = Exp,
|
157
159
|
String = Space * DoubleString + Space * SingleString + LuaString,
|
158
160
|
SingleString = simple_string("'"),
|
159
161
|
DoubleString = simple_string('"', true),
|
@@ -162,7 +164,8 @@ local build_grammar = wrap_env(debug_grammar, function(root)
|
|
162
164
|
LuaStringClose = "]" * P("=") ^ 0 * "]",
|
163
165
|
Callable = pos(Name / mark("ref")) + SelfName + VarArg + Parens / mark("parens"),
|
164
166
|
Parens = sym("(") * SpaceBreak ^ 0 * Exp * SpaceBreak ^ 0 * sym(")"),
|
165
|
-
FnArgs = symx("(") * SpaceBreak ^ 0 * Ct(
|
167
|
+
FnArgs = symx("(") * SpaceBreak ^ 0 * Ct(FnArgsExpList ^ -1) * SpaceBreak ^ 0 * sym(")") + sym("!") * -P("=") * Ct(""),
|
168
|
+
FnArgsExpList = Exp * ((Break + sym(",")) * White * Exp) ^ 0,
|
166
169
|
Chain = (Callable + String + -S(".\\")) * ChainItems / mark("chain") + Space * (DotChainItem * ChainItems ^ -1 + ColonChain) / mark("chain"),
|
167
170
|
ChainItems = ChainItem ^ 1 * ColonChain ^ -1 + ColonChain,
|
168
171
|
ChainItem = Invoke + DotChainItem + Slice + symx("[") * Exp / mark("index") * sym("]"),
|
@@ -170,7 +173,7 @@ local build_grammar = wrap_env(debug_grammar, function(root)
|
|
170
173
|
ColonChainItem = symx("\\") * _Name / mark("colon"),
|
171
174
|
ColonChain = ColonChainItem * (Invoke * ChainItems ^ -1) ^ -1,
|
172
175
|
Slice = symx("[") * (SliceValue + Cc(1)) * sym(",") * (SliceValue + Cc("")) * (sym(",") * SliceValue) ^ -1 * sym("]") / mark("slice"),
|
173
|
-
Invoke = FnArgs / mark("call") + SingleString / wrap_func_arg + DoubleString / wrap_func_arg +
|
176
|
+
Invoke = FnArgs / mark("call") + SingleString / wrap_func_arg + DoubleString / wrap_func_arg + L(P("[")) * LuaString / wrap_func_arg,
|
174
177
|
TableValue = KeyValue + Ct(Exp),
|
175
178
|
TableLit = sym("{") * Ct(TableValueList ^ -1 * sym(",") ^ -1 * (SpaceBreak * TableLitLine * (sym(",") ^ -1 * SpaceBreak * TableLitLine) ^ 0 * sym(",") ^ -1) ^ -1) * White * sym("}") / mark("table"),
|
176
179
|
TableValueList = TableValue * (sym(",") * TableValue) ^ 0,
|
@@ -181,11 +184,11 @@ local build_grammar = wrap_env(debug_grammar, function(root)
|
|
181
184
|
ClassBlock = SpaceBreak ^ 1 * Advance * Ct(ClassLine * (SpaceBreak ^ 1 * ClassLine) ^ 0) * PopIndent,
|
182
185
|
ClassLine = CheckIndent * ((KeyValueList / mark("props") + Statement / mark("stm") + Exp / mark("stm")) * sym(",") ^ -1),
|
183
186
|
Export = key("export") * (Cc("class") * ClassDecl + op("*") + op("^") + Ct(NameList) * (sym("=") * Ct(ExpListLow)) ^ -1) / mark("export"),
|
184
|
-
KeyValue = (sym(":") * -SomeSpace * Name * lpeg.Cp()) / self_assign + Ct((KeyName + sym("[") * Exp * sym("]") + DoubleString + SingleString) * symx(":") * (Exp + TableBlock + SpaceBreak ^ 1 * Exp)),
|
187
|
+
KeyValue = (sym(":") * -SomeSpace * Name * lpeg.Cp()) / self_assign + Ct((KeyName + sym("[") * Exp * sym("]") + Space * DoubleString + Space * SingleString) * symx(":") * (Exp + TableBlock + SpaceBreak ^ 1 * Exp)),
|
185
188
|
KeyValueList = KeyValue * (sym(",") * KeyValue) ^ 0,
|
186
189
|
KeyValueLine = CheckIndent * KeyValueList * sym(",") ^ -1,
|
187
|
-
FnArgsDef = sym("(") * Ct(FnArgDefList ^ -1) * (key("using") * Ct(NameList + Space * "nil") + Ct("")) * sym(")") + Ct("") * Ct(""),
|
188
|
-
FnArgDefList = FnArgDef * (sym(",") * FnArgDef) ^ 0 * (sym(",") * Ct(VarArg)) ^ 0 + Ct(VarArg),
|
190
|
+
FnArgsDef = sym("(") * White * Ct(FnArgDefList ^ -1) * (key("using") * Ct(NameList + Space * "nil") + Ct("")) * White * sym(")") + Ct("") * Ct(""),
|
191
|
+
FnArgDefList = FnArgDef * ((sym(",") + Break) * White * FnArgDef) ^ 0 * ((sym(",") + Break) * White * Ct(VarArg)) ^ 0 + Ct(VarArg),
|
189
192
|
FnArgDef = Ct((Name + SelfName) * (sym("=") * Exp) ^ -1),
|
190
193
|
FunLit = FnArgsDef * (sym("->") * Cc("slim") + sym("=>") * Cc("fat")) * (Body + Ct("")) / mark("fndef"),
|
191
194
|
NameList = Name * (sym(",") * Name) ^ 0,
|
@@ -5,11 +5,15 @@ do
|
|
5
5
|
local _obj_0 = require("lpeg")
|
6
6
|
S, P, R, C = _obj_0.S, _obj_0.P, _obj_0.R, _obj_0.C
|
7
7
|
end
|
8
|
+
local lpeg = require("lpeg")
|
9
|
+
local L = lpeg.luversion and lpeg.L or function(v)
|
10
|
+
return #v
|
11
|
+
end
|
8
12
|
local White = S(" \t\r\n") ^ 0
|
9
13
|
local plain_space = S(" \t") ^ 0
|
10
14
|
local Break = P("\r") ^ -1 * P("\n")
|
11
15
|
local Stop = Break + -1
|
12
|
-
local Comment = P("--") * (1 - S("\r\n")) ^ 0 *
|
16
|
+
local Comment = P("--") * (1 - S("\r\n")) ^ 0 * L(Stop)
|
13
17
|
local Space = plain_space * Comment ^ -1
|
14
18
|
local SomeSpace = S(" \t") ^ 1 * Comment ^ -1
|
15
19
|
local SpaceBreak = Space * Break
|
@@ -19,6 +23,7 @@ local Name = C(R("az", "AZ", "__") * AlphaNum ^ 0)
|
|
19
23
|
local Num = P("0x") * R("09", "af", "AF") ^ 1 * (S("uU") ^ -1 * S("lL") ^ 2) ^ -1 + R("09") ^ 1 * (S("uU") ^ -1 * S("lL") ^ 2) + (R("09") ^ 1 * (P(".") * R("09") ^ 1) ^ -1 + P(".") * R("09") ^ 1) * (S("eE") * P("-") ^ -1 * R("09") ^ 1) ^ -1
|
20
24
|
local Shebang = P("#!") * P(1 - Stop) ^ 0
|
21
25
|
return safe_module("moonscript.parse.literals", {
|
26
|
+
L = L,
|
22
27
|
White = White,
|
23
28
|
Break = Break,
|
24
29
|
Stop = Stop,
|
@@ -41,6 +41,58 @@ extract_line = function(str, start_pos)
|
|
41
41
|
end
|
42
42
|
return str:match("^.-$")
|
43
43
|
end
|
44
|
+
local show_line_position
|
45
|
+
show_line_position = function(str, pos, context)
|
46
|
+
if context == nil then
|
47
|
+
context = true
|
48
|
+
end
|
49
|
+
local lines = {
|
50
|
+
{ }
|
51
|
+
}
|
52
|
+
for c in str:gmatch(".") do
|
53
|
+
lines[#lines] = lines[#lines] or { }
|
54
|
+
table.insert(lines[#lines], c)
|
55
|
+
if c == "\n" then
|
56
|
+
lines[#lines + 1] = { }
|
57
|
+
end
|
58
|
+
end
|
59
|
+
for i, line in ipairs(lines) do
|
60
|
+
lines[i] = table.concat(line)
|
61
|
+
end
|
62
|
+
local out
|
63
|
+
local remaining = pos - 1
|
64
|
+
for k, line in ipairs(lines) do
|
65
|
+
if remaining < #line then
|
66
|
+
local left = line:sub(1, remaining)
|
67
|
+
local right = line:sub(remaining + 1)
|
68
|
+
out = {
|
69
|
+
tostring(left) .. "◉" .. tostring(right)
|
70
|
+
}
|
71
|
+
if context then
|
72
|
+
do
|
73
|
+
local before = lines[k - 1]
|
74
|
+
if before then
|
75
|
+
table.insert(out, 1, before)
|
76
|
+
end
|
77
|
+
end
|
78
|
+
do
|
79
|
+
local after = lines[k + 1]
|
80
|
+
if after then
|
81
|
+
table.insert(out, after)
|
82
|
+
end
|
83
|
+
end
|
84
|
+
end
|
85
|
+
break
|
86
|
+
else
|
87
|
+
remaining = remaining - #line
|
88
|
+
end
|
89
|
+
end
|
90
|
+
if not (out) then
|
91
|
+
return "-"
|
92
|
+
end
|
93
|
+
out = table.concat(out)
|
94
|
+
return (out:gsub("\n*$", ""))
|
95
|
+
end
|
44
96
|
local mark
|
45
97
|
mark = function(name)
|
46
98
|
return function(...)
|
@@ -60,9 +112,12 @@ pos = function(patt)
|
|
60
112
|
end
|
61
113
|
end
|
62
114
|
local got
|
63
|
-
got = function(what)
|
115
|
+
got = function(what, context)
|
116
|
+
if context == nil then
|
117
|
+
context = true
|
118
|
+
end
|
64
119
|
return Cmt("", function(str, pos)
|
65
|
-
print("++ got " .. tostring(what), "[" .. tostring(
|
120
|
+
print("++ got " .. tostring(what), "[" .. tostring(show_line_position(str, pos, context)) .. "]")
|
66
121
|
return true
|
67
122
|
end)
|
68
123
|
end
|
@@ -245,5 +300,7 @@ return {
|
|
245
300
|
join_chain = join_chain,
|
246
301
|
wrap_decorator = wrap_decorator,
|
247
302
|
check_lua_string = check_lua_string,
|
248
|
-
self_assign = self_assign
|
303
|
+
self_assign = self_assign,
|
304
|
+
got = got,
|
305
|
+
show_line_position = show_line_position
|
249
306
|
}
|
@@ -106,7 +106,7 @@ super_scope = function(value, t, key)
|
|
106
106
|
}
|
107
107
|
end
|
108
108
|
return function(self, node, ret, parent_assign)
|
109
|
-
local
|
109
|
+
local name, parent_val, body = unpack(node, 2)
|
110
110
|
if parent_val == "" then
|
111
111
|
parent_val = nil
|
112
112
|
end
|
@@ -101,7 +101,18 @@ do
|
|
101
101
|
_base_0.__class = _class_0
|
102
102
|
NameProxy = _class_0
|
103
103
|
end
|
104
|
+
local is_name_proxy
|
105
|
+
is_name_proxy = function(v)
|
106
|
+
if not (type(v) == "table") then
|
107
|
+
return false
|
108
|
+
end
|
109
|
+
local _exp_0 = v.__class
|
110
|
+
if LocalName == _exp_0 or NameProxy == _exp_0 then
|
111
|
+
return true
|
112
|
+
end
|
113
|
+
end
|
104
114
|
return {
|
105
115
|
NameProxy = NameProxy,
|
106
|
-
LocalName = LocalName
|
116
|
+
LocalName = LocalName,
|
117
|
+
is_name_proxy = is_name_proxy
|
107
118
|
}
|
@@ -1,7 +1,10 @@
|
|
1
1
|
local Transformer
|
2
2
|
Transformer = require("moonscript.transform.transformer").Transformer
|
3
|
-
local NameProxy
|
4
|
-
|
3
|
+
local NameProxy, LocalName, is_name_proxy
|
4
|
+
do
|
5
|
+
local _obj_0 = require("moonscript.transform.names")
|
6
|
+
NameProxy, LocalName, is_name_proxy = _obj_0.NameProxy, _obj_0.LocalName, _obj_0.is_name_proxy
|
7
|
+
end
|
5
8
|
local Run, transform_last_stm, implicitly_return, last_stm
|
6
9
|
do
|
7
10
|
local _obj_0 = require("moonscript.transform.statements")
|
@@ -201,7 +204,13 @@ return Transformer({
|
|
201
204
|
local _continue_0 = false
|
202
205
|
repeat
|
203
206
|
local name = names[_index_0]
|
204
|
-
|
207
|
+
local str_name
|
208
|
+
if ntype(name) == "ref" then
|
209
|
+
str_name = name[2]
|
210
|
+
else
|
211
|
+
str_name = name
|
212
|
+
end
|
213
|
+
if not (str_name:match("^%u")) then
|
205
214
|
_continue_0 = true
|
206
215
|
break
|
207
216
|
end
|
@@ -339,7 +348,7 @@ return Transformer({
|
|
339
348
|
end
|
340
349
|
end,
|
341
350
|
update = function(self, node)
|
342
|
-
local
|
351
|
+
local name, op, exp = unpack(node, 2)
|
343
352
|
local op_final = op:match("^(.+)=$")
|
344
353
|
if not op_final then
|
345
354
|
error("Unknown op: " .. op)
|
@@ -358,7 +367,7 @@ return Transformer({
|
|
358
367
|
})
|
359
368
|
end,
|
360
369
|
import = function(self, node)
|
361
|
-
local
|
370
|
+
local names, source = unpack(node, 2)
|
362
371
|
local table_values
|
363
372
|
do
|
364
373
|
local _accum_0 = { }
|
@@ -399,7 +408,7 @@ return Transformer({
|
|
399
408
|
}
|
400
409
|
end,
|
401
410
|
comprehension = function(self, node, action)
|
402
|
-
local
|
411
|
+
local exp, clauses = unpack(node, 2)
|
403
412
|
action = action or function(exp)
|
404
413
|
return {
|
405
414
|
exp
|
@@ -475,21 +484,39 @@ return Transformer({
|
|
475
484
|
return wrapped
|
476
485
|
end,
|
477
486
|
unless = function(self, node)
|
478
|
-
|
479
|
-
|
480
|
-
|
481
|
-
"not"
|
487
|
+
local clause = node[2]
|
488
|
+
if ntype(clause) == "assign" then
|
489
|
+
if destructure.has_destructure(clause[2]) then
|
490
|
+
error("destructure not allowed in unless assignment")
|
491
|
+
end
|
492
|
+
return build["do"]({
|
493
|
+
clause,
|
482
494
|
{
|
483
|
-
"
|
484
|
-
|
495
|
+
"if",
|
496
|
+
{
|
497
|
+
"not",
|
498
|
+
clause[2][1]
|
499
|
+
},
|
500
|
+
unpack(node, 3)
|
485
501
|
}
|
486
|
-
}
|
487
|
-
|
488
|
-
|
502
|
+
})
|
503
|
+
else
|
504
|
+
return {
|
505
|
+
"if",
|
506
|
+
{
|
507
|
+
"not",
|
508
|
+
{
|
509
|
+
"parens",
|
510
|
+
clause
|
511
|
+
}
|
512
|
+
},
|
513
|
+
unpack(node, 3)
|
514
|
+
}
|
515
|
+
end
|
489
516
|
end,
|
490
517
|
["if"] = function(self, node, ret)
|
491
518
|
if ntype(node[2]) == "assign" then
|
492
|
-
local
|
519
|
+
local assign, body = unpack(node, 2)
|
493
520
|
if destructure.has_destructure(assign[2]) then
|
494
521
|
local name = NameProxy("des")
|
495
522
|
body = {
|
@@ -649,6 +676,18 @@ return Transformer({
|
|
649
676
|
}
|
650
677
|
}
|
651
678
|
end
|
679
|
+
local names
|
680
|
+
do
|
681
|
+
local _accum_0 = { }
|
682
|
+
local _len_0 = 1
|
683
|
+
local _list_0 = node.names
|
684
|
+
for _index_0 = 1, #_list_0 do
|
685
|
+
local n = _list_0[_index_0]
|
686
|
+
_accum_0[_len_0] = is_name_proxy(n) and n or LocalName(n) or n
|
687
|
+
_len_0 = _len_0 + 1
|
688
|
+
end
|
689
|
+
names = _accum_0
|
690
|
+
end
|
652
691
|
return build.group({
|
653
692
|
list_name ~= list and build.assign_one(list_name, list) or NOOP,
|
654
693
|
slice_var or NOOP,
|
@@ -658,7 +697,7 @@ return Transformer({
|
|
658
697
|
body = {
|
659
698
|
{
|
660
699
|
"assign",
|
661
|
-
|
700
|
+
names,
|
662
701
|
{
|
663
702
|
NameProxy.index(list_name, index_name)
|
664
703
|
}
|
@@ -679,7 +718,7 @@ return Transformer({
|
|
679
718
|
node.body = with_continue_listener(node.body)
|
680
719
|
end,
|
681
720
|
switch = function(self, node, ret)
|
682
|
-
local
|
721
|
+
local exp, conds = unpack(node, 2)
|
683
722
|
local exp_name = NameProxy("exp")
|
684
723
|
local convert_cond
|
685
724
|
convert_cond = function(cond)
|
@@ -89,7 +89,7 @@ return Transformer({
|
|
89
89
|
return a:wrap(node)
|
90
90
|
end,
|
91
91
|
tblcomprehension = function(self, node)
|
92
|
-
local
|
92
|
+
local explist, clauses = unpack(node, 2)
|
93
93
|
local key_exp, value_exp = unpack(explist)
|
94
94
|
local accum = NameProxy("tbl")
|
95
95
|
local inner
|
@@ -234,7 +234,7 @@ return Transformer({
|
|
234
234
|
end
|
235
235
|
end,
|
236
236
|
block_exp = function(self, node)
|
237
|
-
local
|
237
|
+
local body = unpack(node, 2)
|
238
238
|
local fn = nil
|
239
239
|
local arg_list = { }
|
240
240
|
fn = smart_node(build.fndef({
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rufus-lua-moon
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.5.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Stas Ukolov
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-
|
11
|
+
date: 2016-09-27 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -66,20 +66,6 @@ dependencies:
|
|
66
66
|
- - ">="
|
67
67
|
- !ruby/object:Gem::Version
|
68
68
|
version: '0'
|
69
|
-
- !ruby/object:Gem::Dependency
|
70
|
-
name: appveyor-worker
|
71
|
-
requirement: !ruby/object:Gem::Requirement
|
72
|
-
requirements:
|
73
|
-
- - ">="
|
74
|
-
- !ruby/object:Gem::Version
|
75
|
-
version: '0'
|
76
|
-
type: :development
|
77
|
-
prerelease: false
|
78
|
-
version_requirements: !ruby/object:Gem::Requirement
|
79
|
-
requirements:
|
80
|
-
- - ">="
|
81
|
-
- !ruby/object:Gem::Version
|
82
|
-
version: '0'
|
83
69
|
- !ruby/object:Gem::Dependency
|
84
70
|
name: rufus-lua
|
85
71
|
requirement: !ruby/object:Gem::Requirement
|
@@ -106,9 +92,11 @@ files:
|
|
106
92
|
- vendor/leafo/moon/all.moon
|
107
93
|
- vendor/leafo/moon/init.moon
|
108
94
|
- vendor/leafo/moonscript/base.lua
|
95
|
+
- vendor/leafo/moonscript/cmd/args.lua
|
109
96
|
- vendor/leafo/moonscript/cmd/coverage.lua
|
110
97
|
- vendor/leafo/moonscript/cmd/lint.lua
|
111
98
|
- vendor/leafo/moonscript/cmd/moonc.lua
|
99
|
+
- vendor/leafo/moonscript/cmd/watchers.lua
|
112
100
|
- vendor/leafo/moonscript/compile.lua
|
113
101
|
- vendor/leafo/moonscript/compile/statement.lua
|
114
102
|
- vendor/leafo/moonscript/compile/value.lua
|
@@ -154,7 +142,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
154
142
|
version: '0'
|
155
143
|
requirements: []
|
156
144
|
rubyforge_project:
|
157
|
-
rubygems_version: 2.
|
145
|
+
rubygems_version: 2.6.7
|
158
146
|
signing_key:
|
159
147
|
specification_version: 4
|
160
148
|
summary: ''
|