gpt4 book ai didi

scala - 如何列出所有可用的隐式转换?

转载 作者:行者123 更新时间:2023-12-04 17:54:20 24 4
gpt4 key购买 nike

我知道在 SCALA 中我可以通过定义一些隐式函数将一种类型转换为另一种类型,我的问题是,我怎么知道在导入大量包后可以使用哪些转换?

例如,我有一个字符串,我怎么知道它可以转换成什么类型​​?

编辑以澄清,我想在我的 scala 编译插件中执行此操作,因此我可能需要在reflect.api.tree 类型上调用一个函数,然后获取隐式。我正在寻找一些方法来使用答案中提到的隐式 []。

最佳答案

在 REPL 中,您可以调用 :implicits查看除 Predef 中可用的所有范围内的隐式。 (添加 -v 以查看 Predef 隐式。)

您也可以调用 implicitly[]从代码中的任何位置调用函数来测试特定的隐式。

scala> implicitly[String => Seq[Char]]
res0: String => Seq[Char] = <function1>

scala> implicitly[String => Array[Char]]
<console>:12: error: No implicit view available from String => Array[Char].
implicitly[String => Array[Char]]
^

关于scala - 如何列出所有可用的隐式转换?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39484064/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com