Assert Statement

Assert Statement (оператор контролю) дозволяє проконтролювати істинність арифметичного виразу, а для випадку, коли воно хибно, указати текст повідомлення й визначити реакцію компілятора.

Приклад:

ASSERT (WIDTH>0)

REPORT "Width (%) must be a positive integer" WIDTH

SEVERITY ERROR

Правила використання оператора:

§ Оператор починається із ключового слова ASSERT, за яким слідує арифметичний вираз. Якщо значення виразу False (хибно), то контрольована умова вважається невиконаною і процесор повідомлень (Message Processor) відображає укладене в подвійні лапки повідомлення, що слідує за ключовим словом REPORT.

§ Повідомлення може містити символ відсоток (%), який замінюється значенням змінної, що вказується після закриваючих подвійних лапок. Якщо використовується кілька символів відсотка (%), то змінні перераховуються через кому в тому порядку, в якому повинні підставлятися їхні значення.

§ Необов'язкове ключове слово SEVERITY дозволяє задати реакцію компілятора («рівень строгості» повідомлення): ERROR - помилка, WARNING - попередження, INFO - інформація. При відсутності ключового слова SEVERITY повідомлення, за замовчуванням, має «Рівень строгості» - ERROR.

§ Якщо ключове слово REPORT і відповідне повідомлення не були зазначені в операторі, то при невиконаних умовах контролю процесор повідомлень (Message Processor) відображає наступний рядок:

<”рівень строгості" >:Line<номер рядка>, File<ім'я файлу>Assertion failed

§ Оператор контролю закінчується символом крапка з комою (;).

§ Припустимо застосування оператора в розділі опису логіки (Logic Section).

§ У файлі з текстовим описом даний оператор може використовуватися необмежене число раз.