parser

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

 

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

Ответ

G_Z 11.12.2015 16:13

^reflection:is{$h.code}[$type]
А что меняется? Чтобы было понятнее: ^reflection:is{===$h.code===}[$type]
Тут все равно написано $h.code, код будет выполнен в момент обращения. Лишние {} просто откладывают момент обращения к нему от момента передачи параметра до момента обращения к параметру внутри метода.
Мне неясно почему, зная имя переменной и контекст, можно обратиться к ней не вызвав выполнения, а имя ссылку на переменную или её саму — нельзя.
^reflection:is{$h}[$type]
Этого я не понял. Хеш можно и в [] скобках передать, ничего не изменится.
Я к тому, что можно передавать всё в фигурных скобках и до reflection:is код, оказавшись в переменной, не выполнится при передаче.