在执行 lua 文件之前读取数据

Read data before executing lua file

我想在执行 Lua 文件之前读取 table 文件。有没有办法用 loadfile 做到这一点。它 returns 只是一个函数,我似乎无法读取里面的内容(声明但未执行的内容)。

我尝试的另一个选项是检查环境是否改变,但我还是无法读取 loadfile() 返回的函数内部。

有没有办法在不以文本形式打开文件并搜索 table 的情况下执行此操作?

这是我尝试检索的 table 的示例:

--file to be loaded  
local library = require("library")  --random requires...  
table = { author = "myself", dependencies = "library > 1.0"} --table to get before execution

你想要的是不可能的。 Lua中没有声明,只有可执行语句。 您需要执行脚本才能看到它的作用。

但是,您可以将文件作为文本读取,并尝试使用模式匹配提取您需要的信息。这不是万无一失的,但如果文件以相同的方式编写,它在大多数情况下可能会起作用。