以下特征Parser[+T]是一个特性,它扩展了一个接受Input并返回a 的函数Result[T].
trait Parser[+T] extends (Input => Result[T])
Run Code Online (Sandbox Code Playgroud)
那是对的吗?
Did*_*ont 16
对.
Input => Result[T]是一个快捷方式Function1[Input, Result[T]].它有一个抽象方法
def apply(v1: Input) : Result[T]
Run Code Online (Sandbox Code Playgroud)
当定义时将是实际的功能实现.
Scala语法允许apply被调用的方法被静默调用,即对于某些表达式e,e(x1, ... xn)将被转换为e.apply(x1, ... xn)
几乎.它扩展了Function[Input, Result[T]]- Input作为参数的函数类型,并返回Result[T](不T)作为结果. Result[T]将有关成功解析的信息传递到解析T期间发生的错误或错误.