Skip to content

Commit

Permalink
Еще немного документации
Browse files Browse the repository at this point in the history
  • Loading branch information
nixel2007 committed Nov 14, 2024
1 parent 3364d4e commit 6308eae
Show file tree
Hide file tree
Showing 5 changed files with 65 additions and 2 deletions.
Original file line number Diff line number Diff line change
@@ -1,4 +1,12 @@
// <Описание процедуры>
// Помечает желудь как имеющий приоритет среди других желудей с таким же именем или `&Прозвищем`.
// В случае конфликта имен при получении желудей или их регистрации, будет использован желудь с аннотацией `&Верховный`.
//
// При наличии нескольких желудей с одним и тем же прозвищем позволяет определить, какой из них следует возвращать
// при поиске единственного желудя по его прозвищу.
//
// Если несколько желудей с одним и тем же именем/прозвищем имеют аннотацию `&Верховный`, будет вызвано исключение.
//
// Размещается над определением желудя - конструктором или методом &Завязи.
//
&Аннотация("Верховный")
Процедура ПриСозданииОбъекта()
Expand Down
8 changes: 8 additions & 0 deletions src/internal/Классы/АннотацияЖелудь.os
Original file line number Diff line number Diff line change
@@ -1,3 +1,11 @@
// Помечает указанный класс как желудь - компонент, жизненным циклом которого управляет фреймворк ОСень.
//
// Размещается над конструктором класса.
//
// Параметры:
// Значение - Строка- Имя желудя. По умолчанию будет использовано имя типа объекта,
// как оно возвращается функцией `ТипЗнч`.
//
&Аннотация("Желудь")
Процедура ПриСозданииОбъекта(Значение = "")

Expand Down
19 changes: 18 additions & 1 deletion src/internal/Классы/АннотацияПорядок.os
Original file line number Diff line number Diff line change
@@ -1,10 +1,27 @@
Перем _Значение;

// Порядок, заданный аннотацией.
//
// Возвращаемое значение:
// Число - Заданный порядок.
//
Функция Значение() Экспорт
Возврат _Значение;
КонецФункции

// Управляет порядком инициализации и использования желудя. Не может быть меньше 1 или больше 999998.
//
// Если размещается над обычным `&Желудем` или `&Завязью`, то влияет на порядок сортировки, при получении
// коллекции желудей по прозвищу.
//
// Если размещается над `&Напильником`, влияет на порядок применения напильников к желудям.
//
// Если размещается над `&Рогаткой`, влияет на порядок запуска рогаток при старте приложения.
//
// Параметры:
// Значение - Число - Задаваемый порядок.
//
&Аннотация("Порядок")
Процедура ПриСозданииОбъекта(Значение = 1)
_Значение = Значение;
КонецПроцедуры
КонецПроцедуры
Original file line number Diff line number Diff line change
@@ -1,3 +1,13 @@
// Процедуры, помеченные аннотацией "ФинальныйШтрих" будут вызваны в конце инициализации желудя,
// после отработки конструктора/метода завязи и всех напильников, применяемых на желуде.
// Во время выполнения процедуры доступны все зависимости, внедренняемые как через конструктор, так и через поля класса
// и методы-сеттеры.
//
// Желудь может содержать несколько процедур, помеченных аннотацией "ФинальныйШтрих".
// Порядок их вызова не гарантируется.
//
// Процедура должна быть помечена `Экспорт`ная.
//
&Аннотация("ФинальныйШтрих")
Процедура ПриСозданииОбъекта()

Expand Down
20 changes: 20 additions & 0 deletions src/internal/Классы/АннотацияХарактер.os
Original file line number Diff line number Diff line change
@@ -1,3 +1,23 @@
// Задает способ управления жизненным циклом желудя.
//
// ОСень содержит два базовых характера желудя: "Одиночка" и "Компанейский".
//
// По умолчанию все желуди имеют характер "Одиночка", означающий, что желудь
// инициализируется один раз. При каждом запросе желудя будет возвращаться один и тот же
// экземпляр.
//
// Характер "Компанейский" означает, что каждый раз при запросе желудя будет создаваться
// новый экземпляр.
//
// Размещается над конструктором класса или над методом `&Завязи`.
//
// Параметры:
// Значение - Строка - Характер желудя.
//
// Пример:
// 1. &Характер("Одиночка")
// 2. &Характер("Компанейский")
//
&Аннотация("Характер")
Процедура ПриСозданииОбъекта(Значение)

Expand Down

0 comments on commit 6308eae

Please sign in to comment.