220
X 3017 : 2013 (ISO/IEC 30170 : 2012)
i) includeprivateが真の場合,trueを返す。
ii) そうではない場合,falseを返す。
3) そうではない場合,trueを返す。
d) そうではない場合,falseを返す。
15.3.1.3.44 Kernel#send
send(symbol, *args, &block)
可視性 : public
動作 :
a) ymbolによって指定される名前をNとする。
b) レシーバに対し,argsを実引数リストとし,blockが渡されていればそれを《ブロック》として,名前が
Nであるメソッドを呼び出す。
c) 呼出し結果の値を返す。
15.3.1.3.45 Kernel#singletonmethods
singletonmethods(all=true)
可視性 : public
動作 : Eをレシーバの特異クラスとする。
a) rrayクラスの空の直接のインスタンスAを作る。
b) のインスタンスメソッドの束縛の集合をIとする。
Iのそれぞれの束縛Bに対し,N及びVをそれぞれBの名前及び値として,次の手順を実行する。
1) がundefであるか,Vの可視性がprivateの場合,次の二つの手順[2)及び3)]は行わない。
2) 内容がNである新しく作ったStringクラスの直接のインスタンス又は名前がNであるSymbol
クラスの直接のインスタンスのいずれかを,Sとする。Sの値としてどちらを選ぶかは処理系定義と
する。
3) をAの末尾に追加する。ただし,SがSymbolクラスのインスタンスでありAが同じ名前のSymbol
クラスのインスタンスを要素にもつ場合,又はSがStringクラスのインスタンスでありAが同じ
内容のStringクラスのインスタンスを要素にもつ場合は追加しない。
c) llが真の場合,EのインクルードモジュールリストのそれぞれのモジュールMについて手順b)を実
行する。ここで,この手順の中のEはMであるとする。
d) を返す。
15.3.1.3.46 Kernel#tos
tos
可視性 : public
動作 : レシーバの文字列表現を内容にもつStringクラスの直接のインスタンスを作って返す。このイン
スタンスの具体的な内容は処理系定義とする。
15.3.2 Enumerable
15.3.2.1 概要
Enumerableモジュールは,eachメソッドを用いてあるオブジェクトの要素に対して繰り返すような
メソッドを提供する。
次のEnumerableモジュールのメソッドの説明では,要素という表現は,eachメソッドが《ブロック》
――――― [JIS X 3017 pdf 226] ―――――
221
X 3017 : 2013 (ISO/IEC 30170 : 2012)
呼出し時に実引数として渡す値を指す。
15.3.2.2 インスタンスメソッド
15.3.2.2.1 Enumerable#all・
all・(&block)
可視性 : public
動作 :
a) レシーバに対し,eachメソッドを呼び出す。
b) achメソッドが渡すそれぞれの要素Xについて,次の手順を行う。
1) lockが与えられている場合,blockをXを実引数として呼び出す。
呼出し結果が偽の場合,falseを返す。
2) lockが与えられず,Xが偽の場合,falseを返す。
c) rueを返す。
15.3.2.2.2 Enumerable#any・
any・(&block)
可視性 : public
動作 :
a) レシーバに対し,eachメソッドを呼び出す。
b) achメソッドが渡すそれぞれの要素Xについて,次の手順を行う。
1) lockが与えられている場合,blockをXを実引数として呼び出す。
呼出し結果が真の場合,trueを返す。
2) lockが与えられず,Xが真の場合,trueを返す。
c) alseを返す。
15.3.2.2.3 Enumerable#collect
collect(&block)
可視性 : public
動作 :
a) lockが与えられていない場合,このメソッドの動作は未規定とする。
b) rrayクラスの空の直接のインスタンスAを作る。
c) レシーバに対し,eachメソッドを呼び出す。
d) achメソッドが渡すそれぞれの要素Xについて,Xを実引数としてblockを呼び出し,呼出し結果の
値をAの末尾に追加する。
e) を返す。
15.3.2.2.4 Enumerable#detect
detect(ifnone=nil, &block)
可視性 : public
動作 :
a) lockが与えられていない場合,このメソッドの動作は未規定とする。
b) レシーバに対し,eachメソッドを呼び出す。
c) achメソッドが渡すそれぞれの要素Xについて,Xを実引数としてblockを呼び出す。呼出し結果の
――――― [JIS X 3017 pdf 227] ―――――
222
X 3017 : 2013 (ISO/IEC 30170 : 2012)
値が真の場合,Xを返す。
d) fnoneを返す。
15.3.2.2.5 Enumerable#eachwithindex
eachwithindex(&block)
可視性 : public
動作 :
a) lockが与えられていない場合,このメソッドの動作は未規定とする。
b) を0とする。
c) レシーバに対し,eachメソッドを呼び出す。
d) achメソッドが渡すそれぞれの要素Xについて,次の手順を行う。
1) 及びiを実引数としてblockを呼び出す。
2) を1増加させる。
e) レシーバを返す。
15.3.2.2.6 Enumerable#entries
entries
可視性 : public
動作 :
a) rrayクラスの空の直接のインスタンスAを作る。
b) レシーバに対し,eachメソッドを呼び出す。
c) achメソッドが渡すそれぞれの要素Xについて,XをAの末尾に追加する。
d) を返す。
15.3.2.2.7 Enumerable#find
find(ifnone=nil, &block)
可視性 : public
動作 : detectメソッドと同じとする(15.3.2.2.4参照)。
15.3.2.2.8 Enumerable#findall
findall(&block)
可視性 : public
動作 :
a) lockが与えられていない場合,このメソッドの動作は未規定とする。
b) rrayクラスの空の直接のインスタンスAを作る。
c) レシーバに対し,eachメソッドを呼び出す。
d) achメソッドが渡すそれぞれの要素Xについて,Xを実引数としてblockを呼び出す。呼出し結果の
値が真の場合,XをAの末尾に追加する。
e) を返す。
15.3.2.2.9 Enumerable#grep
grep(pattern, &block)
可視性 : public
動作 :
――――― [JIS X 3017 pdf 228] ―――――
223
X 3017 : 2013 (ISO/IEC 30170 : 2012)
a) rrayクラスの空の直接のインスタンスAを作る。
b) レシーバに対し,eachメソッドを呼び出す。
c) achメソッドが渡すそれぞれの要素Xについて,patternに対し,Xを実引数として “===” メソッド
を呼び出す。
呼出し結果が真の場合,次の手順を行う。
1) lockが与えられている場合,Xを実引数としてblockを呼び出し,その結果の値をAの末尾に追加
する。
2) そうではない場合,XをAの末尾に追加する。
d) を返す。
15.3.2.2.10 Enumerable#include・
include・(obj)
可視性 : public
動作 :
a) レシーバに対し,eachメソッドを呼び出す。
b) achメソッドが渡すそれぞれの要素Xについて,Xに対し,objを実引数として “==” メソッドを呼
び出す。呼出し結果の値が真の場合,trueを返す。
c) alseを返す。
15.3.2.2.11 Enumerable#inject
inject(*args, &block)
可視性 : public
動作 :
a) lockが与えられていない場合,このメソッドの動作は未規定とする。
b) rgsの長さが2の場合,このメソッドの動作は未規定とする。argsの長さが2より大きい場合,
ArgumentErrorクラスの直接のインスタンスを例外として発生させる。
c) レシーバに対し,eachメソッドを呼び出す。eachメソッドが要素を一つも渡さなかった場合,nil
を返す。
d) achメソッドが渡すそれぞれの要素Xについて,次の手順を行う。
1) が最初の要素であり,argsの長さが0の場合,VをXとする。
2) が最初の要素で,argsの長さが1の場合,argsの唯一の要素及びXを実引数としてblockを呼び
出す。Vを呼出し結果の値とする。
3) が最初の要素でない場合,V及びXを実引数としてblockを呼び出す。Vを新たに呼出し結果の値
とする。
e) を返す。
15.3.2.2.12 Enumerable#map
map(&block)
可視性 : public
動作 : collectメソッドと同じとする(15.3.2.2.3参照)。
15.3.2.2.13 Enumerable#max
max(&block)
――――― [JIS X 3017 pdf 229] ―――――
224
X 3017 : 2013 (ISO/IEC 30170 : 2012)
可視性 : public
動作 :
a) レシーバに対し,eachメソッドを呼び出す。
b) achメソッドが要素を一つも渡さなかった場合,nilを返す。
c) achメソッドが渡すそれぞれの要素Xについて,次の手順を行う。
1) が最初の要素の場合,VをXとする。
2) そうではない場合,次の手順を行う。
i) blockが与えられている場合,次の手順を行う。
I) 及びVを実引数としてblockを呼び出す。Dを呼出し結果の値とする。
II) がIntegerクラスのインスタンスでない場合,このメソッドの動作は未規定とする。
III) の値が0より大きい場合,Vを新たにXとする。
ii) lockが与えられていない場合,次の手順を行う。
I) 及びVを実引数として “<=>” メソッドを呼び出す。Dを呼出し結果の値とする。
II) がIntegerクラスのインスタンスでない場合,このメソッドの動作は未規定とする。
III) の値が0より大きい場合,Vを新たにXとする。
d) を返す。
15.3.2.2.14 Enumerable#member・
member・(obj)
可視性 : public
動作 : include・メソッドと同じとする(15.3.2.2.10参照)。
15.3.2.2.15 Enumerable#min
min(&block)
可視性 : public
動作 :
a) レシーバに対し,eachメソッドを呼び出す。
b) achメソッドが要素を一つも渡さなかった場合,nilを返す。
c) achメソッドが渡すそれぞれの要素Xについて,次の手順を行う。
1) が最初の要素の場合,VをXとする。
2) そうではない場合,次の手順を行う。
i) blockが与えられている場合,次の手順を行う。
I) 及びVを実引数としてblockを呼び出す。Dを呼出し結果の値とする。
II) がIntegerクラスのインスタンスでない場合,このメソッドの動作は未規定とする。
III) の値が0より小さい場合,Vを新たにXとする。
ii) lockが与えられていない場合,次の手順を行う。
I) 及びVを実引数として “<=>” メソッドを呼び出す。Dを呼出し結果の値とする。
II) がIntegerクラスのインスタンスでない場合,このメソッドの動作は未規定とする。
III) の値が0より小さい場合,Vを新たにXとする。
d) を返す。
15.3.2.2.16 Enumerable#partition
――――― [JIS X 3017 pdf 230] ―――――
次のページ PDF 231
JIS X 3017:2013の引用国際規格 ISO 一覧
- ISO/IEC 30170:2012(IDT)
JIS X 3017:2013の国際規格 ICS 分類一覧
- 35 : 情報技術.事務機械 > 35.060 : 情報技術に使用される言語