3. Операторы Парсера
Формат вызова
^while[логическое_выражение;повторяющийся_код]
Аргументы
логическое_выражение условие выполнения цикла.
повторяющийся_код тело цикла.
Описание
Оператор тиражирует тело цикла до тех пор, пока значение логического выражения остается истинным (см. п. 1.7).
Замечание. После 10 000 повторений цикл в любом случае будет прерван. При этом будет возвращено значение [endless loop detected].
Примеры
Рассмотрим такой фрагмент кода:
|
^var[i;4] ^while[i>=0; До взрыва осталось ^var[i] сек.<BR> ^var[i;-;1] ]
|
|
|
|
Его обработка даст следующий HTML-код:
До взрыва осталось 4 сек.<BR>3 сек.<BR>2 сек.<BR>1 сек.<BR>0 сек.<BR>
Формат вызова
^for[имя_переменной_цикла;начало;конец;повторяющийся_код]
^for[имя_переменной_цикла;начало;конец; повторяющийся_код;разделитель ]
Аргументы
имя_переменной_цикла имя переменной, которая является счетчиком цикла.
начало математическое выражение, начальное значение счетчика цикла.
конец математическое выражение, конечное значение счетчика цикла.
повторяющийся_код тело цикла.
разделитель фрагмент разделительного кода (указывать необязательно).
Описание
Присваивает счетчику цикла начальное значение и тиражирует тело цикла до тех пор, пока значение счетчика не превысит конечное значение. На каждом шаге счетчик цикла увеличивается на 1. Начальное и конечное значение математические выражения (см. п. 1.7). Разделительный код вставляется между непустыми шагами цикла.
Примеры
Рассмотрим такой фрагмент кода:
|
Шаги: ^for[i;1;2*2; номер ^var[i];, ].
|
|
|
|
Его обработка даст следующий HTML-код:
Шаги: номер 1, номер 2, номер 3, номер 4.
|