更新に関するSQueryLドキュメントを読んでいたところ、次のことがわかりました。
update(songs)(s =>
where(s.title === "Watermelon Man")
set(s.title := "The Watermelon Man",
s.year := s.year.~ + 1)
)
~ メソッドを SQueryL ソース コードから見つけるのに苦労しました。誰か説明してくれませんか?
更新に関するSQueryLドキュメントを読んでいたところ、次のことがわかりました。
update(songs)(s =>
where(s.title === "Watermelon Man")
set(s.title := "The Watermelon Man",
s.year := s.year.~ + 1)
)
~ メソッドを SQueryL ソース コードから見つけるのに苦労しました。誰か説明してくれませんか?
少し前にSchema Definition Pageでチルダ演算子について読んだことを思い出します。プリミティブ型とカスタム型のあいまいさを解消することですが、(私は Scala を学び始めたばかりなので) まだ少しあいまいに聞こえます ;)。少し引用すると
...
重要: PrimitiveTypes モードでは、数値演算子の間にあいまいさが生じる可能性があります
org.squeryl.PrimitiveTypeMode を使用すると、コンパイラは次の例のような式をブール値として扱います。.~ 関数は、左側が TypedExpressionNode[Int] のノードであることをコンパイラーに伝えるために必要です。
...
それが役立つことを願っています。