このコード:
def insAll(values: MyRdt*) {
Db.withTransaction(session => { // Db is an org.scalaquery.session.Database instance
MyTable.insertAll(values: _*)(session)
})
}
コンパイルしません。エラーは
... missing parameter type
[error] Db.withTransaction(session => {
^
理由はありますか?
の代わりに事前定義されたクエリにアクセスすると、問題なくコンパイルされますMyTable.insertAll(values: _*)
。
不思議なことに、次のように 2 つの関数に分割すると、
def insAllS(values: MyRdt*)(session: Session) {
MyTable.insertAll(values: _*)(session)
}
def insAll(values: MyRdt*) {
Db.withTransaction(session => {
insAllS(values: _*)(session)
})
}
エラーなしでコンパイルされます。
PS:MyRdt
テーブル レコード タプルの型エイリアスです。