私はScalaを初めて使う人です。私は、タイプRQのリクエストをサーバに送り、レスポンス[RSP]のレスポンスを受け取るメソッドを書いています。簡易版:私が電話をかけるための方法を定義する:2つのジェネリックを持つスカラー法で、1つを推論することができます
def invoke[RQ, RSP](request: RQ): Response[RSP] = {....}
Iメソッドを呼び出すと、私は受信変数の型を指定した場合、すべてのパラメータが次のように推測することができる。
val result: Response[Double] = invoke("Hello")
しかし、私がちょうどinvoke("Hello")
と何も割り当てないと言うと、それはコンパイルされません。 2つのジェネリックタイプ(たとえばinvoke[String, Double]("Hello")
)を指定する必要があります。私の質問です:文字列は、パラメータから推論することができます。 RSPジェネリックだけを指定してコールを書き込む方法はありますか?の行の何か:invoke[ , Double]("Hello")
?
要求の種類と予想される応答の間には関係がありますか? –
いいえ、これはRESTfulな呼び出しです。したがって、他のパラメータ(メソッド、URLなど)によっては、戻り値の型は何でもかまいません。 Jörgは良い説明と、これを追加する言語の可能性を提供しました。 – DDRider62