В lua 4.0 тег-метод "gettable" позволяет перехватить доступ к элементам таблицы.Каждый раз при попытке доступа к элементу таблицы вызывается связанный тег-метод для события «gettable»:
local t = { a=123 }
local tg = newtag()
settagmethod(tg, "gettable",
function(tbl, idx) print(tbl, idx) return rawget(tbl, idx) end )
settag(t, tg)
print(t.a) -- <-- prints table: 0x7f9a8250acc0 a
-- <-- then prints t.a value
Что является эквивалентом в Lua 5.xx?
Как можномой код вызывает метод каждый раз, когда к таблице обращаются в Lua 5.x?