我采取一个Lua迭代器,我不知道什么迭代器厂(创建它是用来遍历可重复的关闭功能,请list_iter在http://www.lua.org/pil/7.1.html)应返回什么都没有迭代的情况.
例如,假设我将实现一个列表类型,而我的列表对象根本就没有任何条目.因此,我认为
从未访问过的主体...,for i in myiterator do ... end脚本执行继续,好像什么也没发生.
目前我回来了nil,Lua(jit)抱怨attempt to call a nil value.如果我没有返回返回值,也会发生同样的情况.
您可以返回一个nil像这样返回的闭包:
function nil_iter()
return function() return nil end
end
Run Code Online (Sandbox Code Playgroud)