foreach. Последовательный перебор всех строк таблицы[3.4.3]
^таблица.foreach[позиция;значение]{код}
^таблица.foreach[позиция;значение]{код}[разделитель]
^таблица.foreach[позиция;значение]{код}{разделитель}
Перебирает все строки таблицы.Метод аналогичен foreach класса hash.
позиция - имя переменной, которая возвращает номер строки (отсчёт начинается с 0)
значение - имя переменной, которая возвращает текущую строку
тело - код, исполняемый для каждой строки
разделитель - код, который вставляется перед каждым непустым не первым телом
Замечание: если разделитель задан в виде кода, то этот код выполняется после следующего не пустого тела цикла. Замечание: для уменьшения расхода памяти и ускорения в переменной значение возаращается не отдельная строка, а вся таблица, у которой установлена текущая строка.
В любой момент можно принудительно выйти из цикла с помошью оператора break, или принудительно закончить текущую итерацию и перейти к следующей с помощью оператора continue.
Пример
$man[^table::create{name value
name Вася age 22 sex m
}]
^man.foreach[pos;row]{
$pos $row.name=$row.value
}[<br />]
Выведет на экран:
0 name=Вася
1 age=22
2 sex=m