JIS X 3017:2013 プログラム言語Ruby | ページ 42

200
X 3017 : 2013 (ISO/IEC 30170 : 2012)
iv) の最後の文字が0x0aでない場合,0x0aを1文字だけ内容としてもつStringクラスの直接の
インスタンスを作り,それを実引数としてレシーバに対しwriteメソッドを呼び出す。
c) 処理系定義の値を返す。
15.2.20.5.14 IO#read
read(length=nil)
可視性 : public
動作 :
a) レシーバが読込み可能でない場合,IOErrorクラスの直接のインスタンスを例外として発生させる。
b) レシーバがストリームの終端に達している場合,次の手順を行う。
1) engthがnilの場合,Stringクラスの空の直接のインスタンスを作って返す。
2) engthがnilでない場合,nilを返す。
c) そうではない場合,次の手順を行う。
1) engthがnilの場合,レシーバからストリームの終端に達するまで読込みを行う。
2) engthがIntegerクラスのインスタンスの場合,Nをlengthの値とする。そうではない場合,この
メソッドの動作は未規定とする。
3) が0未満の場合,ArgumentErrorクラスの直接のインスタンスを例外として発生させる。
4) レシーバから,N個のバイトを読み込むかストリームの終端に達するまで読込みを行う。
d) 手順c)で読み込んだ文字列を内容としてもつStringクラスの直接のインスタンスを作って返す。
15.2.20.5.15 IO#readchar
readchar
可視性 : public
動作 :
a) レシーバが読込み可能でない場合,IOErrorクラスの直接のインスタンスを例外として発生させる。
b) レシーバがストリームの終端に達している場合,EOFErrorクラスの直接のインスタンスを例外とし
て発生させる。
c) そうではない場合,レシーバから1文字読み込み,それを表すObjectクラスのインスタンスを返す。
15.2.20.5.16 IO#readline
readline
可視性 : public
動作 :
a) レシーバが読込み可能でない場合,IOErrorクラスの直接のインスタンスを例外として発生させる。
b) レシーバがストリームの終端に達している場合,EOFErrorクラスの直接のインスタンスを例外とし
て発生させる。
c) そうではない場合,0x0aが読み込まれるか,終端に達するまで,レシーバの表すストリームから読込
みを行う。
d) 手順c)で読み込んだ文字列を内容としてもつStringクラスの直接のインスタンスを作って返す。
15.2.20.5.17 IO#readlines
readlines
可視性 : public

――――― [JIS X 3017 pdf 206] ―――――

                                                                                            201
X 3017 : 2013 (ISO/IEC 30170 : 2012)
動作 :
a) レシーバが読込み可能でない場合,IOErrorクラスの直接のインスタンスを例外として発生させる。
b) rrayクラスの空の直接のインスタンスAを作る。
c) レシーバがストリームの終端に達している場合,Aを返す。
d) そうではない場合,0x0aが読み込まれるか,終端に達するまで,レシーバの表すストリームから読込
みを行う。
e) 手順d)で読み込んだ文字列を内容としてもつStringクラスの直接のインスタンスを作り,Aの末尾
に追加する。
f) 手順c)から処理を続ける。
15.2.20.5.18 IO#sync
sync
可視性 : public
動作 :
a) レシーバが閉じている場合,IOErrorクラスの直接のインスタンスを例外として発生させる。
b) レシーバのバッファリングフラグ属性が真の場合,falseを返す。そうではない場合,trueを返す。
15.2.20.5.19 IO#sync=
sync=(bool)
可視性 : public
動作 :
a) レシーバが閉じている場合,IOErrorクラスの直接のインスタンスを例外として発生させる。
b) oolが真の場合,レシーバのバッファリングフラグ属性を偽にする。boolが偽の場合,レシーバのバ
ッファリングフラグ属性を真にする。
c) oolを返す。
15.2.20.5.20 IO#write
write(str)
可視性 : public
動作 :
a) trがStringクラスのインスタンスの場合,Sをstrとする。
b) そうではない場合,strに対しtosメソッドを呼び出す。Sを呼出し結果の値とする。SがString
クラスのインスタンスでない場合,このメソッドの動作は未規定とする。
c) が空の場合,値が0のIntegerクラスのインスタンスを返す。
d) レシーバが書込み可能でない場合,IOErrorクラスの直接のインスタンスを例外として発生させる。
e) の全ての文字を,S内と同じ順序で,レシーバの表すストリームに書き込む。
f) 処理系定義の値をもつIntegerクラスのインスタンスを返す。

15.2.21 File

15.2.21.1  概要
Fileクラスのインスタンスは,開いているファイルを表す。
規格適合処理系は,Fileクラスのメソッドの実行中に動作中のシステムがエラーを報告したとき,
SystemCallErrorクラスを例外として発生させてもよい。

――――― [JIS X 3017 pdf 207] ―――――

