parser

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

 

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

Ответ

G_Z 28.09.2016 21:58

Добрался до задачи и возник вопрос: "не работает если методы существуют в виде ссылок" - это на самом деле означает, что у объекта есть свойство типа method-junction? Мне кажется, что это далеко не синоним "наличия метода у объекта" - этот method-junction вполне может быть и от другого объекта.
В контексте задачи проверки интерфейса нам всё равно метод это, или junction-метод.
Нам нужно знать — есть такой метод и можно ли его позвать.

Потому конструкция
$def($object.$method is junction || $object.CLASS.$method is junction)
не подходит.
@main[]
$test[^test::create[]]

random: ^if(^has[$test;^math:uid64[]])[y;n]<br/>
foreach: ^if(^has[$test;foreach])[y;n]<br/>

@has[object;method]
#$result(^reflection:is[$method;junction;$test])
$result($object.$method is junction || $object.CLASS.$method is junction)


@CLASS
test

@create[data]
$self.data[^hash::create[$data]]
$self.foreach[$seld.data.foreach]

@GET_DEFAULT[]
$result[]