Язык процедур 2-REXX для OS-2


CONDITION


Функция CONDITION в качестве результата возвращает информацию, связанную с условием, которое отслеживается в настоящий момент. Вы можете получить следующую информацию:

  • Имя условия, которое отслеживается в настоящий момент
  • Любую описательную строку, связанную с этим условием
  • Инструкцию, выполненную как результат отслеживания условия (CALL или SIGNAL)
  • Состояние отслеживаемого условия.

В функции CONDITION могут быть указаны следующие режимы (значащими являются только заглавные буквы режимов, остальные игнорируются):

Condition name Возвращает имя условия, которое отслеживается в настоящий момент.
Description    Возвращает любую описательную строку, связанную с условием, которое отслеживается в настоящий момент. Если описательные строки отсутствуют, то в качестве результата возвращается пустая строка.
Instruction    Возвращает ключевое слово инструкции, выполнявшейся в момент обнаружения условия, которое отслеживается в настоящий момент. Ключевыми словами могут быть CALL или SIGNAL. Если Вы не укажете режим, то будет принят режим по умолчанию.
Status    Возвращает состояние условия, которое отслеживается в настоящий момент. Оно может меняться в процессе выполнения и принимать следующие значения:

        ON - отслеживание условия включено
        OFF - отслеживание условия выключено
        DELAY - обработка любого последующего условия требуемого типа задерживается.

Если нет условий, которые требуется отслеживать (т.е. не существует условия, которое отслеживается в настоящий момент), то функция CONDITION в качестве результата возвращает пустую строку для всех четырех режимов.



Ниже приведено насколько примеров: CONDITION() -> 'CALL' /* возможно */ CONDITION('C') -> 'FAILURE' CONDITION('I') -> 'CALL' CONDITION('D') -> 'FailureTest' CONDITION('S') -> 'OFF' /* возможно */

Прим.   Информация об условии, выдаваемая функцией CONDITION, в случае обращения процедуры к подпрограммам сохраняется и восстанавливается (включая информацию, получаемую по CALL ON). Поэтому, когда подпрограмма, вызванная по CALL ON, завершается, то условием, отслеживаемым в настоящий момент, становится то, которое имело место перед выполнением инструкции CALL. Функция CONDITION возвращает значения перед тем, как отслеживаемое условие было обнаружено.



Содержание раздела