我有一个功能
f : Point2D => Point2D = ???
我想将其转换为元组的功能:
(Double,Double) => (Double,Double)
我知道如何将Point2D
映射到Tuple2
:
implicit def pointToTuple(p : Point2D) = (p.x,p.y)
但是我不知道如何映射函数本身:
def convertFunction(f : Point2D => Point2D) : (Double,Double) => (Double,Double) = {
???
}
答案 0 :(得分:1)
您还需要tupleToPoint
,而不仅仅是pointToTuple
。
现在,只要您有,就可以做到:
def convertFunction(f: Point2D => Point2D) =
tupleToPoint andThen f andThen pointToTuple