Tôi đang triển khai trình lặp lua và tôi tự hỏi nhà máy lặp (chức năng tạo ra đóng được sử dụng để lặp qua iteratable, xem list_iter
trên http://www.lua.org/pil/7.1.html) nên quay lại trong trường hợp không có gì để lặp lại.Nhà máy lua iterator sẽ quay trở lại trong trường hợp không có gì để lặp lại
Ví dụ: cho phép nói rằng tôi sẽ thực hiện một loại danh sách và đối tượng danh sách của tôi chỉ sẽ không có bất kỳ mục nào cả. Vì vậy, tôi giả sử rằng nội dung ...
của for i in myiterator do ... end
không bao giờ được truy cập và việc thực thi tập lệnh tiếp tục như thể không có gì xảy ra.
Hiện tại tôi trả lại nil
và Lua (jit) than phiền về số attempt to call a nil value
. Điều tương tự cũng xảy ra nếu tôi không trả lại giá trị trả về.