3

更新に関するSQueryLドキュメントを読んでいたところ、次のことがわかりました。

update(songs)(s =>
  where(s.title === "Watermelon Man")
  set(s.title := "The Watermelon Man",
      s.year  := s.year.~ + 1)
)

~ メソッドを SQueryL ソース コードから見つけるのに苦労しました。誰か説明してくれませんか?

4

1 に答える 1

4

少し前にSchema Definition Pageでチルダ演算子について読んだことを思い出します。プリミティブ型とカスタム型のあいまいさを解消することですが、(私は Scala を学び始めたばかりなので) まだ少しあいまいに聞こえます ;)。少し引用すると

...

重要: PrimitiveTypes モードでは、数値演算子の間にあいまいさが生じる可能性があります

org.squeryl.PrimitiveTypeMode を使用すると、コンパイラは次の例のような式をブール値として扱います。.~ 関数は、左側が TypedExpressionNode[Int] のノードであることをコンパイラーに伝えるために必要です。

...

それが役立つことを願っています。

于 2010-12-18T11:16:46.507 に答える