on master help sign in
functiondef
commit81ab9694a956be068a4fec5e33a1df0b978ea0ab authoriko <mail@iko.soy> dateTue 23 Jul 2024, 16:53 (2 years ago) parentcef984a
4 files changed+13
zod/luau/lib/lua/parser.hoon+8 zod/luau/lib/lua/printer.hoon+1 zod/luau/sur/lua.hoon+1 zod/luau/tests/foo.lua+3
zod/luau/lib/lua/parser.hoon+8
@@ -37,6 +37,14 @@ apex
3737 parse-string
3838 ::
3939 (cold [%wildcard ~] (jest '...'))
40+ ::
41+ %+ cook
42+ |=(=funcbody [%functiondef funcbody])
43+ ;~ pfix
44+ (jest 'function')
45+ wss
46+ parse-funcbody
47+ ==
4048 ==
4149:: Parse expressions separated by binary operators
4250::
zod/luau/lib/lua/printer.hoon+1
@@ -33,6 +33,7 @@ print
3333 %table (print-table +.expr)
3434 %string (print-string +.expr)
3535 %wildcard "..."
36+ %functiondef (print-funcbody +.expr)
3637 ==
3738:: string
3839::
zod/luau/sur/lua.hoon+1
@@ -7,6 +7,7 @@
77 ==
88+$ expr
99 $%
10+ [%functiondef funcbody]
1011 [%wildcard ~]
1112 [%string string]
1213 [%binop expr binop expr]
zod/luau/tests/foo.lua+3
@@ -104,3 +104,6 @@ local function g(x) return math.sin(x) end
104104
105105local a = require('mod2')
106106local b = require('mod2')
107+function adder(x)
108+ return function (y) return x + y end
109+end