嗨,提前感谢。我试图看看是否有办法避免学习 C(我根本不知道)将 userdata 转换为 Lua 表。
我正在使用一个允许用户使用 Lua 脚本编写插件的应用程序。这些插件可以查询应用程序的底层数据。但是查询结果作为用户数据返回,我需要它们在脚本中可用。
我无法在应用程序文档中找到有关使用返回数据集的任何内容。给出的唯一描述是我正在运行的操作:
执行当前分配的查询字符串,并使用结果来构造一个 DataSet 对象(如果返回多个结果集)或一个 DataTable(如果返回一个或不返回结果集)。
就我而言,我将获得多个结果集,我将其称为用户数据,因为这是我在调用type()
查询结果时得到的。
我查看了 Lua文档,它似乎很有用,但对 CI 缺乏任何熟悉,不知道我在看什么。元表告诉我我可以访问__index
、__newindex
、__tostring
和__gc
元方法。调用tostring
给我一个七位数的整数,(我认为)与我的数据完全无关。有可能我什至根本没有得到我想要的数据,但我想不出办法来检查它。在线资源要么说这不能完成,要么提供 C 语言的解决方案,这些解决方案可能很聪明、干净、很棒,但我不明白。
所以我正在寻找一些更明确的指导,说明我是否可以/应该这样做,是否有办法在没有 C 的情况下做到这一点(或者只是盲目地复制别人的代码),或者 - 如果我需要为此使用 C -- 如果我们谈论的是 90 分钟或 7 小时的 Lynda C 入门课程,以达到我需要的目标?
(如果我在这个问题上无意中违反了任何社区规范,我深表歉意……这是我第一次发帖)