Тип встроенного языка, порождаемый элементом проекта вида «КонтрактТипа»

После того, как вы добавили в проект контракт типа и дали ему имя, создаст один тип встроенного языка. Имя этого типа совпадает с именем вашего контракта.

Например, если в проекте есть контракт КонтрактПодписки, то будет создан тип КонтрактПодписки. В общем случае имя этого типа выглядит следующим образом: имя-контракта-типа.

Тип «имя-контракта-типа»

Это абстрактный тип. Он доступен в том же окружении, которое указано в свойстве контракта Окружение: КлиентИСервер, Клиент, Сервер.

Этот тип содержит:
  • Свойства, соответствующие свойствам контракта в файле имя-контракта-типа.yaml;
  • Методы, объявленные в модуле контракта имя-контракта-типа.xbsl.

Модуль контракта типа

В проекте модуль, расширяющий тип имя-контракта-типа, называется модулем контракта типа. Он доступен в том же окружении, которое указано в свойстве контракта Окружение: КлиентИСервер, Клиент, Сервер.

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

Также в модуле контракта типа могут быть объявлены:

Для методов и типов, объявляемых в модуле контракта типа, окружение не указывается, оно всегда равно окружению контракта (свойство Окружение).

Например, ниже показан модуль контракта типа, в котором объявлены два метода: Записать() и Пригласить().

абстрактный метод Записать()

абстрактный метод Пригласить()