Курс языка программирования Raku / Регулярные выражения и грамматики / Грамматики / Дерево разбора, make и made / make и made

Тест — make и made

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

grammar G {
    token TOP    { <number> { make $<number>.Int ** 2 } }
    token number { \d+ }
}

say G.parse('5').made;
0「5」
05
125
055

Встроенный блок сохраняет на совпадении $<number>.Int ** 2. Токен захватил 5; превращение в целое 5 и возведение в квадрат дают 25, что и возвращает made.

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

make и made   |   Извлеките число