问题:我的程序接受一个json字符串作为inpu,它包含一个udf名称、函数定义和类型。如。
{
"udfList": [
{
"name": "add"
"definition": "(x: Int, y:int) => x+y"
"type": "(Int, Int) => Int"
}
]
}
json可以包含任何函数和类型。如何使用scala反射将此字符串转换为实际函数并转换为给定类型,然后将其注册为具有给定名称的udf。
尝试:
val myFunc = """(x: Int, y:int) => x+y"""
val tb = runtimeMirror(getClass.getClassLoader).mkToolBox()
val tree = tb.parse(myFunc)
val fun = tb.eval(tree)
我无法动态转换它,因为类型是作为字符串传递的。那么,有没有一种方法可以动态地做到这一点呢?
暂无答案!
目前还没有任何答案,快来回答吧!