Курс Raku / Розширені / Порядок виконання / Блокові фейзери / Вправи

Прибирання при виході

Задача

Справжня сила LEAVE полягає в тому, що він запускається незалежно від того, як було залишено блок — включаючи дострокове return.

Напишіть підпрограму work, тіло якої починається з фазера LEAVE, що друкує Cleanup. Потім, все ще всередині підпрограми, надрукуйте Working, негайно виконайте return і поставте рядок say 'never reached' після return. Викличте підпрограму. Дострокове return пропускає останній рядок, але Cleanup все одно друкується.

Приклад

Програма виводить:

Working
Cleanup

Розв’язок

Дивіться розв’язок

Навігація курсом

Блокові фейзери   |   Розв’язання: Прибирання при виході