Mercurial > pub > dyncall > dyncall
diff test/call_suite/mk-cases.lua @ 512:4d0541bf9b38
- sharing some test case gen code
author | Tassilo Philipp |
---|---|
date | Sun, 10 Apr 2022 15:51:00 +0200 |
parents | a0c51f34023a |
children | 01f928eb9584 |
line wrap: on
line diff
--- a/test/call_suite/mk-cases.lua Sat Apr 09 23:48:01 2022 +0200 +++ b/test/call_suite/mk-cases.lua Sun Apr 10 15:51:00 2022 +0200 @@ -22,23 +22,10 @@ return table.concat(h,"")..table.concat(t,"") end -function mkfuntab(n) - local s = { "funptr G_funtab[] = {\n"} - for i = 0, n-1 do - s[#s+1] = "\t(funptr)&f"..i..",\n" - end - s[#s+1] = "};\n" - return table.concat(s,"") -end +-- use shared helpers to generate cases +package.path = '../common/?.lua;' .. package.path +require"mk-cases" -function mksigtab(sigs) - local s = { "const char * G_sigtab[] = {\n"} - for k,v in pairs(sigs) do - s[#s+1] = '\t"'..v..'",\n' - end - s[#s+1] = "};\n" - return table.concat(s,"") -end function mkall() local lineno = 0 @@ -49,8 +36,8 @@ sigtab[#sigtab+1] = sig lineno = lineno + 1 end - io.write(mkfuntab(lineno)) - io.write(mksigtab(sigtab)) + io.write(mkfuntab(lineno, 'f', 'funptr', 'G_funtab', true)) + io.write(mksigtab(sigtab, '', 'G_sigtab')) io.write("int G_maxargs = "..maxargs..";\n") end