Метатаблица - это таблица вида {событие=метод-обработчик},
которая определяет возможные действия над любым значением
Метатаблица позволяет перекрывать операции (ключи):
"add", "div", "mul", "sub", "pow", "unm" (унарный минус),
"concat" (конкатенация ..), "len" (размер таблицы #table),
"eq" (==), "lt", "le", "gt", "ge", "index" (доступ по индексу),
"newindex", "call"
* getmetatable(), setmetatable()
получение значения по ключу из метатаблицы:
* metatable(obj)[event] -- или
* rawget(getmetatable(obj) or {}, event)
Кроме метатаблиц, есть еще таблицы-окружения,
доступ к которым возможен через функции setfenv(), getfenv()
Lua Справочник v0.05 © 2007-2026 Igor Salnikov aka SunDoctor