Scala中的类型类/隐式可发现性

时间:2016-02-14 13:59:35

标签: scala implicit

在Scala中,有没有办法“发现”范围内的所有类型类;或更一般地说,范围内的所有含义?在tick中,ghci显示了所有可用的:info Monad,而Monad显示了:info Maybe的所有可用类型类,我想知道是否存在类似的类型阶。

1 个答案:

答案 0 :(得分:1)

不,Scala没有这样的东西。有一些编译器选项作为" -Xlog-implicits"如果不适用,则打印更多信息。但没有什么可以列出某些背景下可用的所有含义。

有人可以尝试通过宏来做到这一点,但即使宏api也没有提供直接的方法来做到这一点。可以通过编译器API和隐式搜索访问typer。但是这个API非常复杂。