accessLayer<E, A> method

ZIO<R, E, A> accessLayer<E, A>(
  1. Layer<E, A> layer
)

Implementation

ZIO<R, E, A> accessLayer<E, A>(Layer<E, A> layer) => ZIO.from((ctx) {
      if (layers._unsafeHas(layer)) {
        // ignore: null_check_on_nullable_type_parameter
        return Exit.right(layers._unsafeAccess(layer)!);
      } else if (runtime._layers._unsafeHas(layer)) {
        // ignore: null_check_on_nullable_type_parameter
        return Exit.right(runtime._layers._unsafeAccess(layer)!);
      } else if (runtime._layers._unsafeHasLazy(layer)) {
        return runtime._layers.provide(layer).unsafeRun(ctx);
      }

      return layers.provide(layer).unsafeRun(ctx);
    });