Scala扩展了双箭头

时间:2013-07-02 20:06:25

标签: scala syntax traits

我正在查看它有声明的Anorm source code and for the RowParser trait

trait RowParser[+A] extends (Row => SqlResult[A]) { ... }

我很好奇(Row => SqlResult[A])是什么类型的?我无法在任何地方找到语法的解释。

1 个答案:

答案 0 :(得分:9)

这是Function1的语法糖,与此相同:

trait RowParser[+A] extends Function1[Row, SqlResult[A]] 

如果你进一步查看Anorm source,你会发现当实现特性时,它必须定义一个apply函数,因为它正在实现Function1特性。