Новости | FAQ | Авторы | Документация | В действии | Библиотека |
Инструменты | Полезные ссылки | Хостинги | Скачать | Примеры | Форум |
andylars 27.09.2015 18:34 / 27.09.2015 19:08
@main[] $hsh[ $.a[A] $.b[ $.1[B1] $.2[B2] ] $.c[C] ] ^Hash_Serial[$hsh] # хочется, чтобы возвращало a=A&b.1=B1&b.2=B2&c=C @Hash_Serial[_data;_key;_result][locals] ^sys:Debug[$_key;_key] ^if($_data is hash){ ^_data.foreach[k;v]{ $_key[${_key}.${k}] $_result[^Hash_Serial[$v;$_key;$_result]] } }{ $_key[^_key.trim[left;.]] $_result[$_result&$_key=$_data] $_result[^_result.trim[left;&]] $result[$_result] ^sys:Debug[$_result;_result] } # рабочего результата не добился, и не оптимизировал присвоения для читабельности # есть поток отладчика в местах ^sys:Debug[var;comment] : # который показывает, промежуточные "успехи"... где видно, что # $_key ключи продолжают собираться, дальше чем надо # $_result - накапливается и теряется на последнем ключе COMMENT: VAR_VALUE CLASS _key: <void> _key: .a <string> _result: a=A <string> _key: .a.b <string> _key: .a.b.1 <string> _result: a=A&a.b.1=B1 <string> _key: .a.b.1.2 <string> _result: a=A&a.b.1=B1&a.b.1.2=B2 <string> _key: .a.b.c <string> _result: a.b.c=C <string>