1
有沒有辦法獲得作爲參數傳遞的函數的完整包和類信息/名稱?想象一下下面的情況:如何檢索Scala中參數函數的包和類信息?
package mypackage
class MyClass {
def func(a: Int): Int = {
a * a
}
def getPackageInfo(f: Int => Int): String = {
// return package and class name of f
}
}
在這種情況下,在MyClass
調用getPackageInfo(func)
某處應該返回類似mypackage.MyClass.func
。
我知道f
可能是一個匿名函數,不屬於一個類,可以通過額外的檢查來處理。
我也不介意更改getPackageInfo
的簽名,只要它可以接受方法並返回它們的包和類信息。