Студопедия

Главная страница Случайная страница

КАТЕГОРИИ:

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Импорт и экспорт конструкций






За исключением специально экспортированных и импортированных, конструкции, определенные в одном модуле, не могут использоваться в другом модуле. Конструкция называется видимой или находящейся в пределах области видимости модуля, если она может использоваться в модуле. Например, если пользователь хочет указать в модуле в конструктор deftemplate с именем foo, определенный в модуле A, то модуль A должен экспортировать deftemplate foo, а модуль В должен импортировать deftemplate foo их модуля А. Подобная ситуация приведена на рис. 12.4.

Рис. 12.4. Импорт/экспорт шаблонов

CLIPS не допускает существования двух конструкторов с одинаковыми именами, видимых в одном модуле.

Спецификация экспорта в определении модуля служит для определения, какие именно конструкции данного модуля могут импортироваться другими модулями. Экспортироваться способны только следующие конструкции: deftemplates, defclasses, defglobals, deffunctions, и defgenerics. Модуль может экспортировать любую видимую конструкцию данных типов. При этом не обязательно, чтобы эта конструкция была непосредственно определена в данном модуле.

В CLIPS существует три типа спецификации экспорта.

Ø Во-первых, модуль может экспортировать все видимые в нем конструкции. Это осуществляется с помощью ключевого слова export и следую­щего за ним ключевого слова? ALL.

Ø Во-вторых, модуль может экспортировать все видимые в нем конструкции заданного типа. Для этого используется ключевое слово export, тип конструкции и ключевое слово? ALL.

Ø В-третьих, модуль может экспортировать некоторые отдельные конструкции заданного типа. Это осуществляется с помощью ключевого слова export, типа конструкции, списка из одного или более имен видимых конструкций заданного типа, которые необходимо экспортировать.

В приведенном ниже примере модуль A экспортирует все видимые в нем конструкции, модуль B — все конструкции deftemplate, а модуль C — три отдельных конструкции defglobal.


Поделиться с друзьями:

mylektsii.su - Мои Лекции - 2015-2026 год. (0.17 сек.)Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав Пожаловаться на материал