14. МОДУЛИ

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

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

В системе MSDOS каждый модуль MMMM занимает два файла. А именно, интерфейс модуля хранится в файле MMMM.RFI, а реализация - в файле MMMM.RF.

$ ИнтерфейсМодуля =

$ { Объявление }.

$ Объявление =

$ ОбъявлениеКонстант | ОбъявлениеЯщиков |

$ ОбъявлениеВекторов | ОбъявлениеСтрок |

$ ОбъявлениеТаблиц | ОбъявлениеКаналов |

$ ОбъявлениеФункции.

$ РеализацияМодуля =

$ { Импорт } { ДирективаРеализации }.

$ ДирективаРеализации =

$ Объявление |

$ ДирективаОтладки |

$ ОпределениеФункции.

$ Импорт = "$use" { ИмяМодуля } ";".

$ ИмяМодуля = Слово.

Если внутри реализации модуля XXXX требуется получить доступ к именам, объявленным в интерфейсе модуля YYYY, следует поместить внутри реализации модуля XXXX директиву $use YYYY следующим образом:

-----------------------------------------------------------

/* Файл XXXX.RFI */

/* Интерфейс модуля XXXX. */

......

-----------------------------------------------------------

/* Файл XXXX.RF */

$use ... YYYY ... ;

/* С этого места доступны имена, объявленные в YYYY.RFI */

......

-----------------------------------------------------------

/* Файл YYYY.RFI */

/* Интерфейс модуля YYYY. */

......

-----------------------------------------------------------

/* Файл YYYY.RF */

/* Реализация модуля YYYY. */

......

-----------------------------------------------------------