Курс языка программирования Raku / Продвинутый уровень / Отладка / Преобразование значений в текст
Метод .raku
Третий метод представления, .raku, возвращает строку с
кодоподобным представлением значения — в идеале строку,
которую можно вставить обратно в программу для воссоздания того же
значения. Он есть у каждого значения в Raku.
say 42.raku; # 42
say 'Raku'.raku; # "Raku"
say (1, 2, 3).raku; # (1, 2, 3)Обратите внимание, что строка 'Raku' возвращается с
кавычками, так что вы можете с первого взгляда отличить число от строки
— именно такие детали важны при отладке.
Этот метод также работает для составных данных, включая вложенные структуры:
my @data = 1, [2, 3], 4;
say @data.raku; # [1, [2, 3], 4]Поскольку .raku возвращает обычную строку, вы можете
использовать его везде, где ожидается строка, например внутри
интерполированного сообщения:
my @data = 10, 20, 30;
say "The data is { @data.raku }";
# The data is [10, 20, 30]Используйте .raku, когда вам нужно кодоподобное
представление в виде строки для комбинирования с вашими собственными
сообщениями. Совсем скоро мы познакомимся с dd —
инструментом Rakudo, который печатает такое же представление за один
шаг.