Определение 16.59. Команда browse-classes
(browse-classes [<имя-класса>])
В случае если необязательный аргумент <имя-класса> не задан, CLIPS отобразит дерево наследования классов, начиная с предопределенного класса object. Если указать имя конкретного класса, CLIPS выведет дерево наследования заданного класса. Некоторые классы могут появляться в дереве наследования несколько раз при использовании множественного наследования. Символом * отмечаются классы, являющиеся прямыми наследниками более чем одного класса.
Пример 16.6. Использование команды browse-classes
(defclass a (is-a USER))
(defclass b (is-a USER))
(defclass с (is-a a b))
(defclass d (is-a USER))
(defclass e (is-a с d))
(defclass f (is-a e))
(browse-classes USER)
Результат выполнения приведенных выше команд представлен на рис. 16.5.
Рис. 16.5.Использование команды browse-classes
С помощью команды ppdefmessage-handler пользователь может вывести определение конструктора defmessage-handler в диалоговое окно системы.
Определение 16.60. Команда ppdefmessage-handler
(ppdefmessage-handler <имя-класса> <имя-обработчика> [<тип-обработчика>])
<тип-обработчика> ::= around | before │ primary │ after
Параметры <имя-класса> и <имя-обработчика> используются для указания конкретного обработчика, определение которого необходимо вывести. Необязательный параметр <тип-обработчика> определяет тип выводимого обработчика сообщения. По умолчанию этот параметр принимает значение primary.
Команда list-defmessage-handiers предназначена для отображения в диалоговом окне списка имен обработчиков сообщений. Без указания необязательного параметра <имя-класса> команда выведет на экран список обработчиков сообщений всех классов, присутствующих в системе. В случае если задан конкретный класс, будут выведены только его обработчики сообщений. Если при этом будет указан необязательный параметр inherit, выведутся также все унаследованные обработчики сообщений указанного класса.
Дата добавления: 2021-12-14; просмотров: 231;