你如何定义一个函数在斯卡拉的types?

我希望有一种方法来定义一个函数在斯卡拉的types。

例如,说我想要一个函数,它需要两个Ints并返回一个布尔值,我可以定义一个函数,像这样使用:

def checkInts(f: (Int,Int) => Boolean) = { // do stuff } 

有没有办法来定义f的types? 然后我可以做这样的事情:

 def checkInts(f: MyFunctionType) 

要么

 def checkInts(f: Option[MyFunctionType]) 
 trait Foo { type MyFunction = (Int,Int) => Boolean def checkInts(f: MyFunction) def checkInts(f: Option[MyFunction]) }