什么是lua __pairs的实际实现?
发布时间:2020-12-15 00:17:10 所属栏目:大数据 来源:网络整理
导读:有没有人知道lua 5.2的实际实现. metamethod __pairs?换句话说,如何在metatable中实现__pairs作为metamethod,以便它与pairs()完全相同? 我需要覆盖__pairs并想跳过我在表中添加的一些虚拟变量. 解决方法 以下将使用metatable元明确提供对默认行为: functi
有没有人知道lua 5.2的实际实现. metamethod __pairs?换句话说,如何在metatable中实现__pairs作为metamethod,以便它与pairs()完全相同?
我需要覆盖__pairs并想跳过我在表中添加的一些虚拟变量. 解决方法
以下将使用metatable元明确提供对默认行为:
function meta.__pairs(t) return next,t,nil end 现在,为了跳过特定元素,我们必须替换返回的下一个: function meta.__pairs(t) return function(t,k) local v repeat k,v = next(t,k) until k == nil or theSEOk(t,k,v) return k,v end,nil end 供参考:Lua 5.2 manual,pairs (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |