0
我有以下一个项目,包含下面的代码:无形错误:未发现:价值二
package ch.khinkali
import shapeless.{::, HList, HNil}
trait Second[L <: HList] {
type Out
def apply(value: L): Out
}
object Second {
type Aux[L <: HList, O] = Second[L] {type Out = O}
def apply[L <: HList](implicit inst: Second[L]): Aux[L, inst.Out] =
inst
}
object Main {
implicit def hlistSecond[A, B, Rest <: HList]: Second.Aux[A :: B :: Rest, B] =
new Second[A :: B :: Rest] {
type Out = B
def apply(value: A :: B :: Rest): B =
value.tail.head
}
def main(args: Array[String]): Unit = {
val second1 = Second[String :: Boolean :: Int :: HNil]
println(second1)
}
}
当我尝试在Shell
如下:
val second1 = Second[String :: Boolean :: Int :: HNil]
它显示错误消息:
error: not found: value Second
我确实导入了包装,如下图所示:
我在做什么错?
我已经得到了进一步的错误'的错误:错号码的类型参数::应该是1' –
@zero_coding更新。 –
再次出现错误'错误:无法找到参数inst的隐式值:ch.khinkali.Second [String :: Boolean :: Int :: shapeless.HNil]',\t虽然我确实有它的实例,您可以看到上面的代码。 –