Новости | FAQ | Авторы | Документация | В действии | Библиотека |
Инструменты | Полезные ссылки | Хостинги | Скачать | Примеры | Форум |
Sumo 01.01.2014 19:40 / 01.01.2014 19:45
@main[] $h[^for[i](1;100){$.[$i][^math:random(1000)]}] $h[^hashUtils:select[$h;k;v]($k % 2 && $v < 450)] ^h.foreach[k;v]{$k => $v}[^#0A] @CLASS hashUtils @select[aHash;aKeyVar;aValueVar;aConditions][locals] $result[^hash::create[]] ^aHash.foreach[k;v]{ $caller.[$aKeyVar][$k] $caller.[$aValueVar][$v] ^if($aConditions){ $result.[$k][$v] } }Это классический пример итератора на Парсере. Аналогичная схема применима в подавляющем большинстве подобных задач.