202
X 3017 : 2013 (ISO/IEC 30170 : 2012)
Fileクラスのインスタンスは次の属性をもつ。
パス : ファイルの位置を示す文字列。パスの正確な構文は,処理系定義とする。
15.2.21.2 直接のスーパークラス
IOクラス
15.2.21.3 特異メソッド
15.2.21.3.1 File.exist・
File.exist・(path)
可視性 : public
動作 :
a) athで指定されたファイルが存在する場合,trueを返す。
b) そうではない場合,falseを返す。
15.2.21.4 インスタンスメソッド
15.2.21.4.1 File#initialize
initialize(path, mode="r")
可視性 : private
動作 :
a) athがStringクラスのインスタンスでない場合,このメソッドの動作は未規定とする。
b) odeの内容が “r” 又は “w” であるStringクラスのインスタンスでない場合,このメソッドの動作
は未規定とする。
c) athで指定されたファイルを処理系定義の方法で開き,レシーバに関連付ける。
d) レシーバのパスにpathの内容を設定する。
e) レシーバのオープン中フラグ属性及びバッファリングフラグ属性を真にする。
f) レシーバの読込み可能フラグ属性及び書込み可能フラグ属性を次の手順で設定する。
1) odeの内容が “r” のStringクラスのインスタンスの場合,読込み可能フラグ属性を真に,書込
み可能フラグ属性を偽にする。
2) odeの内容が “w” のStringクラスのインスタンスの場合,読込み可能フラグ属性を偽に,書込
み可能フラグ属性を真にする。
g) 処理系定義の値を返す。
15.2.21.4.2 File#path
path
可視性 : public
動作 : 内容がレシーバのパスであるようなStringクラスの直接のインスタンスを作って返す。

15.2.22 Exception

15.2.22.1  概要
Exceptionクラスのインスタンスは,例外を表す。Exceptionクラスは,全ての例外クラスのスーパ
ークラスとする(15.1の図1参照)。この規格で規定されている様々な異常状態において,これらのサブ
クラスのインスタンスが例外として発生する。
Exceptionクラスのインスタンスは次の属性をもつ。
メッセージ : tosメソッドによって返されるオブジェクト(15.2.22.4.4参照)。

――――― [JIS X 3017 pdf 208] ―――――

                                                                                            203
X 3017 : 2013 (ISO/IEC 30170 : 2012)
Kernelクラスのcloneメソッド(15.3.1.3.8参照)又はdupメソッド(15.3.1.3.9参照)がException
クラスのインスタンスに対して呼び出された場合,レシーバのメッセージ属性を呼出し結果のインスタン
スにコピーしなければならない。
15.2.22.2 直接のスーパークラス
Objectクラス
15.2.22.3 特異メソッド
15.2.22.3.1 Exception.exception
Exception.exception(*args, &block)
可視性 : public
動作 : newメソッドと同じとする(15.2.3.3.3参照)。
15.2.22.4 インスタンスメソッド
15.2.22.4.1 Exception#exception
exception(*string)
可視性 : public
動作 :
a) tringの長さが0の場合,レシーバを返す。
b) tringの長さが1の場合,次の手順を行う。
1) 唯一の実引数がレシーバと同一のオブジェクトの場合,レシーバを返す。
2) そうではない場合,Mをその実引数とする。
i) レシーバのクラスの直接のインスタンスを作る。Eを作ったインスタンスとする。
ii) のメッセージ属性をMとする。
iii) を返す。
c) tringの長さが1より大きい場合,ArgumentErrorクラスの直接のインスタンスを例外として発生
させる。
15.2.22.4.2 Exception#initialize
initialize(message=nil)
可視性 : private
動作 :
a) レシーバのメッセージ属性をmessageとする。
b) 処理系定義の値を返す。
15.2.22.4.3 Exception#message
message
可視性 : public
動作 :
a) レシーバに対しtosメソッドを呼び出す。
b) 呼び出した結果の値を返す。
15.2.22.4.4 Exception#tos
tos
可視性 : public

――――― [JIS X 3017 pdf 209] ―――――

204
X 3017 : 2013 (ISO/IEC 30170 : 2012)
動作 :
a) をレシーバのメッセージ属性とする。
b) がnilの場合,処理系定義の値を返す。
c) がStringクラスのインスタンスでない場合,このメソッドの動作は未規定とする。
d) がStringクラスのインスタンスである場合,Mを返す。

15.2.23 StandardError

15.2.23.1  概要
StandardErrorクラスのインスタンスは,標準的なエラーを表す。これらのインスタンスは,《例外
クラスリスト》をもたない《rescue節》によって処理できる(11.5.2.5参照)。
15.2.23.2 直接のスーパークラス
Exceptionクラス

15.2.24 ArgumentError

15.2.24.1  概要
ArgumentErrorクラスのインスタンスは,実引数に関するエラーを表す。
15.2.24.2 直接のスーパークラス
StandardErrorクラス

15.2.25 LocalJumpError

  LocalJumpErrorクラスのインスタンスは,《ブロック》又は《ジャンプ式》の評価中に起こったエラー
を表す。
15.2.25.1 直接のスーパークラス
StandardErrorクラス
15.2.25.2 インスタンスメソッド
15.2.25.2.1 LocalJumpError#exitvalue
exitvalue
可視性 : public
動作 : レシーバのインスタンス変数@exitvalueの値を返す。
15.2.25.2.2 LocalJumpError#reason
reason
可視性 : public
動作 : レシーバのインスタンス変数@reasonの値を返す。

15.2.26 RangeError

15.2.26.1  概要
RangeErrorクラスのインスタンスは,範囲に関するエラーを表す。
15.2.26.2 直接のスーパークラス
StandardErrorクラス

15.2.27 RegexpError

15.2.27.1  概要
RegexpErrorクラスのインスタンスは,正規表現に関するエラーを表す。
15.2.27.2 直接のスーパークラス

――――― [JIS X 3017 pdf 210] ―――――

次のページ PDF 211

JIS X 3017:2013の引用国際規格 ISO 一覧

  • ISO/IEC 30170:2012(IDT)

JIS X 3017:2013の国際規格 ICS 分類一覧