我如何在Moonscript中执行此操作?
function a:do_something(b)
print(b)
end
我尝试的任何东西都不会编译,我在他们的文档中没有看到任何内容。
答案 0 :(得分:2)
在Lua,你写的是以下语法糖:
a.do_something = function(self, b)
print(b)
end
所以你会在MoonScript中做到这一点。 (注意=>
作为将self
添加到函数参数列表前面的简写)
a.do_something = (b) =>
print b
答案 1 :(得分:1)
在MoonScript中你会做:
a.dosomething = (self, b) ->
print b
->
和=>
符号是function
关键字的别名。
a.dosomething = (b) =>
print b
使用上面的=>
(胖箭头)样式,添加范围,即。 self
,自动到参数列表。
答案 2 :(得分:0)
您要找的是class.__base
:
class C
a: (x)=> print x
C.__base.b = (y)=> @a y*2
i=C!
i\b 5
--prints 10