getDependencyK<T extends Object> method

Option<Result<Dependency<T>>> getDependencyK<T extends Object>(
  1. Entity typeEntity, {
  2. Entity groupEntity = const DefaultEntity(),
  3. bool traverse = true,
})
inherited

Retrieves the underlying Dependency object.

Implementation

Option<Result<Dependency<T>>> getDependencyK<T extends Object>(
  Entity typeEntity, {
  Entity groupEntity = const DefaultEntity(),
  bool traverse = true,
}) {
  final g = groupEntity.preferOverDefault(focusGroup);
  final option = registry.getDependencyK(typeEntity, groupEntity: g);
  var temp = option.map((e) => Ok(e).transf<Dependency<T>>());
  if (option.isNone() && traverse) {
    for (final parent in parents) {
      temp = (parent as SupportsMixinK).getDependencyK(
        typeEntity,
        groupEntity: g,
      );
      if (temp.isSome()) {
        break;
      }
    }
  }
  return temp;
}