parser

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

 

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

Как можно более красиво/лаконично сделать возврат из метода $result + status(bool) ?

andylars 11.07.2015 15:18 / 11.07.2015 18:33

В связи с обозначившейся проблемой тредом ниже про падение операций над строками (решил перестраховаться и написать универсальную обёртку)

но пока не придумал, как более красиво возвращать одновременно
булевый статус(код) исполнения и собственно сам результат, если статус true
@main[][_ret]
$str[Some Danger ,,,^..^,,, String with unescaped data]

$_ret[^safe[bypass]{^str.lower[]}]

^if(_ret.status){
   $_ret.result
}

@safe[_mode;_code][locals]
^try{
   $_result[
      $.result[$_code]
      $.status(true)
   ]
}{
   $_result[
     $.result[]
     $.status(false)
   ]
  ^if($_mode eq 'syshalt'){
#    прерываем выполнение    
  }{
     exeption.handled(true)
#    не прерываем выполнение
  }
}
$result[$_result]
UPD: Сомнительность постановки вопроса осознана... но вопрос оставлю, вдруг что-то новое узнаю из конструкций Парсера