Курс языка программирования Raku / Продвинутый уровень / Отладка / Отладка с помощью dd / Exercises / Вывод структуры
данных
Решение: Вывод структуры данных
Вот возможное решение задачи.
Код
my @data = 'Raku', [1, 2, 3], (key => 'value');
dd @data;
say "Structure: { @data.raku }";🦋 Исходный код можно найти в файле dump-the-structure.raku.
Вывод
["Raku", [1, 2, 3], :key("value")]
Structure: ["Raku", [1, 2, 3], :key("value")]Комментарии
dd @dataвыводит представление содержимого массива в виде, похожем на код. Вывод идёт в стандартный поток ошибок.Метод
.rakuвозвращает то же представление в виде строки, которая затем встраивается в обычное сообщение с помощью интерполяции кода и выводится черезsayв стандартный поток вывода.Две строки выглядят одинаково, но проходят через разные потоки вывода: первая приходит от
dd(стандартный поток ошибок), вторая отsay(стандартный поток вывода). Сравните:
$ raku t.raku > /dev/null
["Raku", [1, 2, 3], :key("value")]
$ raku t.raku 2&> /dev/null
Structure: ["Raku", [1, 2, 3], :key("value")]Навигация по курсу
← Вывод структуры данных | Вывод типизированной переменной →