getSyncOrNone<T extends Object> method

Option<T> getSyncOrNone<T extends Object>({
  1. Entity groupEntity = const DefaultEntity(),
  2. bool traverse = true,
})
inherited

Retrieves a synchronous dependency or None if not found or async.

Implementation

Option<T> getSyncOrNone<T extends Object>({
  Entity groupEntity = const DefaultEntity(),
  bool traverse = true,
}) {
  assert(T != Object, 'T must be specified and cannot be Object.');
  final option = get<T>(groupEntity: groupEntity, traverse: traverse);
  switch (option) {
    case Some(value: final resolvable):
      switch (resolvable) {
        case Sync(value: final result):
          switch (result) {
            case Ok(value: final value):
              return Some(value);
            default:
          }
        default:
      }
    default:
  }
  return const None();
}