getSyncOrNoneK<T extends Object> method
Retrieves the synchronous dependency or None
if not found or async.
Implementation
Option<T> getSyncOrNoneK<T extends Object>(
Entity typeEntity, {
Entity groupEntity = const DefaultEntity(),
bool traverse = true,
}) {
final option = getK<T>(
typeEntity,
groupEntity: groupEntity,
traverse: traverse,
);
if (option.isNone()) {
return const None();
}
UNSAFE:
{
final resolvable = option.unwrap();
if (resolvable.isAsync()) {
return const None();
}
final result = resolvable.sync().unwrap().value;
if (result.isErr()) {
return const None();
}
final value = result.transf<T>().unwrap();
return Some(value);
}
}