Обработка воронки в YAML - PullRequest
       7

Обработка воронки в YAML

2 голосов
/ 08 сентября 2011

Я использую YAML :: Tiny для записи и чтения из файла в Perl.К сожалению, у меня проблема с данными, которые заканчиваются двоеточием:

my $test_message = {"hoody" => 'hoo:'};
my $dump = YAML::Tiny::Dump($test_message);
my $reloaded = YAML::Tiny::Load($dump);
print Data::Dumper::Dumper($reloaded);

Это приводит к Failed to load YAML document from string at [the line with YAML::Tiny::Load].

Во-первых, это похоже на ошибку.Это?Или я слишком многого ожидаю от YAML :: Tiny?(Мы используем YAML :: Tiny 1.48; новейшая версия - 1.50, что, как заверяет ИТ, будет установлено в ближайшее время.)

Во-вторых, есть ли способ обойти это?Я пытаюсь использовать escape-символы, но я не должен делать это правильно.Я попытался заменить двоеточие на \x3A, но это не дает желаемого поведения.(Печать $dump возвращает строку без изменений [hoo\x3A], в то время как строка Data::Dumper::Dumper делает ее 'hoo\\x3A'.)

Заранее благодарим за любую помощь по этому вопросу.

1 Ответ

3 голосов
/ 08 сентября 2011

Эта ошибка была исправлена ​​в 1.5 Вы можете рассмотреть возможность использования YAML вместо YAML :: Tiny (версия Tiny должна иметь такой же интерфейс, что и ее родительский).

Я думаю, что можно обойтипосле того, как вы получите YAML :: Tiny 1.5 с исправлениями, ситуация будет только ухудшаться.Я бы рекомендовал вам ввести use YAML::Tiny 1.50 в свой код или переключиться на YAML.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...