Метатаблица - это таблица вида {событие=метод-обработчик}, которая определяет возможные действия над любым значением Метатаблица позволяет перекрывать операции (ключи): "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-2024 Igor Salnikov aka SunDoctor