以下の特性Parser[+T]
は、Input
を受け取り、Result[T]
を返す関数を拡張する特性です。traitは機能拡張機能を拡張していますか(A => B)?
trait Parser[+T] extends (Input => Result[T])
これは間違いありませんか?
以下の特性Parser[+T]
は、Input
を受け取り、Result[T]
を返す関数を拡張する特性です。traitは機能拡張機能を拡張していますか(A => B)?
trait Parser[+T] extends (Input => Result[T])
これは間違いありませんか?
右。
Input => Result[T]
はFunction1[Input, Result[T]]
のショートカットです。 実際の関数の実装になり定義abstrat方法
def apply(v1: Input) : Result[T]
を有しています。
Scalaの構文法はそれはいくつかの表現e
のためにある、静かに呼ばれるようにapply
と呼ばれることができ、e(x1, ... xn)
はほとんどe.apply(x1, ... xn)
に変換されます。 Function [Input、Result [T]]は、入力を引数とし、結果としてResult(T)(Tではない)を結果として返す関数の型を拡張します。結果[T]は、成功した構文解析に関する情報をTに、または解析中に発生したエラーを運びます。