parser

Написать ответ на текущее сообщение

 

 
   команды управления поиском

Ответ

moko 27.11.2022 19:22

$caller.$sVar идет по всем родительским классам (если вызов из объекта) и ищет эту переменную.
Нет, никакого перебора родительских классов нет. У каждого класса хранится полный набор свойств (включая все унаследованные). Кажется это в 3.4.0 было оптимизировано.
Можно ли сделать возможность передавать $caller в качестве аргумента для reflection:field или есть другие варианты решения моей проблемы?
Например использовать locals, если не хочется чтобы $caller.$name проверял self.
* При поиске наткнулся на странное поведение, думаю это баг:
^reflection:is[$sVar;void;$caller] - будет Exception
Если ошибка "method_frame may not be overwritten with bool", то так и должно быть.