заставить pureconfig генерировать ConfigReader для классов дел - PullRequest
0 голосов
/ 01 июля 2018

У меня есть неявный класс, который оборачивается вокруг типизированного класса Config для анализа информации из него. Этот класс использует pureconfig для анализа данных. Я использую это, потому что я предпочитаю config.as[String]("foo") вместо loadConfig[String](config, "foo"). Но так как я использую это HoconConfigUtil в качестве адаптера все case классы, которые я пытаюсь проанализировать, не удаются, потому что метод loadConfig не вызывается напрямую для этих тематические занятия. Из-за этого я получаю ошибку, как показано ниже. Как лучше всего решить эту проблему?

Сообщение об ошибке :

could not find implicit value for evidence parameter of type pureconfig.ConfigReader[com.example.config.Parallelism]

неявный класс адаптера

implicit class HoconConfigUtil(config: Config) {
    def as[T](path: String)(implicit derivation: Derivation[ConfigReader[T]]): T = {
      pureconfig.loadConfig[T](config, path) match {
        case Right(x: T @unchecked) => x
        case Left(th: ConfigReaderFailures) => throw makeException(th)
      }
    }
}    
...