method. Получение метода объекта   [3.4.2]

^reflection:method[объект;имя метода]
^reflection:method[класс;имя метода]

Возвращает метод объекта или класса. Работает с пользовательскими и некоторыми системными классами.
Может быть использован в случаях, когда у объекта приоритет доступа к полям выше, чем к методам.

Пример
$h[
   $.a[1]
   $.foreach[problem?]
]
метод foreach не может использоваться напрямую, т.к. поле с ключём foreach имеет больший приоритет
#^h.foreach[k;v]{$k='$v'}[, ]

используем ^reflection:method[] чтобы добраться до метода foreach
$m[^reflection:method[$h;foreach]]
^m[k;v]{$k='$v'}[, ]


Выведет:
a='1', foreach='problem?'


In order to add comments you must register.
Copyright © 1997–2016 Art. Lebedev Studio | http://www.artlebedev.ru Дата обновления: 18.06.2012