А что это вообще такое?

       

Класс junction



Класс предназначен для хранения кода и контекста его выполнения.
При обращении к переменным, хранящим в себе junction, Parser выполняет код в сохраненном контексте.

Значение типа junction появляется в переменной…

…при присваивании ей кода:
$junction{Код,присваиваемый переменной: ^do_something[]}

…при передачи кода параметром:
@somewhere[]
^method{
Код, передаваемый параметром: ^do_something_else[]}

@method[parameter]
#здесь в $parameter придет junction

…при обращении к имени метода класса:


$action[$user:edit]
#$action[
$user:delete]
^action[параметр]

Здесь $action хранит ссылку на метод и его класс, вызов action теперь аналогичен вызову ^edit[параметр].

…при обращении к имени метода объекта:
$action[$person.show_info]
^action[full]

Здесь $action хранит ссылку на метод и его объект, вызов action теперь аналогичен вызову ^person.show_info[параметры].









Содержание раздела