Курс Raku / Розширені / Модулі / Інтроспекція модулів / Вправи / Перелічити символи

Розв’язання: Перелічити символи

Ось один із можливих варіантів розв’язання задачі.

Код

Програма list.raku:

use Circle;

say Circle::.keys.elems;
say Circle::.keys.sort;

🦋 Обидва файли з вихідним кодом можна знайти в каталозі exercises/advanced/module-introspection/list-the-symbols.

Вивід

$ raku -I. list.raku
2
($pi $tau)

Коментарі

  1. Circle:: є пакунком модуля, а .keys перелічує імена, які він містить, кожне разом із сигілом.

  2. .elems рахує ці імена — модуль визначає дві змінні our, тож кількість дорівнює 2.

  3. .keys не гарантує жодного конкретного порядку, тож ми застосовуємо .sort, щоб отримати стабільний алфавітний результат ($pi $tau). Без сортування два імені могли б виходити то в одному, то в іншому порядку між запусками.

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

Перелічити символи   |   Знайти символ