Đặc tính sau Parser[+T]
là một đặc điểm mở rộng một hàm chấp nhận một số Input
và trả về một Result[T]
.Tính trạng có kéo dài (A => B) một hàm mở rộng đặc điểm không?
trait Parser[+T] extends (Input => Result[T])
Điều đó có đúng không?
Đặc tính sau Parser[+T]
là một đặc điểm mở rộng một hàm chấp nhận một số Input
và trả về một Result[T]
.Tính trạng có kéo dài (A => B) một hàm mở rộng đặc điểm không?
trait Parser[+T] extends (Input => Result[T])
Điều đó có đúng không?
Phải.
Input => Result[T]
là phím tắt cho Function1[Input, Result[T]]
. Nó có một phương pháp abstrat
def apply(v1: Input) : Result[T]
mà khi được xác định sẽ là chức năng thực hiện thực tế.
Scala cú pháp cho phép các phương pháp gọi là apply
được gọi là âm thầm, đó là đối với một số biểu hiện e
, e(x1, ... xn)
sẽ được dịch sang e.apply(x1, ... xn)
Hầu. Nó mở rộng hàm [Đầu vào, kết quả [T]] loại hàm lấy Đầu vào làm đối số và trả về kết quả [T] (không phải T) làm kết quả. Kết quả [T] mang thông tin về một phân tích thành công vào một T hoặc một lỗi xảy ra trong khi phân tích cú pháp.