Lua:获取参数的文字名称。

有没有 Lua 的技巧可以实现类似上面的功能?


并不是每个人都需要解释为什么要做某件事;有些人会变得很恼火,如果他们没有得到一个真实的例子。所以:

local function registerTestSuite(suite)
   if (LUnit) then
      LUnit:AddTestSuite(
            HotNReady.."_"..GetVariableName(suite), --HotNReady_PizzaTestSuite
            suite);
   end;
end;

原文链接 https://stackoverflow.com/questions/1416815

点赞
stackoverflow用户147842
stackoverflow用户147842

试试使用debug库

你可以使用**debug.getlocal([thread,] level,local)**获取有关本地变量的信息,包括其名称。

2009-09-13 04:29:21
stackoverflow用户6236
stackoverflow用户6236

如果你想在纯 Lua 中实现这个功能是不可能的。

如果你真的需要,可以尝试使用Metalua

2009-09-14 07:08:03
stackoverflow用户6064933
stackoverflow用户6064933

现在您还可以使用icecream-lua来获取参数的字面名称:

local icecream = require('icecream')

local foo = 1
local bar = 'abc'

icecream(foo, bar)

输出结果如下:

ic| foo = 1, bar = abc

2022-12-01 09:58:04