diff options
Diffstat (limited to 'spec')
-rw-r--r-- | spec | 140 |
1 files changed, 70 insertions, 70 deletions
@@ -67,13 +67,13 @@ tab), CR(carriage return),改頁(form feed)である.改行(newline)は明ら 予約語は以下の通りである - alias else in resque when - and elsif include retry while - break end module return yield - case ensure nil self __END__ - class fail or super __FILE__ - continue for protect then __LINE__ - def if redo undef + alias def if resque when + and else in retry while + begin elsif include return yield + break end module self __END__ + case ensure nil super __FILE__ + class fail or then __LINE__ + continue for redo undef 予約語はクラス名,メソッド名,変数名などに用いることはできない. @@ -303,7 +303,7 @@ Rubyの変数はスコープ(有効範囲)と寿命(有効期限)によって4種類に分類され, 括弧の中には単なる式だけではなく,式の並び(=プログラム)を置くことが出 来る. - `(' 式 `;' 式... `)' + `(' 式 `;' 式.. `)' 式の並びの値は最後に評価した式の値である.つまりの値は最後に評価した式 の値になる. @@ -317,7 +317,7 @@ Rubyの変数はスコープ(有効範囲)と寿命(有効期限)によって4種類に分類され, 配列はArrayクラスのインスタンスである.配列を生成する式は以下の形式で ある. - `[' 式, ... `]' + `[' 式, .. `]' それぞれの式を評価した結果を含む配列を返す.要素数が0の空配列を生成す るためには空の配列式 @@ -336,7 +336,7 @@ Rubyの変数はスコープ(有効範囲)と寿命(有効期限)によって4種類に分類され, の連想配列はDict(辞書)クラスのインスタンスである.詳細はクラスDictの項 を参照されたい.連想配列を生成する連想配列式は以下の形式である. - `{' 式 `=>' 式... `}' + `{' 式 `=>' 式.. `}' それぞれの式を評価した結果をキーと値とする連想配列オブジェクトを返す. 要素数が0の連想配列を生成するためには空の連想配列式 @@ -356,7 +356,7 @@ Rubyの変数はスコープ(有効範囲)と寿命(有効期限)によって4種類に分類され, オブジェクトにメッセージを送る基本的な構文がメッセージ式であり,その基 本形式は以下の通りである. - 式1 `.' メソッド名 `(' 引数1... [`,' `*' 引数n ]`)' + 式1 `.' メソッド名 `(' 引数1.. [`,' `*' 引数n ]`)' 式1を評価して得られるオブジェクトの,識別子で指定されるメソッドを呼び 出す.一番最後の引数が`*'に続く(単一の)式である場合,その式を評価した @@ -403,7 +403,7 @@ Rubyの変数はスコープ(有効範囲)と寿命(有効期限)によって4種類に分類され, 出す.引数として与えられた変数の値を変更しても,渡されるのは元の引数の 値である. - super`(' 引数... `)' + super`(' 引数.. `)' 引数とともにスーパークラスの同名のメソッドを呼び出す.一番最後の引数が `*'に続く場合は通常のメソッド呼び出しと同様に展開して渡される. @@ -430,7 +430,7 @@ module式を用いる.代入式は演算子形式をとっているが,メソッドではないの 配列要素への代入 - 式1`[' 式2... `]' `=' 式n + 式1`[' 式2.. `]' `=' 式n 式1を評価して得られるオブジェクトに,式2から式nまでを引数として,"[]=" というメソッドを呼び出す. @@ -470,7 +470,7 @@ module式を用いる.代入式は演算子形式をとっているが,メソッドではないの 同時に複数の変数に代入を行なうことができる.その形式は以下の通りである. - 左辺 `,' [左辺 `,' ...] [`*' 左辺]= 式 [, 式...] + 左辺 `,' [左辺 `,'..] [`*' 左辺]= 式 [, 式..] 右辺の式が一つしかない場合は,その値を配列として(必要ならばto_aメソッ ドで配列に変換して),要素をそれぞれ左辺に代入する.それ以外の場合には, @@ -510,9 +510,9 @@ module式を用いる.代入式は演算子形式をとっているが,メソッドではないの <=> == != =~ !~ && || - .. ... + .. ... :: - =(代入) 自己代入(+=, -=, ..) + =(代入) 自己代入(+=, -=,..) and or 弱 if修飾子 while修飾子 @@ -534,13 +534,13 @@ module式を用いる.代入式は演算子形式をとっているが,メソッドではないの 式1. 演算子 () -配列(連想配列を含む)の要素の参照(式1 `[' 式2... `]') +配列(連想配列を含む)の要素の参照(式1 `[' 式2.. `]') - 式1. `[]' (式2...) + 式1. `[]' (式2..) -配列要素の代入( 式1 `[' 式2... `]' `=' 式n) +配列要素の代入( 式1 `[' 式2.. `]' `=' 式n) - 式1. `[]=' (式2...) + 式1. `[]=' (式2..) それ以外の2項演算子(式 演算子 式) @@ -552,11 +552,11 @@ module式を用いる.代入式は演算子形式をとっているが,メソッドではないの ** IF if 式1 [then] - 式1 + 式.. [elsif 式2 [then] - 式2 ]... + 式.. ].. [else - 式n ] + 式.. ] end 条件判断式.式1が真の場合に式1を評価する.それ以外の場合は式2を評価す @@ -577,10 +577,10 @@ ifの条件判断部の式では文字列と正規表現リテラルは式「$_=~ リテラル」の ** CASE case 式0 - [when 式1 [, 式2]... [then] - 式1 ]... + [when 式1 [, 式2].. [then] + 式.. ].. [else - 式n ] + 式.. ] end 条件分岐,CのswitchよりもPascalのcaseに似ている.breakで脱出することも @@ -662,7 +662,7 @@ orの両辺の式では文字列と正規表現リテラルは式「$_=~ リテラル」の省略で ** WHILE while 式 - 式 + 式.. end 式を評価した値が真の間,式を繰り返し実行する.while式の値はnilである. @@ -690,7 +690,7 @@ whileの条件判断部の式では文字列と正規表現リテラルは式「$_=~ リテラル」 イテレータとは制御構造(特にループ)の抽象化のために用いられるメソッドの 一種である.イテレータの呼び出しは以下の構文で行なわれる. - 式 `{' 変数... `|' 式... `}' + 式 `{' 変数.. `|' 式.. `}' 「式」をブロックとして設定し,「式」のメソッドをイテレータとして評価す る.「式」のトップレベルのメソッドだけがイテレータとして呼び出され, @@ -722,7 +722,7 @@ Enumerableモジュールのgrepメソッドのようにイテレータとして呼ばれた時と ** YIELD - yield `(' [式 [`,' 式...]]) + yield `(' [式 [`,' 式..]]) yield イテレータの中でブロックの呼び出しを行なう.yieldを実行したメソッドが @@ -740,27 +740,27 @@ yieldの引数の括弧は曖昧でない限り省略できる. failの引数の括弧は曖昧でない限り省略できる. -** PROTECT +** BEGIN -処理中に予期しない事態が発生した時には例外が発生する.Rubyでは例外を途 -中で捕捉して,再試行したり,後処理を行なったりすることができる. +複数の式をまとめるためにbegin式がある.begin式の形式は以下の通りである. - protect - 式1 + begin + 式.. [resque - 式2 ] + 式.. ] [ensure - 式3] + 式..] end -式1を実行し,その実行中に例外が発生すればresque節で指定された式2を実行 -する.更にensure節が存在する時はprotect式を終了する前に必ず(正常終了時 -だけでなく,例外, return, break, continue, redoなどによる脱出でも)式3 -を実行する. +begin式の値は一番最後に評価された式の値である.begin式の処理中に発生し +た時に例外はresque節で捕獲することが出来る.この場合の値はresque部で最 +後に評価した式の値である.更にensure節が存在する時はbegin式を終了する +前に必ず(正常終了時だけでなく,例外, return, break, continue, redoなど +による脱出でも)ensure節の式を評価する. ** RETURN - return [式[`,' 式...]] + return [式[`,' 式..]] 式の値を戻り値としてメソッドの実行を終了する.式が2つ以上与えられた時 には,それらを要素とする配列をメソッドの戻り値とする.式が一つもない場 @@ -788,9 +788,9 @@ redoはループ条件のチェックを行なわず,現在の繰り返しをやり直す. retry -protect式のresque節で使い,protect式を始めから実行する.例外処理を行なっ -てから再試行するのに使う.resque節以外でretryが用いられた場合例外が発 -生する. +begin式のresque節で使い,begin式を始めから実行する.例外処理を行なって +から再試行するのに使う.resque節以外でretryが用いられた場合例外が発生 +する. ** クラス定義 @@ -820,7 +820,7 @@ protect式のresque節で使い,protect式を始めから実行する.例外処理を行なっ ド定義はネストできないので,メソッド定義式中ではメソッド定義式を再び呼 び出せない. - def メソッド名 [`(' 引数 [`,' 引数...][`,' `*'引数 ] `)'] + def メソッド名 [`(' 引数 [`,' 引数..][`,' `*'引数 ] `)'] 定義実体 end @@ -845,7 +845,7 @@ protect式のresque節で使い,protect式を始めから実行する.例外処理を行なっ メソッド定義にはもう一つ特異メソッドの定義がある.特異メソッドとはある 特定のオブジェクトに固有のメソッドである.形式は以下の通りである. - def 式 `.' メソッド名 [`(' 引数 [`,' 引数...][`,' `*'引数 ] `)'] + def 式 `.' メソッド名 [`(' 引数 [`,' 引数..][`,' `*'引数 ] `)'] 定義実体 end @@ -867,7 +867,7 @@ protect式のresque節で使い,protect式を始めから実行する.例外処理を行なっ 他のモジュールをインクルードする構式は以下の通りである. - include モジュール名 [`,' モジュール名...] + include モジュール名 [`,' モジュール名..] 現在の定義中のクラスまたはモジュール(トップレベルではObjectクラス)に指 定したモジュールをインクルードする. @@ -977,7 +977,7 @@ Rubyには厳密な意味では関数はないがKernelクラスの関数メソッドは(全ての メソッドがイテレータとして呼び出された時に真,そうでない時に偽 を返す述語. - kill(signal, pid...) + kill(signal, pid..) pidで指定されたプロセスにシグナルを送る.シグナルはシグナル番 号か名前で指定する.負の値を持つシグナル(あるいはシグナル名の @@ -1094,7 +1094,7 @@ Rubyには厳密な意味では関数はないがKernelクラスの関数メソッドは(全ての は`$_'の値を更新する.その他の詳細に関してはStringクラスのsub メソッドの解説を参照のこと. - syscall(num, arg...) + syscall(num, arg..) numで指定された番号のシステムコールを実行する.第2引数以降をシ ステムコールの引数として渡す.引数は文字列または整数でなければ @@ -1104,7 +1104,7 @@ Rubyには厳密な意味では関数はないがKernelクラスの関数メソッドは(全ての コマンドを実行し,その終了ステータスを返す. - trap(command, signal...) + trap(command, signal..) signalの割り込みがかかった時にcommandを実行する.signalはシグ ナル名かシグナルの番号.commandとして"SIG_IGN"または"IGNORE"を @@ -1234,11 +1234,11 @@ Rubyには厳密な意味では関数はないがKernelクラスの関数メソッドは(全ての られるメソッドは大抵真の値として%TRUEを返すようにはなっている が).つまり - if some.method() then .. else .. end + if some.method() then ... else ... end と - if some.method() == %TRUE then .. else .. end + if some.method() == %TRUE then ... else ... end は完全には同義ではない.%FALSEに関しては,このような問題は生じ ない. @@ -1247,7 +1247,7 @@ Rubyには厳密な意味では関数はないがKernelクラスの関数メソッドは(全ての ** Array(クラス) -数字を添字とした配列のクラスである.生成は一般的には配列式``[...]''で +数字を添字とした配列のクラスである.生成は一般的には配列式``[..]''で 行なわれる. SuperClass: Object @@ -1429,7 +1429,7 @@ Methods: Single Methods: - Array[item...] + Array[item..] 引数を要素とする配列を生成する. @@ -1482,7 +1482,7 @@ SuperClass: Object Methods: - call(arg[, ...]) + call(arg[,..]) ブロックを実行する. @@ -1514,7 +1514,7 @@ Private Methods: Methods: - new(...) + new(..) クラスのインスタンスを生成する.多くの場合このメソッドはサブク ラスの特異メソッドによってオーバーライドされ,クラスによって引 @@ -1788,7 +1788,7 @@ Methods: Single Methods: - Dict[key, value...] + Dict[key, value..] 奇数番目の引数をkey,偶数番目の引数をvalueとする辞書を生成する. @@ -2088,12 +2088,12 @@ Single Methods: filenameの最終ステータス変更時刻を返す. - chmod(mode, path, file...) + chmod(mode, path, file..) ファイルのパーミッションを変更する(cf chmod(2)).変更したファ イル数を返す.fileにはワイルドカードも許す. - chown(owner, group, file...) + chown(owner, group, file..) ファイルの所有者とグループを変更する(cf chown(2)).nilか-1を指 定することによって所有者やグループを現在のまま変えないでおくこ @@ -2135,12 +2135,12 @@ Single Methods: "directory","characterSpecial","blockSpecial","fifo", "link","socket"のうちのいずれか一つである. - unlink(file...) + unlink(file..) ファイルを削除する.ディレクトリの削除にはDir.rmdirを使うこと. fileにはワイルドカードも許す. - utime(atime, mtime, file...) + utime(atime, mtime, file..) ファイルのアクセス時刻をatimeに,修正時刻をmtimeに設定する. atime,mtimeは数またはTimeクラスのインスタンスでなければならな @@ -2389,7 +2389,7 @@ Single Methods: ** Glob(クラス) -ワイルドカードのクラス.ワイルドカードのリテラルは<...>という形式であ +ワイルドカードのクラス.ワイルドカードのリテラルは<..>という形式であ る.正規表現とほぼ同じように使えるが,こちらは機能が少ない.ただし,ワ イルドカードの展開機能がある. @@ -3363,7 +3363,7 @@ Methods: print(i, "\n"); end - これはa, b, c, .. aa, .. az, baまでを各行に出力する. + これはa, b, c, ... aa, ... az, baまでを各行に出力する. 気を付けなければいけないのは,この終了判定は大小関係ではなく @@ -3412,7 +3412,7 @@ Single Methods: 本ドキュメント内で,構造体を表現するためには以下の形式を使う. struct 構造体名 - メンバ ... + メンバ... end しかし,プログラム中でこの形式で構造体を生成するわけではない. @@ -3440,7 +3440,7 @@ Methods: Single Methods: - new(name, member::value...) + new(name, member::value..) nameという名前を持つ構造体を生成する.memberは構造体のメンバを 表す文字列であり,valueはその値である.生成された構造体はメン @@ -3596,10 +3596,10 @@ Methods: 時刻をformat文字列に従って文字列に変換した結果を返す.format 文字列として指定できるものは 以下の通りである. - %A 曜日の名称(Sunday, Monday,...) - %a 曜日の省略名(Sun, Mon,...) - %B 月の名称(January, February,...) - %b 月の省略名(Jan, Feb,...) + %A 曜日の名称(Sunday, Monday,..) + %a 曜日の省略名(Sun, Mon,..) + %B 月の名称(January, February,..) + %b 月の省略名(Jan, Feb,..) %c 時刻表現(cf ctime(3)) %d 十進数での日(01-31) %H 24時間制の時(00-23) @@ -3802,7 +3802,7 @@ PRIMARY : LITERAL | for ITER_VAR in EXPR TERM COMPEXPR end - | protect + | begin COMPEXPR [resque COMPEXPR] [ensure COMPEXPR] |