parser

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

 

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

варианты

Александр Петросян (PAF) 09.09.2004 10:54

1.
вы мыслите, как программист :)
встаньте на место посетителя: ему до лампочки, в каком методе на сервере что развалилось.
ему важно: «что пошло не так?» или, конкретнее, «что он сделал не так?».

соответственно, обычно вам не нужно выводить названия каких-то там методов.
поэтому-то и не сделан частичный $exception.stack, хотя технически сделать это можно (содержимое аналогично @unhandled_exception[…;stack]).

2.
@main[]
^try{
    ^switch(2){
        ^case(1){^method1[param1]}
        ^case(2){^debugCall[method2;param2]}
        ^case(3){^debugCall[method3;param3]}
    }
}{
    ^if($exception.type eq debug){
        $exception.handled(1)
        $exception.source failed ($exception.comment)
    }
}

@debugCall[name;param][method]
$method[$$name]
^try{
    ^method[$param]
}{
    ^throw[debug;$name;$exception.source: $exception.comment]
}

@method2[p2]
OK
#comment me
^doNothingAndGetMoney[]