Skip to content

ОпределениеЖелудя

ПриСозданииОбъекта

bsl
// Описывает желудь (компонент) и способ его создания.
//
// Параметры:
//   РазворачивательАннотаций - РазворачивательАннотаций - Разворачиватель аннотаций для свойств и методов типа.
//   ТипЖелудя - Тип - Тип, экземпляры которого создаёт желудь.
//   Имя - Строка - Имя желудя. Не может быть пустым.
//   Характер - Строка - Характер желудя, одно из значений модуля ХарактерыЖелудей.
//   ПрилепляемыеЧастицы - Массив из ПрилепляемаяЧастица - Зависимости, передаваемые желудю при создании.
//   Завязь - Завязь - Способ создания желудя (метод-фабрика или конструктор).
//   Прозвища - Массив из Строка - Дополнительные имена желудя. Должен содержать хотя бы одно значение.
//   Порядок - Число - Порядок инициализации желудя.
//   Верховный - Булево - Признак верховного (приоритетного) желудя.
//   Спецификация - Строка - Фаза жизненного цикла, одно из значений модуля СостоянияПриложения.
//   КорневаяАннотация - Неопределено, Произвольный - Объект корневой аннотации желудя либо Неопределено.
//
Процедура ПриСозданииОбъекта(РазворачивательАннотаций, ТипЖелудя, Имя, Характер, ПрилепляемыеЧастицы, Завязь, Прозвища, Порядок, Верховный, Спецификация, КорневаяАннотация)

Имя

bsl
// Имя желудя.
//
//  Возвращаемое значение:
//   Строка
//
Функция Имя() Экспорт

ТипЖелудя

bsl
// Тип, экземпляры которого создаёт желудь.
//
//  Возвращаемое значение:
//   Тип
//
Функция ТипЖелудя() Экспорт

Характер

bsl
// Характер желудя, определяющий способ его создания и хранения (одиночка или компанейский).
//
//  Возвращаемое значение:
//   Строка - один из значений модуля ХарактерыЖелудей.
//
Функция Характер() Экспорт

ПрилепляемыеЧастицы

bsl
// Список прилепляемых частиц (зависимостей), которые нужно передать желудю при создании.
//
//  Возвращаемое значение:
//   ФиксированныйМассив из ПрилепляемаяЧастица
//
Функция ПрилепляемыеЧастицы() Экспорт

Завязь

bsl
// Завязь, описывающая способ создания желудя (метод-фабрика или конструктор).
//
//  Возвращаемое значение:
//   Завязь
//
Функция Завязь() Экспорт

Прозвища

bsl
// Прозвища (дополнительные имена), по которым может быть найден желудь.
//
//  Возвращаемое значение:
//   Массив из Строка
//
Функция Прозвища() Экспорт

Порядок

bsl
// Порядок инициализации желудя. Чем меньше число, тем раньше создаётся желудь.
//
//  Возвращаемое значение:
//   Число
//
Функция Порядок() Экспорт

Верховный

bsl
// Признак того, что желудь является верховным (приоритетным) среди желудей с тем же именем.
//
//  Возвращаемое значение:
//   Булево
//
Функция Верховный() Экспорт

Спецификация

bsl
// Спецификация (фаза жизненного цикла приложения), на которой доступен желудь.
//
//  Возвращаемое значение:
//   Строка - один из значений модуля СостоянияПриложения.
//
Функция Спецификация() Экспорт

КорневаяАннотация

bsl
// Объект корневой аннотации типа, на основе которой построено определение желудя
// (например, объект аннотации Дуб, Желудь или Напильник).
//
//  Возвращаемое значение:
//   Неопределено, Произвольный - объект корневой аннотации желудя
//      либо Неопределено, если корневая аннотация отсутствует.
//
Функция КорневаяАннотация() Экспорт

Свойства

bsl
// Таблица свойств типа желудя с развёрнутыми аннотациями.
//
//  Возвращаемое значение:
//   ТаблицаЗначений - таблица свойств типа:
//    * Имя       - Строка - имя свойства
//    * Аннотации - ТаблицаЗначений - аннотации свойства:
//       ** Имя       - Строка - имя аннотации
//       ** Параметры - ТаблицаЗначений - параметры аннотации:
//          *** Имя      - Строка - имя параметра аннотации
//          *** Значение - Строка - значение параметра аннотации
//
Функция Свойства() Экспорт

Методы

bsl
// Таблица методов типа желудя с развёрнутыми аннотациями.
//
//  Возвращаемое значение:
//   ТаблицаЗначений - таблица методов типа:
//    * Имя                  - Строка - имя метода
//    * КоличествоПараметров - Число  - число параметров метода
//    * ЭтоФункция           - Булево - признак, что метод является функцией
//    * Экспорт              - Булево - признак, что метод экспортный
//    * Аннотации            - ТаблицаЗначений - аннотации метода:
//       ** Имя       - Строка - имя аннотации
//       ** Параметры - ТаблицаЗначений - параметры аннотации:
//          *** Имя      - Строка - имя параметра аннотации
//          *** Значение - Строка - значение параметра аннотации
//    * Параметры            - ТаблицаЗначений - параметры метода:
//       ** Имя                     - Строка - имя параметра
//       ** ПоЗначению              - Булево - признак передачи по значению
//       ** ЕстьЗначениеПоУмолчанию - Булево - признак наличия значения по умолчанию
//       ** Аннотации               - ТаблицаЗначений - аннотации параметра:
//          *** Имя       - Строка - имя аннотации
//          *** Параметры - ТаблицаЗначений - параметры аннотации:
//             **** Имя      - Строка - имя параметра аннотации
//             **** Значение - Строка - значение параметра аннотации
//
Функция Методы() Экспорт

РефлекторОбъекта

bsl
// Рефлектор объекта типа желудя, используемый для получения метаданных типа.
//
//  Возвращаемое значение:
//   РефлекторОбъекта
//
Функция РефлекторОбъекта() Экспорт

НайтиМетодыСАннотациями

bsl
// Находит методы типа желудя, помеченные указанной аннотацией. Результат кешируется.
//
// Параметры:
//   АннотацияФильтр - Строка - Имя аннотации, по которой выполняется отбор методов.
//
//  Возвращаемое значение:
//   Массив из СтрокаТаблицыЗначений - найденные методы с указанной аннотацией.
//      Колонки строки соответствуют таблице, возвращаемой методом Методы().
//
Функция НайтиМетодыСАннотациями(АннотацияФильтр) Экспорт