【问题标题】:Is it possible to list all the functions of a table?是否可以列出表的所有功能?
【发布时间】:2016-03-27 12:15:30
【问题描述】:

我是 Lua 编程语言的新手,我找不到列出给定表中定义的所有现有函数的方法。 I've checked the documentation for the debug table 并且可以仅获取函数的详细信息,而不是整个表的详细信息。

是否有类似 Lua 中 Python 解释器的 dir() 函数?是否可以列出一个表的所有方法/函数?

【问题讨论】:

  • "在给定表中定义":提示:函数是一个值,因此可以被任何变量引用,包括任意数量的表中的任意数量的字段。显然,正如您所问的,感兴趣的表引用的函数也可能很有趣。但是,要正确使用函数,您需要文档和/或源代码。
  • 另外,没有文档或源代码,无法确定函数是否为方法,即应将表上下文作为第一个参数(“self”)传递,通常使用“:”语法。

标签: lua


【解决方案1】:

迭代和打印?还是我没看懂问题?

for i,v in pairs(table_here) do
    if type(v) == "function" then
        print(i,v,debug.getinfo(v))
    end
end

【讨论】:

  • 非常感谢你教我怎么做!这正是我想要的。
  • @Ericson 不客气!很高兴我能帮忙:)
猜你喜欢
  • 2011-05-01
  • 1970-01-01
  • 1970-01-01
  • 2019-10-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多