0
我目前正在寫一個通用的函數來執行調度異步請求訪問通用函數的類型,但我不能在調度處理器訪問泛型類型:不能在內部PartialFunction
private def execQuery[MessageType](query : Req, errorMsg : String)
{
Http(query OK as.String).either
.onSuccess
{
case Left(error) => println(errorMsg)
case Right(json) => println(new MessageType(json)) // error here
}
}
我有一個錯誤新消息類型:「新消息類型(json)」中的「無法解析符號消息類型」。 你能幫我嗎?
預先感謝您
維克多
編輯:我發現這裏http://www.brentsowers.com/2011/11/writing-generic-functions-that-take.html的其他有趣的方式。你必須使用清單功能:
class DynamicTestClass() {
def output() {
println("Hello from a dynamically sent class")
}
}
def testFunc[T : Manifest]() : T = {
manifest[T].erasure.newInstance().asInstanceOf[T]
}
val dynamicTestClassInstance = testFunc[DynamicTestClass]()
dynamicTestClassInstance.output()
它似乎工作!
帶口音的法語,+1。 '含蓄地[Cons [A]]',對吧? –
謝謝,但您的示例需要添加膨脹代碼:/請參閱我的編輯,Manifest功能似乎是處理此問題的正確方法。 – mecanix
膨脹的代碼?在那種情況下,我需要你定義'正確'。 – pedrofurla