Проверьте, проиндексирована ли таблица (как с нулевым, так и с ненулевым ключом) - PullRequest
0 голосов
/ 01 июня 2018

Можно ли проверить, когда таблица проиндексирована, даже если ключ существует?

Я изучил метаметод __index, но он запускается только тогда, когда таблица индексируется со значением nil,

1 Ответ

0 голосов
/ 02 июня 2018

Нет;Как упомянул @Egor, «Единственный способ перехватить все обращения к таблице - это оставить ее пустой.» Решение состоит в том, чтобы не предоставлять доступ к таблице, в которой хранятся значения.

Это хорошо работает с фабричным методом (track, там же) для создания мета-методы таблицы, прокси-таблицы и прокси-таблицы.

Вы также можете сложить его в «новый» метод в любой из различных систем классов / прототипов, которые люди разработали в Lua.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...