mirror of
https://github.com/pese-git/cherrypick.git
synced 2026-01-23 13:03:11 +00:00
Code formatting fixes and dependency updates
- Fixed code formatting in benchmark_di CLI and adapter files - Updated pubspec.lock files for benchmark_di, client_app, and postly examples - Minor formatting improvements in disposable example
This commit is contained in:
@@ -98,7 +98,7 @@ class BenchmarkCliRunner {
|
||||
final di = RiverpodAdapter();
|
||||
if (scenario == UniversalScenario.asyncChain) {
|
||||
final benchAsync = UniversalChainAsyncBenchmark<
|
||||
Map<String, rp.ProviderBase<Object?>>> (
|
||||
Map<String, rp.ProviderBase<Object?>>>(
|
||||
di,
|
||||
chainCount: c,
|
||||
nestingDepth: d,
|
||||
@@ -111,7 +111,7 @@ class BenchmarkCliRunner {
|
||||
);
|
||||
} else {
|
||||
final benchSync = UniversalChainBenchmark<
|
||||
Map<String, rp.ProviderBase<Object?>>> (
|
||||
Map<String, rp.ProviderBase<Object?>>>(
|
||||
di,
|
||||
chainCount: c,
|
||||
nestingDepth: d,
|
||||
@@ -127,7 +127,8 @@ class BenchmarkCliRunner {
|
||||
} else if (config.di == 'yx_scope') {
|
||||
final di = YxScopeAdapter();
|
||||
if (scenario == UniversalScenario.asyncChain) {
|
||||
final benchAsync = UniversalChainAsyncBenchmark<UniversalYxScopeContainer>(
|
||||
final benchAsync =
|
||||
UniversalChainAsyncBenchmark<UniversalYxScopeContainer>(
|
||||
di,
|
||||
chainCount: c,
|
||||
nestingDepth: d,
|
||||
@@ -139,7 +140,8 @@ class BenchmarkCliRunner {
|
||||
repeats: config.repeats,
|
||||
);
|
||||
} else {
|
||||
final benchSync = UniversalChainBenchmark<UniversalYxScopeContainer>(
|
||||
final benchSync =
|
||||
UniversalChainBenchmark<UniversalYxScopeContainer>(
|
||||
di,
|
||||
chainCount: c,
|
||||
nestingDepth: d,
|
||||
|
||||
@@ -20,77 +20,80 @@ class KiwiAdapter extends DIAdapter<KiwiContainer> {
|
||||
registration(_container);
|
||||
}
|
||||
|
||||
@override
|
||||
Registration<KiwiContainer> universalRegistration<S extends Enum>({
|
||||
required S scenario,
|
||||
required int chainCount,
|
||||
required int nestingDepth,
|
||||
required UniversalBindingMode bindingMode,
|
||||
}) {
|
||||
if (scenario is UniversalScenario) {
|
||||
if (scenario == UniversalScenario.asyncChain ||
|
||||
bindingMode == UniversalBindingMode.asyncStrategy) {
|
||||
throw UnsupportedError('Kiwi does not support async dependencies or async binding scenarios.');
|
||||
}
|
||||
return (container) {
|
||||
switch (scenario) {
|
||||
case UniversalScenario.asyncChain:
|
||||
break;
|
||||
case UniversalScenario.register:
|
||||
container.registerSingleton<UniversalService>(
|
||||
(c) => UniversalServiceImpl(value: 'reg', dependency: null),
|
||||
);
|
||||
break;
|
||||
case UniversalScenario.named:
|
||||
container.registerFactory<UniversalService>(
|
||||
(c) => UniversalServiceImpl(value: 'impl1'), name: 'impl1');
|
||||
container.registerFactory<UniversalService>(
|
||||
(c) => UniversalServiceImpl(value: 'impl2'), name: 'impl2');
|
||||
break;
|
||||
case UniversalScenario.chain:
|
||||
for (int chain = 1; chain <= chainCount; chain++) {
|
||||
for (int level = 1; level <= nestingDepth; level++) {
|
||||
final prevDepName = '${chain}_${level - 1}';
|
||||
final depName = '${chain}_$level';
|
||||
switch (bindingMode) {
|
||||
case UniversalBindingMode.singletonStrategy:
|
||||
container.registerSingleton<UniversalService>(
|
||||
(c) => UniversalServiceImpl(
|
||||
value: depName,
|
||||
dependency: level > 1
|
||||
? c.resolve<UniversalService>(prevDepName)
|
||||
: null),
|
||||
name: depName);
|
||||
break;
|
||||
case UniversalBindingMode.factoryStrategy:
|
||||
container.registerFactory<UniversalService>(
|
||||
(c) => UniversalServiceImpl(
|
||||
value: depName,
|
||||
dependency: level > 1
|
||||
? c.resolve<UniversalService>(prevDepName)
|
||||
: null),
|
||||
name: depName);
|
||||
break;
|
||||
case UniversalBindingMode.asyncStrategy:
|
||||
// Не поддерживается
|
||||
break;
|
||||
@override
|
||||
Registration<KiwiContainer> universalRegistration<S extends Enum>({
|
||||
required S scenario,
|
||||
required int chainCount,
|
||||
required int nestingDepth,
|
||||
required UniversalBindingMode bindingMode,
|
||||
}) {
|
||||
if (scenario is UniversalScenario) {
|
||||
if (scenario == UniversalScenario.asyncChain ||
|
||||
bindingMode == UniversalBindingMode.asyncStrategy) {
|
||||
throw UnsupportedError(
|
||||
'Kiwi does not support async dependencies or async binding scenarios.');
|
||||
}
|
||||
return (container) {
|
||||
switch (scenario) {
|
||||
case UniversalScenario.asyncChain:
|
||||
break;
|
||||
case UniversalScenario.register:
|
||||
container.registerSingleton<UniversalService>(
|
||||
(c) => UniversalServiceImpl(value: 'reg', dependency: null),
|
||||
);
|
||||
break;
|
||||
case UniversalScenario.named:
|
||||
container.registerFactory<UniversalService>(
|
||||
(c) => UniversalServiceImpl(value: 'impl1'),
|
||||
name: 'impl1');
|
||||
container.registerFactory<UniversalService>(
|
||||
(c) => UniversalServiceImpl(value: 'impl2'),
|
||||
name: 'impl2');
|
||||
break;
|
||||
case UniversalScenario.chain:
|
||||
for (int chain = 1; chain <= chainCount; chain++) {
|
||||
for (int level = 1; level <= nestingDepth; level++) {
|
||||
final prevDepName = '${chain}_${level - 1}';
|
||||
final depName = '${chain}_$level';
|
||||
switch (bindingMode) {
|
||||
case UniversalBindingMode.singletonStrategy:
|
||||
container.registerSingleton<UniversalService>(
|
||||
(c) => UniversalServiceImpl(
|
||||
value: depName,
|
||||
dependency: level > 1
|
||||
? c.resolve<UniversalService>(prevDepName)
|
||||
: null),
|
||||
name: depName);
|
||||
break;
|
||||
case UniversalBindingMode.factoryStrategy:
|
||||
container.registerFactory<UniversalService>(
|
||||
(c) => UniversalServiceImpl(
|
||||
value: depName,
|
||||
dependency: level > 1
|
||||
? c.resolve<UniversalService>(prevDepName)
|
||||
: null),
|
||||
name: depName);
|
||||
break;
|
||||
case UniversalBindingMode.asyncStrategy:
|
||||
// Не поддерживается
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
final depName = '${chainCount}_$nestingDepth';
|
||||
container.registerSingleton<UniversalService>(
|
||||
(c) => c.resolve<UniversalService>(depName));
|
||||
break;
|
||||
case UniversalScenario.override:
|
||||
final depName = '${chainCount}_$nestingDepth';
|
||||
container.registerSingleton<UniversalService>(
|
||||
(c) => c.resolve<UniversalService>(depName));
|
||||
break;
|
||||
}
|
||||
};
|
||||
final depName = '${chainCount}_$nestingDepth';
|
||||
container.registerSingleton<UniversalService>(
|
||||
(c) => c.resolve<UniversalService>(depName));
|
||||
break;
|
||||
case UniversalScenario.override:
|
||||
final depName = '${chainCount}_$nestingDepth';
|
||||
container.registerSingleton<UniversalService>(
|
||||
(c) => c.resolve<UniversalService>(depName));
|
||||
break;
|
||||
}
|
||||
};
|
||||
}
|
||||
throw UnsupportedError('Scenario $scenario not supported by KiwiAdapter');
|
||||
}
|
||||
throw UnsupportedError('Scenario $scenario not supported by KiwiAdapter');
|
||||
}
|
||||
|
||||
@override
|
||||
T resolve<T extends Object>({String? named}) {
|
||||
|
||||
@@ -11,7 +11,8 @@ class YxScopeAdapter extends DIAdapter<UniversalYxScopeContainer> {
|
||||
late UniversalYxScopeContainer _scope;
|
||||
|
||||
@override
|
||||
void setupDependencies(void Function(UniversalYxScopeContainer container) registration) {
|
||||
void setupDependencies(
|
||||
void Function(UniversalYxScopeContainer container) registration) {
|
||||
_scope = UniversalYxScopeContainer();
|
||||
registration(_scope);
|
||||
}
|
||||
@@ -45,7 +46,8 @@ class YxScopeAdapter extends DIAdapter<UniversalYxScopeContainer> {
|
||||
}
|
||||
|
||||
@override
|
||||
Registration<UniversalYxScopeContainer> universalRegistration<S extends Enum>({
|
||||
Registration<UniversalYxScopeContainer>
|
||||
universalRegistration<S extends Enum>({
|
||||
required S scenario,
|
||||
required int chainCount,
|
||||
required int nestingDepth,
|
||||
@@ -112,7 +114,8 @@ class YxScopeAdapter extends DIAdapter<UniversalYxScopeContainer> {
|
||||
// handled at benchmark level
|
||||
break;
|
||||
}
|
||||
if (scenario == UniversalScenario.chain || scenario == UniversalScenario.override) {
|
||||
if (scenario == UniversalScenario.chain ||
|
||||
scenario == UniversalScenario.override) {
|
||||
final depName = '${chainCount}_$nestingDepth';
|
||||
final lastDep = scope.dep<UniversalService>(
|
||||
() => scope.depFor<UniversalService>(name: depName).get,
|
||||
@@ -121,6 +124,7 @@ class YxScopeAdapter extends DIAdapter<UniversalYxScopeContainer> {
|
||||
}
|
||||
};
|
||||
}
|
||||
throw UnsupportedError('Scenario $scenario not supported by YxScopeAdapter');
|
||||
throw UnsupportedError(
|
||||
'Scenario $scenario not supported by YxScopeAdapter');
|
||||
}
|
||||
}
|
||||
|
||||
@@ -47,7 +47,7 @@ packages:
|
||||
path: "../cherrypick"
|
||||
relative: true
|
||||
source: path
|
||||
version: "3.0.0-dev.12"
|
||||
version: "3.0.0"
|
||||
collection:
|
||||
dependency: transitive
|
||||
description:
|
||||
|
||||
@@ -37,4 +37,4 @@ void main() {
|
||||
// Освобождаем все ресурсы
|
||||
scope.dispose();
|
||||
print('Service wasDisposed = ${service.wasDisposed}'); // true
|
||||
}
|
||||
}
|
||||
|
||||
@@ -127,28 +127,28 @@ packages:
|
||||
path: "../../cherrypick"
|
||||
relative: true
|
||||
source: path
|
||||
version: "3.0.0-dev.12"
|
||||
version: "3.0.0"
|
||||
cherrypick_annotations:
|
||||
dependency: "direct main"
|
||||
description:
|
||||
path: "../../cherrypick_annotations"
|
||||
relative: true
|
||||
source: path
|
||||
version: "3.0.0-dev.0"
|
||||
version: "3.0.0"
|
||||
cherrypick_flutter:
|
||||
dependency: "direct main"
|
||||
description:
|
||||
path: "../../cherrypick_flutter"
|
||||
relative: true
|
||||
source: path
|
||||
version: "3.0.0-dev.0"
|
||||
version: "3.0.0"
|
||||
cherrypick_generator:
|
||||
dependency: "direct dev"
|
||||
description:
|
||||
path: "../../cherrypick_generator"
|
||||
relative: true
|
||||
source: path
|
||||
version: "3.0.0-dev.0"
|
||||
version: "3.0.0"
|
||||
clock:
|
||||
dependency: transitive
|
||||
description:
|
||||
|
||||
@@ -175,21 +175,21 @@ packages:
|
||||
path: "../../cherrypick"
|
||||
relative: true
|
||||
source: path
|
||||
version: "3.0.0-dev.12"
|
||||
version: "3.0.0"
|
||||
cherrypick_annotations:
|
||||
dependency: "direct main"
|
||||
description:
|
||||
path: "../../cherrypick_annotations"
|
||||
relative: true
|
||||
source: path
|
||||
version: "3.0.0-dev.0"
|
||||
version: "3.0.0"
|
||||
cherrypick_generator:
|
||||
dependency: "direct main"
|
||||
description:
|
||||
path: "../../cherrypick_generator"
|
||||
relative: true
|
||||
source: path
|
||||
version: "3.0.0-dev.0"
|
||||
version: "3.0.0"
|
||||
cli_launcher:
|
||||
dependency: transitive
|
||||
description:
|
||||
@@ -864,7 +864,7 @@ packages:
|
||||
path: "../../talker_cherrypick_logger"
|
||||
relative: true
|
||||
source: path
|
||||
version: "3.0.0-dev.0"
|
||||
version: "3.0.0"
|
||||
talker_dio_logger:
|
||||
dependency: "direct main"
|
||||
description:
|
||||
|
||||
Reference in New Issue
Block a user