"~>"という演算子の意味

まったくもって理解していなかったどころか、存在すら知らなかった。

RubyGemsでは、"gem gem_name, version_requirements"のようにして、バージョン縛りのrequireができるという様な事は理解していました。が、実際にソースを読んで何をしているかを調べてはいませんでした。

最近、「gem 'ruby-openid', '~> 2' if defined? Gem」というコードを目にしたわけですが、この"~>"が理解できなかったわけです。はじめ、「大なりの否定?」かと思ったわけですが、そういうわけでもなく。

ソースを眺めた結果、どうも「要求バージョン以上で、かつ最後のリビジョン番号(?)を越えない」という様な意味らしい事が分かりました。例えば、「"~>2"」なら「2以上、3未満」で、「"~>2.1"」なら「2.1以上、2.2未満」と。

さて、間違ってますかね?

プロフィール

このブログ記事について

このページは、koshigoeが2008年9月12日 23:34に書いたブログ記事です。

ひとつ前のブログ記事は「Rack::Adapterを調べてみる」です。

次のブログ記事は「Rack::Auth::OpenIDについて探りを入れ始めた」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。