Есть ли какой-нибудь быстрый способ использовать в качестве конкретной функции (типа, скажем, , (A) => B
) как PartialFunction [A, B]
? Самый краткий синтаксис, о котором я знаю:
(a: A) => a match { case obj => func(obj) }
Есть ли где-нибудь неявное преобразование, что-то вроде:
implicit def funcAsPartial[A, B](func: A => B) = new PartialFunction[A, B] {
def isDefinedAt(a: A) = true
def apply(a: A) = func(a)
}
Думаю, я только что написал то, что искал, но существует ли это уже в библиотеках Scala?