0
我有這些類定義。函數返回值中的斯卡拉泛型
trait ResultTrait {
}
case class PostResult (
@Key("_id") id: String,
success: String,
errors: Seq[String] = Seq.empty
) extends ResultTrait
case class PostError (
message: String,
errorCode: String
) extends ResultTrait
這不會編譯。它給出錯誤「必需的T,但發現PostResult(或PostError)」。
def postLead[T <: SFDCResult](accessToken: AccessToken):
Future[T] = {
// depends on response from request, return PostResult or PostError
}
當你犯了一個方法通用的你說的是調用者決定什麼是T(可能有一些限制),而不是你作爲實現者。 –