parser

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

 

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

Видимость переменной

skiv 15.10.2010 18:20

Имеется код:
^outermethod{^innermethod[]}

@outermethod[code][a]
$a[VARIABLE]
$result[OUTER, $code]

@innermethod[]
$result[INNER, $a]
он выводит "OUTER, INNER,"
а хотелось бы "OUTER, INNER, VARIABLE"

$caller.a, $self.a не помогает

работает, если убрать 'a' из локальных в @outermethod

вопрос 1: почему переменную 'a' не видно внутри @innermethod, хотя он вызывается в контексте @outermethod (обращение к переменной $code происходит именно там)?

вопрос 2: можно ли увидеть переменную 'a' в методе @innermethod, не убирая её из локальных в @outermethod?