大多数情况下,你得到的是一个隐含的未找到错误。你不知道它失败的隐式构造链中的哪个位置。显然你不能使用运行时调试或打印语句。那么除了盯着你的代码之外,你如何调试类型级程序呢?
答案 0 :(得分:3)
我希望我有一个更好的答案,但在这里:它开始明确地传递参数,一次一个,直到它给你一个更有用的错误。 (为implicits params添加-prinin-equivalent-equivalent)
答案 1 :(得分:0)
您可以将???
用于未定义的代码部分(因为它的底部类型为Nothing
),_
用于未知的类型。另请参见-Ytyper-debug
编译器选项(此处有更多选项:https://docs.scala-lang.org/overviews/compiler-options/index.html)。根据隐式参数和包装的问题,“ Idea”具有不错的功能“显示隐式提示”和“隐式参数”(Main menu > Help > Find Action...
,并键入例如 implicit )。此外,您可以将Null
底部类型实例null
用于AnyRef,例如null: YourTypeHere
。