From c9500a6a1cc289ce9096c86ab2a30e437246b423 Mon Sep 17 00:00:00 2001 From: Klim Date: Sun, 3 May 2026 20:06:12 +0300 Subject: [PATCH] fix(cherrypick): rename Provider typedefs to ProviderFactory --- cherrypick/lib/src/binding.dart | 4 ++-- cherrypick/lib/src/binding_resolver.dart | 25 ++++++++++++------------ cherrypick/lib/src/scope.dart | 1 - 3 files changed, 15 insertions(+), 15 deletions(-) diff --git a/cherrypick/lib/src/binding.dart b/cherrypick/lib/src/binding.dart index cde465d..ceb6138 100644 --- a/cherrypick/lib/src/binding.dart +++ b/cherrypick/lib/src/binding.dart @@ -233,7 +233,7 @@ class Binding { /// /// Prefer this over [toProvide] when the provider is async, so the resolver /// is type-safe and avoids runtime detection overhead. - Binding toProvideAsync(AsyncProvider value) { + Binding toProvideAsync(AsyncProviderFactory value) { _resolver = ProviderResolver.async(value); return this; } @@ -242,7 +242,7 @@ class Binding { /// /// Prefer this over [toProvideWithParams] when the provider is async, so the resolver /// is type-safe and avoids runtime detection overhead. - Binding toProvideAsyncWithParams(AsyncProviderWithParams value) { + Binding toProvideAsyncWithParams(AsyncProviderFactoryWithParams value) { _resolver = ProviderResolver.asyncWithParams(value); return this; } diff --git a/cherrypick/lib/src/binding_resolver.dart b/cherrypick/lib/src/binding_resolver.dart index 7fadab2..c51ebb1 100644 --- a/cherrypick/lib/src/binding_resolver.dart +++ b/cherrypick/lib/src/binding_resolver.dart @@ -14,16 +14,16 @@ import 'dart:async'; /// Synchronous factory: `T Function()`. -typedef Provider = T Function(); +typedef ProviderFactory = T Function(); /// Parameterized synchronous factory: `T Function(dynamic)`. -typedef ProviderWithParams = T Function(dynamic); +typedef ProviderFactoryWithParams = T Function(dynamic); /// Asynchronous factory: `Future Function()`. -typedef AsyncProvider = Future Function(); +typedef AsyncProviderFactory = Future Function(); /// Parameterized asynchronous factory: `Future Function(dynamic)`. -typedef AsyncProviderWithParams = Future Function(dynamic); +typedef AsyncProviderFactoryWithParams = Future Function(dynamic); /// Internal interface for resolvers managed by [Binding]. abstract class BindingResolver { @@ -88,7 +88,7 @@ abstract class _BaseProviderResolver implements BindingResolver { /// Resolves [Binding.toProvide] with a sync `T Function()` provider. class SyncProviderResolver extends _BaseProviderResolver { - final Provider _provider; + final ProviderFactory _provider; Object? _cached; bool _isCached = false; @@ -113,7 +113,7 @@ class SyncProviderResolver extends _BaseProviderResolver { /// Resolves [Binding.toProvideWithParams] with a sync `T Function(dynamic)` provider. class SyncProviderWithParamsResolver extends _BaseProviderResolver { - final ProviderWithParams _provider; + final ProviderFactoryWithParams _provider; Object? _cached; bool _isCached = false; @@ -142,7 +142,7 @@ class SyncProviderWithParamsResolver extends _BaseProviderResolver { /// Resolves [Binding.toProvide] with an async `Future Function()` provider. class AsyncProviderResolver extends _BaseProviderResolver { - final AsyncProvider _provider; + final AsyncProviderFactory _provider; Future? _cache; bool _isCached = false; @@ -171,7 +171,7 @@ class AsyncProviderResolver extends _BaseProviderResolver { /// Resolves [Binding.toProvideWithParams] with an async `Future Function(dynamic)` provider. class AsyncProviderWithParamsResolver extends _BaseProviderResolver { - final AsyncProviderWithParams _provider; + final AsyncProviderFactoryWithParams _provider; Future? _cache; bool _isCached = false; @@ -342,23 +342,24 @@ class ProviderResolver { } /// Explicit sync resolver without parameters. - static BindingResolver sync(Provider provider) { + static BindingResolver sync(ProviderFactory provider) { return SyncProviderResolver(provider); } /// Explicit sync resolver with parameters. - static BindingResolver syncWithParams(ProviderWithParams provider) { + static BindingResolver syncWithParams( + ProviderFactoryWithParams provider) { return SyncProviderWithParamsResolver(provider); } /// Explicit async resolver without parameters. - static BindingResolver async(AsyncProvider provider) { + static BindingResolver async(AsyncProviderFactory provider) { return AsyncProviderResolver(provider); } /// Explicit async resolver with parameters. static BindingResolver asyncWithParams( - AsyncProviderWithParams provider) { + AsyncProviderFactoryWithParams provider) { return AsyncProviderWithParamsResolver(provider); } } diff --git a/cherrypick/lib/src/scope.dart b/cherrypick/lib/src/scope.dart index fd6f708..edd853a 100644 --- a/cherrypick/lib/src/scope.dart +++ b/cherrypick/lib/src/scope.dart @@ -20,7 +20,6 @@ import 'package:cherrypick/src/binding_resolver.dart'; import 'package:cherrypick/src/module.dart'; import 'package:cherrypick/src/observer.dart'; - /// Represents a DI scope (container) for modules, subscopes, /// and dependency resolution (sync/async) in CherryPick. ///