Scala 用于配置circe config的通用解析器

Scala 用于配置circe config的通用解析器,scala,enums,configuration,circe,Scala,Enums,Configuration,Circe,我列举了一个例子: import com.typesafe.config.config 导入枚举。{Enum,EnumEntry} 导入io.circe 导入io.circe.config.syntax_ 导入io.circe.generic.extras.auto_ sealed trait MyEnum扩展了枚举条目 对象MyEnum扩展枚举[MyEnum]{ case类Foo(a:String)扩展了MyEnum 对象Foo{ def parse(config:config):或者[cir

我列举了一个例子:

import com.typesafe.config.config
导入枚举。{Enum,EnumEntry}
导入io.circe
导入io.circe.config.syntax_
导入io.circe.generic.extras.auto_
sealed trait MyEnum扩展了枚举条目
对象MyEnum扩展枚举[MyEnum]{
case类Foo(a:String)扩展了MyEnum
对象Foo{
def parse(config:config):或者[circe.Error,Foo]=config.as[Foo]
}
case类Bar(b:Int)扩展了MyEnum
对象栏{
def parse(config:config):或者[circe.Error,Bar]=config.as[Bar]
}
def值=FindValue
}
像这样,我可以用
typesafe-config
io-circe
解析配置文件。 我想做的是定义一个解析方法,它根据输入类型解析我的配置

sealed trait MyEnum扩展了枚举条目
对象MyEnum扩展枚举[MyEnum]{

def parse[T我很确定编译错误应该说明隐式找不到或不支持
T
。您需要提供隐式证据证明此类类型是可解析的。事实上,这就是错误:
无法找到io.circe.Decoder[T]类型的证据参数的隐式值
。但是,如何提供这样的隐式解析?
def parse[T这也是我尝试的方式,我使用了
解码器
,但它不起作用,因为我使用了
io.circe.generic.extras.auto.\u
而不是
io.circe.generic.auto.\u
。后者起作用,尽管
extras.Configuration
属性不再应用。这是另一个问题,或者至少编辑一下其中包括所有细节。