種類
- 文書 (27)
- クラス (12)
- インスタンスメソッド (12)
ライブラリ
-
rubygems
/ version (24)
クラス
-
Gem
:: Version (12)
キーワード
-
1
. 6 . 8から1 . 8 . 0への変更点(まとめ) (12) -
NEWS for Ruby 2
. 4 . 0 (9) -
NEWS for Ruby 2
. 7 . 0 (6) - eql? (12)
検索結果
先頭5件
-
Gem
:: Version (18046.0) -
文字列で表現されたバージョンを比較可能 (Comparable) にするためのクラスです。
...(Comparable) にするためのクラスです。
バージョンを文字列で表したとき、単純に String#<=> で比較すると、
"1.9" のほうが "1.10" よりも大きい(バージョンが高い)ことになってしまい、
正しく判定できません。
Gem::Version は......この問題を解決します。
//emlist[文字列での比較と Gem::Version での比較][ruby]{
p "1.9" < "1.10" # => false
p Gem::Version.new("1.9") < Gem::Version.new("1.10") # => true
//}
gem のバージョンを取り扱うためのクラスですが、バージョン表記が RubyGems......は無関係に使うこともできます。
//emlist[バージョン表記のソートの例][ruby]{
versions = %w[ 1.1 1.10 1.9 1.1.beta9 1.1.beta10 ]
p versions.sort_by{ |v| Gem::Version.new(v) }
# => ["1.1.beta9", "1.1.beta10", "1.1", "1.9", "1.10"]
//}
上の例で、"1.9" と "1.10"... -
Gem
:: Version # eql?(other) -> bool (3074.0) -
self と other の Gem::Version#version のバージョンが等しいとき true を返します。 そうでなければ false を返します。
...er の Gem::Version#version のバージョンが等しいとき true を返します。
そうでなければ false を返します。
Comparable を include して作られた == と異なり、"1.0" と "1" は異なるものと判定します。
//emlist[][ruby]{
ver0 = Gem::Version.create('1.......0') # #<Gem::Version "1.0">
ver1 = Gem::Version.create('1.0') # #<Gem::Version "1.0">
ver2 = Gem::Version.create('1') # #<Gem::Version "1">
p ver0.eql?(ver1) # => true
p ver1.eql?(ver2) # => false
p ver1 == ver2 # => true
//}... -
1
. 6 . 8から1 . 8 . 0への変更点(まとめ) (66.0) -
1.6.8から1.8.0への変更点(まとめ) * ((<1.6.8から1.8.0への変更点(まとめ)/インタプリタの変更>)) * ((<1.6.8から1.8.0への変更点(まとめ)/追加されたクラス/モジュール>)) * ((<1.6.8から1.8.0への変更点(まとめ)/追加されたメソッド>)) * ((<1.6.8から1.8.0への変更点(まとめ)/追加された定数>)) * ((<1.6.8から1.8.0への変更点(まとめ)/拡張されたクラス/メソッド(互換性のある変更)>)) * ((<1.6.8から1.8.0への変更点(まとめ)/変更されたクラス/メソッド(互換性のない変更)>)) * ((<1.6.8から1.8.0への変更点(まとめ)/文法の変更>)) * ((<1.6.8から1.8.0への変更点(まとめ)/正規表現>)) * ((<1.6.8から1.8.0への変更点(まとめ)/Marshal>)) * ((<1.6.8から1.8.0への変更点(まとめ)/Windows 対応>)) * ((<1.6.8から1.8.0への変更点(まとめ)/廃止された(される予定の)機能>)) * ((<1.6.8から1.8.0への変更点(まとめ)/ライブラリ>)) * ((<1.6.8から1.8.0への変更点(まとめ)/拡張ライブラリAPI>)) * ((<1.6.8から1.8.0への変更点(まとめ)/バグ修正>)) * ((<1.6.8から1.8.0への変更点(まとめ)/サポートプラットフォームの追加>))
...)) [new]
: ((<Float::ROUNDS|Float/ROUNDS>)) [new]
追加 ((<ruby-math:0773>))
: ((<Marshal::MAJOR_VERSION|Marshal/MAJOR_VERSION>)) [new]
: ((<Marshal::MINOR_VERSION|Marshal/MINOR_VERSION>)) [new]
追加。Marshal が出力するダンプフォーマットのバージョン番......by-dev:20135>))
: ((<Array#-|Array/->)) [change]
差を求めるときに重複した値は取り除かなくなりました。
=== Comparable
: ((<Comparable>)) [change]
obj#<=> が nil を返すような引数に対して、>, >=, <, <= が例外
((<ArgumentError>)) を起こすよう......れていました
# が、その後、-1 に、その後再度 nil におさまりました。
: ((<String#<=>|String/<=>>)) [change]
: ((<Comparable>)) [change]
string <=> other は、((|other|)) が文字列でない場合、
((|other|)).to_str と ((|other|)).<=> が定義されていれ... -
NEWS for Ruby 2
. 4 . 0 (24.0) -
NEWS for Ruby 2.4.0 このドキュメントは前回リリース以降のバグ修正を除くユーザーに影響のある機能の変更のリストです。
...取るようになりました。
* Array#sum 12217
Enumerable#sum と違って each メソッドに依存しません。
* Comparable
* Comparable#clamp を追加 10594
* Dir
* Dir.empty? を追加 10121
* Enumerable
* Enumerable#chunk ブロックを省略した場......定可能です。12953
* Regexp
* meta character \X matches Unicode 9.0 characters with some workarounds
for UTR #51 Unicode Emoji, Version 4.0 emoji zwj sequences.
* Regexp#match? を追加 8110
true/false を返し、バックリファレンスを生成しません。
*......hub.com/ruby/xmlrpcが新しいリポジトリです。
* Zlib
* Zlib.gzip, Zlib.gunzip を追加 13020
=== C API の更新
* ruby_show_version() will no longer exits the process, if
RUBY_SHOW_COPYRIGHT_TO_DIE is set to 0. This will be the default in
the future.
* rb_gc_adjust... -
NEWS for Ruby 2
. 7 . 0 (24.0) -
NEWS for Ruby 2.7.0 このドキュメントは前回リリース以降のバグ修正を除くユーザーに影響のある機能の変更のリストです。
...* 始端なしRangeが実験的に導入されました。
caseやComparable#clampや定数やDSLなどで便利かもしれません。
14799
//emlist[][ruby]{
ary[..3] # identical to ary[0..3]
case RUBY_VERSION
when ..."2.4" then puts "EOL"
# ...
end
age.clamp(..100)
where(sales:......能の警告を止める例:
//emlist{
$ ruby -e '0 in a'
-e:1: warning: Pattern matching is experimental, and the behavior may change in future versions of Ruby!
$ ruby -W:no-experimental -e '0 in a'
//}
* RUBYOPTで両方止めるにはスペース区切りで指定します:
//emlist{
$ RUB......た。 16155
* Array#minmaxがEnumerable#minmaxより高速な実装として追加されました。 15929
* Comparable
* 変更されたメソッド
* Comparable#clampがRangeを引数として受け付けるようになりました。 14784
//emlist[][ruby]{
-1.clamp(0..2) #=>...