diff --git a/cherrypick_annotations/lib/src/inject.dart b/cherrypick_annotations/lib/src/inject.dart index 194bfc1..759b931 100644 --- a/cherrypick_annotations/lib/src/inject.dart +++ b/cherrypick_annotations/lib/src/inject.dart @@ -13,6 +13,20 @@ import 'package:meta/meta.dart'; +/// Annotation for field injection in CherryPick DI framework. +/// Apply this to a field, and the code generator will automatically inject +/// the appropriate dependency into it. +/// +/// --- +/// +/// Аннотация для внедрения зависимости в поле через фреймворк CherryPick DI. +/// Поместите её на поле класса — генератор кода автоматически подставит нужную зависимость. +/// +/// Example / Пример: +/// ```dart +/// @inject() +/// late final SomeService service; +/// ``` @experimental // ignore: camel_case_types final class inject { diff --git a/cherrypick_annotations/lib/src/injectable.dart b/cherrypick_annotations/lib/src/injectable.dart index bcc6281..8ce8fc8 100644 --- a/cherrypick_annotations/lib/src/injectable.dart +++ b/cherrypick_annotations/lib/src/injectable.dart @@ -13,6 +13,24 @@ import 'package:meta/meta.dart'; +/// Marks a class as injectable for the CherryPick dependency injection framework. +/// If a class is annotated with [@injectable()], the code generator will +/// create a mixin to perform automatic injection of fields marked with [@inject]. +/// +/// --- +/// +/// Помечает класс как внедряемый для фреймворка внедрения зависимостей CherryPick. +/// Если класс помечен аннотацией [@injectable()], генератор создаст миксин +/// для автоматического внедрения полей, отмеченных [@inject]. +/// +/// Example / Пример: +/// ```dart +/// @injectable() +/// class MyWidget extends StatelessWidget { +/// @inject() +/// late final MyService service; +/// } +/// ``` @experimental // ignore: camel_case_types final class injectable { diff --git a/cherrypick_annotations/lib/src/scope.dart b/cherrypick_annotations/lib/src/scope.dart index ba15772..20f004a 100644 --- a/cherrypick_annotations/lib/src/scope.dart +++ b/cherrypick_annotations/lib/src/scope.dart @@ -13,6 +13,22 @@ import 'package:meta/meta.dart'; +/// Annotation to specify a scope for dependency injection in CherryPick. +/// Use this on an injected field to indicate from which scope +/// the dependency must be resolved. +/// +/// --- +/// +/// Аннотация для указания области внедрения (scope) в CherryPick. +/// Используйте её на инъецируемом поле, чтобы определить из какой области +/// должна быть получена зависимость. +/// +/// Example / Пример: +/// ```dart +/// @inject() +/// @scope('profile') +/// late final ProfileManager profileManager; +/// ``` @experimental // ignore: camel_case_types final class scope {