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


TRACE - часть 2


/p>

Префиксный режим

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

Префикс ? изменяет трассировку и выполнение. Он используется для управления режимом диалоговой отладки. В процессе нормального выполнения инструкция TRACE, введенная с префиксом ?, приводит к включению режима диалоговой отладки.

Если режим диалоговой отладки активен, то Вы можете выключить его, используя инструкцию TRACE с префиксом ?. Таким образом, повторное использование префикса ? приводит к поочередному включению и выключению режима диалоговой отладки. Режим диалоговой отладки можно выключить в любое время, выполнив инструкцию TRACE O или TRACE без режимов.

Числовые режимы

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

Если диалоговая отладка неактивна, то числовые режимы игнорируются.

Формат вывода инструкции TRACE

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

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

  "*-*"   

Определяет одно исходное предложение, т.е. данные, фактически указанные в программе.

  "+++"   

Определяет сообщение трассировки. Это может быть ненулевой код возврата из команды, приглашающее сообщение, выдаваемое в режиме диалоговой отладки, индикация синтаксической ошибки в режиме диалоговой отладки или протрассированные предложения после синтаксической ошибки в программе.

  ">>>"   

Определяет результат выражения (для TRACE R), значение, присвоенное переменной в процессе разбора, или значение, возвращенное из подпрограммы после ее выполнения.

  ">.>"   

Определяет значение, присвоенное в процессе разбора метке-заполнителю.

<


- Начало -  - Назад -  - Вперед -