私はREST Webサービスへのラッパーを作成しています。強く型付けされたScala APIを使用したいと思います。Scalaの名前付きパラメータの名前と値を持つMap [String、Any]を持つことは可能ですか?
次は私がこれまでやっているものです:
def getMentions(count: Option[Int] = None,
sinceID: Option[TweetID] = None,
maxID: Option[TweetID] = None,
trimUser: Option[Boolean] = None,
contributorDetails: Option[Boolean] = None,
includeEntities: Option[Boolean] = None) : List[Tweet] = {
val parameters = Map("count" -> count,
"since_id" -> sinceID,
"max_id" -> maxID,
"trim_user" -> trimUser,
"contributor_details" -> contributorDetails,
"include_entities" -> includeEntities)
/*
* Convert parameters, which is a Map[String,Any] to a Map[String,String]
* (Removing Nones) and pass it to an object in charge of generating the request.
*/
...
}
このアプローチ働いたが、それは手動でparameters
マップを生成するために私を必要としています。 パラメータとその値を表すマップにアクセスできたなら、私がやっていることははるかにクリーンになります。
sbtで使用できるかどうか知っていますか? – mariosangiorgio
私はそれを理解しました。 scalaバージョンのscalaVersion:= "2.10.0-RC2"を変更し、フィーチャーを使用してファイルに ' import language.experimental.macros'をインポートするだけです – mariosangiorgio