Новости | FAQ | Авторы | Документация | В действии | Библиотека |
Инструменты | Полезные ссылки | Хостинги | Скачать | Примеры | Форум |
G_Z 19.03.2016 21:14 / 19.03.2016 22:16
При наличии у объекта геттера по умолчанию проверка на is junction/method несуществующего свойства возвращает истину.@main[] $test[^test::create[]] ^if(^reflection:is[^math:uid64[];junction;$test])[y;n] ^if(^reflection:is[^math:uid64[];method;$test])[y;n] @CLASS test @create[] @GET_DEFAULT[] $result[]Таким образом, и
$def(^reflection:is[$method;junction;$object] || ^reflection:method[$object;$method] is junction)не работает в качестве способа проверки наличия метода.
$def(^reflection:is[$method;junction;$object] && $object.$method is junction || ^reflection:method[$object;$method] is junction)