130
X 3017 : 2013 (ISO/IEC 30170 : 2012)
b) そうではない場合,otherに対しレシーバを実引数としてcoerceメソッドを呼び出す。Vを呼出し結
果の値とする。
1) が要素を二つ含むArrayクラスのインスタンスの場合,F及びSをそれぞれVの最初及び最後の
要素とする。
i) Fに対し,Sを実引数として “%” メソッドを呼び出す。
ii) 呼出し結果の値を返す。
2) そうではない場合,TypeErrorクラスの直接のインスタンスを例外として発生させる。
15.2.8.3.8 Integer#
~
可視性 : public
動作 : その2の補数表現が,レシーバの2の補数表現の1の補数表現であるような,Integerクラスのイ
ンスタンスを返す。
15.2.8.3.9 Integer#&
&(other)
可視性 : public
動作 :
a) therがIntegerクラスのインスタンスでない場合,このメソッドの動作は未規定とする。
b) therがIntegerクラスのインスタンスである場合,その2の補数表現が,レシーバの値の2の補数
表現と,otherの値の2の補数表現との,ビットごとの論理積であるような,Integerクラスのイン
スタンスを返す。
15.2.8.3.10 Integer#|
|(other)
可視性 : public
動作 :
a) therがIntegerクラスのインスタンスでない場合,このメソッドの動作は未規定とする。
b) therがIntegerクラスのインスタンスである場合,その2の補数表現が,レシーバの値の2の補数
表現と,otherの値の2の補数表現との,ビットごとの論理和であるような,Integerクラスのイン
スタンスを返す。
15.2.8.3.11 Integer#
^(other)
可視性 : public
動作 :
a) therがIntegerクラスのインスタンスでない場合,このメソッドの動作は未規定とする。
b) therがIntegerクラスのインスタンスである場合,その2の補数表現が,レシーバの値の2の補数
表現と,otherの値の2の補数表現との,ビットごとの排他的論理和であるような,Integerクラス
のインスタンスを返す。
15.2.8.3.12 Integer#<<
<<(other)
可視性 : public
――――― [JIS X 3017 pdf 136] ―――――
131
X 3017 : 2013 (ISO/IEC 30170 : 2012)
動作 :
a) therがIntegerクラスのインスタンスでない場合,このメソッドの動作は未規定とする。
b) therがIntegerクラスのインスタンスである場合,x及びyをそれぞれレシーバの値及びotherの値
とする。
c) ×2y以下の最大の整数を値にもつIntegerクラスのインスタンスを返す。
15.2.8.3.13 Integer#>>
>>(other)
可視性 : public
動作 :
a) therがIntegerクラスのインスタンスでない場合,このメソッドの動作は未規定とする。
b) therがIntegerクラスのインスタンスである場合,x及びyをそれぞれレシーバの値及びotherの値
とする。
c) ×2−y以下の最大の整数を値にもつIntegerクラスのインスタンスを返す。
15.2.8.3.14 Integer#ceil
ceil
可視性 : public
動作 : レシーバを返す。
15.2.8.3.15 Integer#downto
downto(num, &block)
可視性 : public
動作 :
a) umがIntegerクラスのインスタンスでないか,blockが与えられていない場合,このメソッドの動
作は未規定とする。
b) をレシーバの値とする。
c) がnumの値より小さい場合,レシーバを返す。
d) 値がiであるIntegerクラスのインスタンスを実引数としてblockを呼び出す。
e) を1だけ減らして手順c)から繰り返す。
15.2.8.3.16 Integer#eql・
eql・(other)
可視性 : public
動作 :
a) therがIntegerクラスのインスタンスでない場合,falseを返す。
b) therがIntegerクラスのインスタンスである場合,otherに対しレシーバを実引数として “==” メソ
ッドを呼び出す。
c) 呼出し結果が真の場合,trueを返す。そうではない場合,falseを返す。
15.2.8.3.17 Integer#floor
floor
可視性 : public
動作 : レシーバを返す。
――――― [JIS X 3017 pdf 137] ―――――
132
X 3017 : 2013 (ISO/IEC 30170 : 2012)
15.2.8.3.18 Integer#hash
hash
可視性 : public
動作 : 次の条件を満たす処理系定義のIntegerクラスのインスタンスを返す。
a) 1及びI2をIntegerクラスのインスタンスとする。
b) ashメソッドをI1及びI2に対し呼び出した結果の値をそれぞれ,H1及びH2とする。
c) 1の値とI2の値とが等しい場合,H1の値とH2の値とは等しくなければならない。
15.2.8.3.19 Integer#next
next
可視性 : public
動作 : レシーバの値に1を加えたものを値とするIntegerクラスのインスタンスを返す。
15.2.8.3.20 Integer#round
round
可視性 : public
動作 : レシーバを返す。
15.2.8.3.21 Integer#succ
succ
可視性 : public
動作 : nextメソッドと同じとする(15.2.8.3.19参照)。
15.2.8.3.22 Integer#times
times(&block)
可視性 : public
動作 :
a) lockが与えられていない場合,このメソッドの動作は未規定とする。
b) を0とする。
c) がレシーバの値以上の場合,レシーバを返す。
d) 値がiであるIntegerクラスのインスタンスを実引数としてblockを呼び出す。
e) を1だけ増やして手順c)から繰り返す。
15.2.8.3.23 Integer#tof
tof
可視性 : public
動作 : 浮動小数点数としてのレシーバの値を値にもつFloatクラスの直接のインスタンスを返す。
15.2.8.3.24 Integer#toi
toi
可視性 : public
動作 : レシーバを返す。
15.2.8.3.25 Integer#tos
tos
可視性 : public
――――― [JIS X 3017 pdf 138] ―――――
133
X 3017 : 2013 (ISO/IEC 30170 : 2012)
動作 : 次の条件を満たす内容をもつStringクラスの直接のインスタンスを返す。
− レシーバの値が負の場合,最初の文字は,文字 “-” とする。
− 残りの文字の並びRは,レシーバの値の絶対値Mを10進数で表現する。Mが0の場合,Rは “0” 一
文字とする。そうではない場合,Rの最初の文字は “0” 以外の文字とする。
例1 123.tosは "123" を返す。
例2 -123.tosは "-123" を返す。
15.2.8.3.26 Integer#truncate
truncate
可視性 : public
動作 : レシーバを返す。
15.2.8.3.27 Integer#upto
upto(num, &block)
可視性 : public
動作 :
a) umがIntegerクラスのインスタンスでないか,blockが与えられていない場合,このメソッドの動
作は未規定とする。
b) をレシーバの値とする。
c) がnumの値より大きい場合,レシーバを返す。
d) 値がiであるIntegerクラスのインスタンスを実引数としてblockを呼び出す。
e) を1だけ増やして手順c)から繰り返す。
15.2.9 Float
15.2.9.1 概要
Floatクラスのインスタンスは,浮動小数点数を表す。
Floatクラスのインスタンスの値の精度は処理系定義とする。ただし,規格適合処理系が動作中のシス
テムがIEC 60559に適合している場合は,Floatクラスのインスタンスの表現はIEC 60559の3.2.2に規
定された64ビット倍精度浮動小数点形式とする。
浮動小数点数を用いた演算の結果がFloatクラスのインスタンスの表現できない値になった場合,最も
近い表現できる値に結果が丸められる。二つの最も近い表現できる値が等しく近い場合,どちらを選ぶか
は処理系定義とする。
規格適合処理系が動作中のシステムがIEC 60559に適合した浮動小数点数を提供している場合は,
Floatクラスのメソッドの実行中に,浮動小数点数を用いた演算の結果がNaNになった場合,そのメソ
ッドの動作は未規定とする。
Floatクラスのインスタンスは,Floatクラスのnewメソッドによって作られてはならない。したが
って,Floatクラスの特異クラスに対し,undefmethodメソッド(15.2.2.4.42参照)を,名前が “new”
であるSymbolクラスの直接のインスタンスを実引数として呼び出すことによって,Floatクラスの特異
メソッドnewの定義は削除されていなければならない。
15.2.9.2 直接のスーパークラス
Numericクラス
15.2.9.3 インスタンスメソッド
――――― [JIS X 3017 pdf 139] ―――――
134
X 3017 : 2013 (ISO/IEC 30170 : 2012)
15.2.9.3.1 Float#<=>
<=>(other)
可視性 : public
動作 :
a) therがIntegerクラスのインスタンス又はFloatクラスのインスタンスの場合,次の手順を行う。
1) をレシーバの値とする。otherがFloatクラスのインスタンスの場合,bをotherの値とする。そ
うではない場合,bを浮動小数点数としてのotherの値とする。
2) 規格適合処理系がIEC 60559に適合していて,a又はbがNaNの場合,処理系定義の値を返す。
3) >bの場合,値が1のIntegerクラスのインスタンスを返す。
4) =bの場合,値が0であるIntegerクラスのインスタンスを返す。
5) <bの場合,値が−1であるIntegerクラスのインスタンスを返す。
b) そうではない場合,otherに対しレシーバを実引数としてcoerceメソッドを呼び出す。Vを呼出し結
果の値とする。
1) が要素を二つ含むArrayクラスのインスタンスの場合,F及びSをそれぞれVの最初及び最後の
要素とする。
i) Fに対し,Sを実引数として “<=>” メソッドを呼び出す。
ii) 呼出し結果の値がIntegerクラスのインスタンスでない場合,このメソッドの動作は未規定と
する。
iii) 呼出し結果の値がIntegerクラスのインスタンスである場合,呼出し結果の値を返す。
2) そうではない場合,nilを返す。
15.2.9.3.2 Float#==
==(other)
可視性 : public
動作 :
a) therがFloatクラスのインスタンスの場合,次の手順を行う。
1) 規格適合処理系がIEC 60559に適合していて,レシーバの値がNaNの場合,falseを返す。
2) レシーバの値とotherの値とが同じ数の場合,trueを返す。
3) そうではない場合,falseを返す。
b) therがIntegerクラスのインスタンスの場合,次の手順を行う。
1) レシーバの値とotherの値とが数学的に等しい場合,trueを返す。
2) そうではない場合,falseを返す。
c) そうではない場合,otherに対しレシーバを実引数として “==” メソッドを呼び出す。呼出し結果の値
を返す。
15.2.9.3.3 Float#+
+(other)
可視性 : public
動作 :
a) therがFloatクラスのインスタンスの場合,レシーバの値とotherの値との和を値にもつFloatク
ラスの直接のインスタンスを返す。
――――― [JIS X 3017 pdf 140] ―――――
次のページ PDF 141
JIS X 3017:2013の引用国際規格 ISO 一覧
- ISO/IEC 30170:2012(IDT)
JIS X 3017:2013の国際規格 ICS 分類一覧
- 35 : 情報技術.事務機械 > 35.060 : 情報技術に使用される言語