Курс языка программирования Raku / Продвинутый уровень / Порядок выполнения / given и when / Сопоставление диапазонов, типов и условий

Тест — when

Что напечатает следующая программа?

given 5 {
    when $_ > 0 { say 'positive' }
    when 5      { say 'five' }
}
1positive
0five
0both lines
0nothing

Блок when автоматически выходит из given после совпадения — проваливания нет. 5 удовлетворяет первому условию $_ > 0, поэтому печатается positive, а второй when 5 никогда не выполняется, хотя он тоже совпал бы.

Навигация по курсу

Сопоставление диапазонов, типов и условий   |   Жизненный этап по возрасту