Lua牛奶厂错误。
2015-3-29 13:33:15
收藏:0
阅读:62
评论:1
我一直在用Lunadry来为我重新格式化代码,但我遇到了错误,具体来说,当我尝试时会出现这种情况:
lua: ./lunadry.lua:322: assertion failed!
stack traceback:
[C]: in function 'assert'
./lunadry.lua:322: in main chunk
[C]: in ?
现在,我已经检查了我拥有的大块代码,并将这个错误的来源追踪到了这个特定的函数...
function e.insertvalues(e,...)g(1,e,'table')local n,t
if y('#',...)==1 then
n,t=#e+1,...else
n,t=...end
if#t>0 then
for n=#e,n,-1 do
e[n+#t]=e[n]end
local i=1-n
for n=n,n+#t-1 do
e[n]=t[n+i]end
end
return e
end
(是的,它应该看起来丑陋)
更具体地说,删除这段代码可以使它再次正常工作:
if y('#',...)==1 then
n,t=#e+1,...else
n,t=...end
正是…else和…end部分导致它出错。
我一直在试图让它重新格式化代码,让它看起来漂亮,但它会导致错误。就我所知,这可能只是作者代码中一系列错误的复制,但我希望不是这样。这是执行魔术的文件的源代码:点我。
有谁能看一下这个,告诉我需要改变什么来解决这个非常烦人的错误?谢谢!
点赞
评论区的留言会收到邮件通知哦~
推荐文章
- 如何将两个不同的lua文件合成一个 东西有点长 大佬请耐心看完 我是小白研究几天了都没搞定
- 如何在roblox studio中1:1导入真实世界的地形?
- 求解,lua_resume的第二次调用继续执行协程问题。
- 【上海普陀区】内向猫网络招募【Skynet游戏框架Lua后端程序员】
- SF爱好求教:如何用lua实现游戏内调用数据库函数实现账号密码注册?
- Lua实现网站后台开发
- LUA错误显式返回,社区常见的规约是怎么样的
- lua5.3下载库失败
- 请问如何实现文本框内容和某个网页搜索框内容连接,并把网页输出来的结果反馈到另外一个文本框上
- lua lanes多线程使用
- 一个kv数据库
- openresty 有没有比较轻量的 docker 镜像
- 想问一下,有大佬用过luacurl吗
- 在Lua执行过程中使用Load函数出现问题
- 为什么 neovim 里没有显示一些特殊字符?
- Lua比较两个表的值(不考虑键的顺序)
- 有个lua简单的项目,外包,有意者加微信 liuheng600456详谈,最好在成都
- 如何在 Visual Studio 2022 中运行 Lua 代码?
- addEventListener 返回 nil Lua
- Lua中获取用户配置主目录的跨平台方法
这是由于将
...视为关键字导致的。例如,lunadry.lua的实例:K "..."应该是
C "..."使用此修补程序:
diff --git a/lunadry.lua b/lunadry.lua index e056140..19d714b 100755 --- a/lunadry.lua +++ b/lunadry.lua @@ -201,7 +201,7 @@ local lua = lpeg.locale { K "true" + V "Number" + V "String" + - K "..." + + C "..." + V "function" + V "tableconstructor" + V "functioncall" + @@ -251,8 +251,8 @@ local lua = lpeg.locale { funcbody = C "(" * V "whitespace" * (V "parlist" * V "whitespace")^-1 * C ")" * INDENT_INCREASE(V "block" * V "whitespace") * INDENT * K "end"; - parlist = V "namelist" * (V "whitespace" * C "," * SPACE * V "whitespace" * K "...")^-1 + - K "..."; + parlist = V "namelist" * (V "whitespace" * C "," * SPACE * V "whitespace" * C "...")^-1 + + C "..."; tableconstructor = FLATTEN(C "{" * (INDENT_INCREASE(V "filler" * V "fieldlist" * V "filler") * INDENT + V "filler") * C "}");我会在今天稍后提交修复。