Skip to content

Публичный интерфейс библиотеки annotations

Аннотации

Классы

Модули


АннотацияАннотация

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

bsl
// Базовый объект аннотации.
// Все пользовательские аннотации должны иметь аннотацию &Аннотация с передачей имени аннотации в качестве параметра.
//
// Параметры:
//   Значение - Строка - Имя аннотации.
//
Процедура ПриСозданииОбъекта(Значение)

АннотацияПовторяемый

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

bsl
// Аннотация, показывающая что параметр аннотации может быть указан несколько раз.
// 
// Применяется к параметрам конструктора аннотации.
//
// Примеры:
//
// &Аннотация("МояАннотация")
// Процедура ПриСозданииОбъекта(Значение, &Повторяемый Параметр)
// КонецПроцедуры
// .
// &МояАннотация(Значение = "Переданное значение", Параметр = "Первый параметр", Параметр = "Второй параметр")
//
Процедура ПриСозданииОбъекта()

КонтейнерАннотаций

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

bsl
// Контейнер аннотаций - объект, который хранит все определения аннотаций.
// При создании контейнера аннотаций в него автоматически добавляется базовая аннотация &Аннотация.
//
Процедура ПриСозданииОбъекта()

ПолучитьОпределенияАннотаций

bsl
// Получить все определения аннотаций.
//
//  Возвращаемое значение:
//   ФиксированноеСоответствие - Соответствие, в котором хранятся все определения аннотаций:
//	   * Ключ - Строка - имя аннотации.
//	   * Значение - ОпределениеАннотации - определение аннотации.
//
Функция ПолучитьОпределенияАннотаций() Экспорт

ПолучитьОпределениеАннотации

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

ПолучитьРазворачивательАннотаций

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

ДобавитьАннотацию

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

ОпределениеАннотации

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

bsl

Процедура ПриСозданииОбъекта(Знач _Имя, Знач _ИмяТипаАннотации, Знач _Параметры, Знач _Аннотации)

Имя

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

ИмяТипаАннотации

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

Параметры

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

Аннотации

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

Проверить

bsl
// Выполнить проверку корректности аннотации.
//
// Выбрасывает исключение:
//  * Когда аннотация не содержит параметр, у которого нет значения по умолчанию.
//  * Когда аннотация содержит параметр, которого нет в списке параметров аннотации.
//  * Когда аннотация содержит несколько параметров без имени или с именем "Значение".
//
// Параметры:
//   Аннотация - СтрокаТаблицыЗначений - Данные аннотации:
//     * Имя       - Строка          - Имя аннотации.
//     * Параметры - ТаблицаЗначений - Таблица параметров аннотации:
//       ** Имя      - Строка - Имя параметра аннотации.
//       ** Значение - Строка - Значение параметра аннотации.
//   ПредставлениеВладельцаАннотации - Строка - Строковое представление типа или объекта
//                                              к которому применяется аннотация.
//
Процедура Проверить(Аннотация, ПредставлениеВладельцаАннотации) Экспорт

СоздатьОбъектАннотации

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

РазворачивательАннотаций

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

bsl

Процедура ПриСозданииОбъекта(КонтейнерАннотаций)

РазвернутьАннотацииСвойства

bsl
// Развернуть все аннотации переданного свойства рекурсивно.
// Для разворачивания используются данные из определений аннотаций.
//
// Параметры:
//   Свойство - Структура - Описание свойства, метода или параметра метода:
//     * Имя - Строка - Имя свойства.
//     * Аннотации - ТаблицаЗначений - Таблица аннотаций свойства:
//       ** Имя - Строка - Имя аннотации.
//        ** Параметры - ТаблицаЗначений - Таблица параметров аннотации:
//           *** Имя      - Строка - Имя параметра аннотации.
//           *** Значение - Строка - Значение параметра аннотации.
//   ВладелецСвойства - Тип - Тип владельца свойства.
//                    - Сценарий - Экземпляр владельца свойства.
//
Процедура РазвернутьАннотацииСвойства(Свойство, ВладелецСвойства) Экспорт

РазвернутьАннотацииСвойств

bsl
// Развернуть все аннотации переданного свойства рекурсивно.
// Для разворачивания используются данные из определений аннотаций.
//
// Параметры:
//   Свойства - Массив Из Структура - Описания свойств, методов или параметров метода:
//     * Имя - Строка - Имя свойства.
//     * Аннотации - ТаблицаЗначений - Таблица аннотаций свойства:
//       ** Имя - Строка - Имя аннотации.
//        ** Параметры - ТаблицаЗначений - Таблица параметров аннотации:
//           *** Имя      - Строка - Имя параметра аннотации.
//           *** Значение - Строка - Значение параметра аннотации.
//   ВладелецСвойства - Тип - Тип владельца свойства.
//                    - Сценарий - Экземпляр владельца свойства.
//
Процедура РазвернутьАннотацииСвойств(Свойства, ВладелецСвойства) Экспорт

РаботаСАннотациями

ПолучитьАннотации

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

ПолучитьАннотацию

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

НайтиАннотации

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

НайтиАннотацию

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

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

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

ПолучитьПараметрыАннотации

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

ПолучитьПараметрАннотации

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

ПолучитьЗначенияПараметровАннотации

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

ПолучитьЗначениеПараметраАннотации

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

УстановитьЗначениеПараметраАннотации

bsl
// Установить значение параметра аннотации с указанным именем параметра.
//
// Параметры:
//   Аннотация - СтрокаТабличнойЧасти,Структура - Аннотация:
//	   * Параметры - ТаблицаЗначений - Таблица параметров аннотации:
//		   * Имя - Строка - Имя параметра.
//         * Значение - Произвольный - Значение параметра.
//   ИмяПараметра - Строка - Имя параметра.
//   ЗначениеПараметра - Произвольный - Значение параметра.
//
Процедура УстановитьЗначениеПараметраАннотации(Аннотация, ИмяПараметра, ЗначениеПараметра)