繁体   English   中英

Lua - 没有loadtring的序列化函数?

[英]Lua - serialize functions without loadstring?

在lua中,是否可以序列化函数(没有upvalues)并存储它们而不使用LOADSTRING

你可以在没有loadstring情况下序列化和存储它们 - 使用string.dump 如果你想重新实现它们,你只需要loadstring

如果你以后需要它来重用实际的函数,(而不是为了一些其他简单的目的,比如比较),你仍然需要访问至少字符串版本的loadstring ,因为这是唯一允许你评估Lua源代码的工具。飞。

如果你拥有它,你可以尝试:1)如果你有访问权限,修改Lua引擎本身以保存函数定义的源代码。 2)将Lua字节码写入Lua中的Lua源转换器。 使用Lua的简单VM,它并不像听起来那么艰巨。

如果您根本无法访问loadstring ,则可以尝试在Lua中编写Lua VM。 这比简单的转换器更难,但仍然可行。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM