Класс 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[параметры].