るりまサーチ

最速Rubyリファレンスマニュアル検索!
51件ヒット [1-51件を表示] (0.051秒)

別のキーワード

  1. _builtin comparable
  2. comparable clamp
  3. comparable between?
  4. comparable >=
  5. comparable >

検索結果

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]{
version
s = %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) #=>...

絞り込み条件を変える