我想在执行之前读取Lua文件中的表。有没有办法用loadfile
执行此操作。它只返回一个函数,我似乎无法读取内部的内容(声明但未执行的内容)。
我尝试的另一个选项是检查环境是否发生了变化,但又一次我无法读取loadfile()
返回的函数内部。
有没有办法在不将文件作为文本打开并搜索表的情况下执行此操作?
以下是我尝试检索的表的示例:
--file to be loaded
local library = require("library") --random requires...
table = { author = "myself", dependencies = "library > 1.0"} --table to get before execution
答案 0 :(得分:1)
你想要的是不可能的。 Lua中没有声明,只有可执行语句。 您需要执行一个脚本来查看它的作用。
但是,您可以将文件作为文本读取,并尝试使用模式匹配来提取所需的信息。这不是万无一失的,但如果文件以相同的方式编写,它在大多数情况下都可能有效。