parser

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

 

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

Ошибка со свитчем говорит не о «перекрытом switch»...

Sumo 25.05.2020 08:39 / 25.05.2020 08:40

... а о том, что в хеше hparams нет поля type. Проверить элементарно:
#!./parser3
@auto[]
  $MAIN:STRICT-VARS(true)

@main[]
  ^func[]
  ^func[$.type[test]]

@func[params]
    ^switch[^if(^params.contains[type]){$params.type}]{
        ^case[test]{test}
        ^case[DEFAULT]{DEFAULT}
    }
p.s. Есть мнение, что не стоит использовать специфические возможности Парсера — options dynamyc, strict-vars и пр. — если четко не знаете для чего они нужны именно в вашем коде и не уверены, что понимаете как они работают. :)