別のキーワード
ライブラリ
- ビルトイン (36)
- bigdecimal (48)
- matrix (12)
- openssl (12)
- uri (12)
クラス
- BigDecimal (48)
- Complex (12)
- Matrix (12)
- Numeric (12)
-
OpenSSL
:: BN (12) - Rational (12)
-
URI
:: Generic (12)
検索結果
先頭5件
-
Numeric
# coerce(other) -> [Numeric] (18184.0) -
自身と other が同じクラスになるよう、自身か other を変換し [other, self] という配列にして返します。
..., self] という配列にして返します。
デフォルトでは self と other を Float に変換して [other, self] という配列にして返します。
Numeric のサブクラスは、このメソッドを適切に再定義しなければなりません。
以下は Rational の coerce......注意して下さい。
//emlist[例][ruby]{
# lib/rational.rb より
def coerce(other)
if other.kind_of?(Float)
return other, self.to_f
elsif other.kind_of?(Integer)
return Rational.new!(other, 1), self
else
super
end
end
//}
数値クラスの算術演算子は通常自分......引数の coerce により自身を変換してから
+ 演算子を呼んでいます。
//emlist[例][ruby]{
# lib/rational.rb より
def + (a)
if a.kind_of?(Rational)
# 長いので省略
elsif a.kind_of?(Integer)
# 長いので省略
elsif a.kind_of?(Float)
Float(self) + a... -
BigDecimal
# coerce(other) -> Array (18168.0) -
self と other が同じクラスになるよう、self か other を変換し [other, self] という配列にして返します。
...
self と other が同じクラスになるよう、self か other を変換し [other,
self] という配列にして返します。
@param other 比較または変換するオブジェクト
BigDecimal#coerce は Ruby における強制型変換のための機能です。
BigDecimal オブジェ......ジェクト間の各種の計算は
BigDecimal#coerce の結果を元に行われます。
//emlist[][ruby]{
require "bigdecimal"
a = BigDecimal("1.0")
b = a / 2.0 # => 0.5e0
//}
other に Rational オブジェクトを指定した場合は self の有効桁数を
用いて変換を行います... -
OpenSSL
:: BN # coerce(other) -> Array (18142.0) -
自身と other が同じクラスになるよう、自身か other を変換し [other, self] という配列にして返します。
...自身と other が同じクラスになるよう、自身か other を変換し
[other, self] という配列にして返します。
基本的に other が整数のときに、自身を Integer のオブジェクトに
変換して [other, 変換後オブジェクト] にして返します。
そ......。
//emlist[][ruby]{
require 'openssl'
p 1.to_bn.coerce(2) # => [2, 1]
//}
@param other 変換の基準となるオブジェクト
@raise TypeError 変換に失敗した場合に発生します
coerce メソッドの詳細な説明は、Numeric#coerce にあります。
@see Numeric#coerce... -
Rational
# coerce(other) -> Array (18130.0) -
自身と other が同じクラスになるよう、自身か other を変換し [other, self] という 配列にして返します。
...other が同じクラスになるよう、自身か other を変換し [other, self] という
配列にして返します。
@param other 比較または変換するオブジェクト
//emlist[例][ruby]{
Rational(1).coerce(2) # => [(2/1), (1/1)]
Rational(1).coerce(2.2) # => [2.2, 1.0]
//}... -
Complex
# coerce(other) -> [Complex , Complex] (18124.0) -
other を Complex に変換して [変換後の other, self] の配列を返します。
...other を Complex に変換して [変換後の other, self] の配列を返します。
@raise TypeError 変換できないオブジェクトを指定した場合に発生します。
//emlist[例][ruby]{
Complex(1).coerce(2) # => [(2+0i), (1+0i)]
//}... -
URI
:: Generic # coerce(oth) -> [URI , URI] (18124.0) -
引数 oth をパースして [パース後の oth, self] の配列を返します。
...引数 oth をパースして [パース後の oth, self] の配列を返します。
@param oth URI オブジェクトか文字列を指定します。
例:
require 'uri'
uri = URI.parse("http://my.example.com")
uri.coerce("http://foo.com")
# => [#<URI::HTTP:0x00000000bcb028 URL:http:/... -
Matrix
# coerce(other) -> Array (18114.0) -
他の数値オブジェクトとの変換を行います。
...:Scalarのオブジェクトに変換し、selfとの組を配列として返します。
@param other 変換する数値オブジェクト
//emlist[例][ruby]{
require 'matrix'
a1 = [1, 2]
a2 = [-1.25, 2.2]
m = Matrix[a1, a2]
r = Rational(1, 2)
p m.coerce(r) #=> [#<Matrix::Scalar:0x832df18 @value... -
BigDecimal
# ==(other) -> bool (23.0) -
self が other と等しい場合に true を、そうでない場合に false を返します。
...
self が other と等しい場合に true を、そうでない場合に false を返します。
それぞれの値は BigDecimal#coerce で変換して比較される場合があります。
//emlist[][ruby]{
require 'bigdecimal'
BigDecimal('1.0') == 1.0 # => true
//}... -
BigDecimal
# ===(other) -> bool (23.0) -
self が other と等しい場合に true を、そうでない場合に false を返します。
...
self が other と等しい場合に true を、そうでない場合に false を返します。
それぞれの値は BigDecimal#coerce で変換して比較される場合があります。
//emlist[][ruby]{
require 'bigdecimal'
BigDecimal('1.0') == 1.0 # => true
//}...