在Scala sbt REPL中获取方法类型

时间:2013-03-29 20:17:32

标签: scala sbt

是否有SBT方法显示Scala方法的数据类型?

GHC(Haskell),我们可以做到:

:t something

SBT中是否有类似的命令?

2 个答案:

答案 0 :(得分:1)

如果使用_调用方法,则会看到生成的部分应用方法的参数和返回类型:

scala> def helloWorld(i: Int): Option[Int] = { Some(i) }
helloWorld: (i: Int)Option[Int]

scala> helloWorld _
res0: Int => Option[Int] = <function1>

答案 1 :(得分:1)

不,sbt只是一个构建工具。但是,您可以在scala REPL中使用相同的命令:t。您还可以使用sbt命令console使用当前环境从sbt启动scala REPL。正如亚历克斯已经说过的那样,你必须部分地应用方法来获得他们的类型。

一些例子:

scala> def foo(x: Int, y: Int): Int = x+y
foo: (x: Int, y: Int)Int

scala> :t foo _
(Int, Int) => Int

scala> :t 3
Int

scala> :t List(1,2,3)
List[Int]
相关问题