7mind / izumi

Productivity-oriented collection of lightweight fancy stuff for Scala toolchain

Home Page:https://izumi.7mind.io

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

finish Injector refactoring: replace all exceptions with Either

neko-kai opened this issue · comments

I've removed all the unnecessary exceptions and internal usages of planUnsafe (former plan), the uses which are still there have to throw anyway, so it's ok to leave it as it is.

One use may be removed if we support bindings like fromEither:

  make[AppStartupPlans].from {
    (roleAppPlanner: RoleAppPlanner, roots: Set[DIKey] @Id("distage.roles.roots")) =>
      roleAppPlanner.makePlan(roots)
  }

makePlan may return Either here but that would be useless unless we have .fromEither.