diff options
author | Yukihiro Matsumoto <matz@ruby-lang.org> | 1995-12-21 00:56:57 +0900 |
---|---|---|
committer | Takashi Kokubun <takashikkbn@gmail.com> | 2019-08-17 22:09:32 +0900 |
commit | fca49a8a69a0f6bb4feae74c6cd0e93d7fac8b36 (patch) | |
tree | 590a6d2ffcfa31212c1595e34a01d9cda56ba308 /spec | |
parent | 8bf1c909dc31fd4bcdc1488cda9fe89a62bc2830 (diff) |
version 0.95v0_95
https://cache.ruby-lang.org/pub/ruby/1.0/ruby-0.95.tar.gz
Thu Dec 21 00:56:57 1995 Yukihiro Matsumoto <matz@caelum.co.jp>
* version 0.95 - fj.sourcesに
* eval.c (rb_eval): rescueのロジックをrb_rescue()に一元化.
Wed Dec 20 19:30:58 1995 Yukihiro Matsumoto <matz@caelum.co.jp>
* Makefile.in: 不要なコンパイルの回避(より完全に).
* class.c (singleton_class_new): `single'->`singleton'
Tue Dec 19 07:14:33 1995 Yukihiro Matsumoto <matz@caelum.co.jp>
* io.c (closed?): IOがcloseされているかどうかを知る述語.
* parse.y (primary): 特異メソッドの引数のlex_stateが不適切.
* lib/tk.rb: tcl->rubyの変換関数の用意.
* ext/extmk.rb.in (install): installの2重コンパイルの回避.
* array.c (range_beg_len): range指定の不適切なエラーを訂正.
* string.c (str_aref): range指定のバグを削除.
* lib/tk.rb (tk_split_list): Tclのリストに対応.
Mon Dec 18 09:58:12 1995 Yukihiro Matsumoto <matz@caelum.co.jp>
* version 0.94
* dln.c (dln_load): HP対応(未確認)
* eval.c (Init_Proc): BlockをProcに改名.
Sat Dec 16 13:46:14 1995 Yukihiro Matsumoto <matz@caelum.co.jp>
* eval.c (rb_eval): retryでイテレータの再実行ができるように.
Fri Dec 15 17:14:30 1995 Yukihiro Matsumoto <matz@caelum.co.jp>
* eval.c: proc:lambdaの親しみやすい別名
Thu Dec 14 17:21:55 1995 Yukihiro Matsumoto <matz@caelum.co.jp>
* eval.c (dyna_var_asgn): イテレータブロック内で最初に初期化された
ローカル変数の有効範囲をそのブロック内に限定.これでlambdaと呼べ
ないことはない.
Wed Dec 13 02:30:58 1995 Yukihiro Matsumoto <matz@caelum.co.jp>
* gc.c: autoloadのマークミス.
* lib/tk.rb: wishからの複数行の戻り値に対応
* lib/tkcomposite.rb: 複合widget
* variable.c (rb_class2path): ICLASSに対応してなかった.
* eval.c (ruby_run): exit(0)のバグ
Sat Dec 9 01:21:24 1995 Yukihiro Matsumoto <matz@caelum.co.jp>
* ext/marshal/marshal.c (dumps|load): 文字列に対する入出力を可能に
した(ただし実はファイル経由なのだ).
Fri Dec 8 18:29:11 1995 Yukihiro Matsumoto <matz@caelum.co.jp>
* ext/marshal/marshal.c: シンボルを一度だけ初期化する.
Thu Dec 7 07:58:50 1995 Yukihiro Matsumoto <matz@caelum.co.jp>
* parse.y (yylex): 第1引数の正規表現の認識にエラーがあった.同時に
状態数を減らした.
* string.c (str_sub): 置換でスキップ幅が大きすぎた.
Wed Dec 6 15:14:23 1995 Yukihiro Matsumoto <matz@caelum.co.jp>
* string.c (str_sub_method): sub/gsub(!なし)は置換が行なわれなかっ
た時,置換前の文字列を返す.
Tue Dec 5 00:55:15 1995 Yukihiro Matsumoto <matz@caelum.co.jp>
* parse.y (yylex): 括弧を省略した時の引数展開の`*'に対応.
* eval.c (ruby_run): EXITハンドラ内での例外に対応.
* bignum.c (big_cmp): BignumとFixnumの比較で落ちる.
Mon Dec 4 14:21:18 1995 Yukihiro Matsumoto <matz@caelum.co.jp>
* parse.y (call_op): コンパイル時の定数式の展開をやめた.労多くし
て益少ないと判断したので.
Thu Nov 30 01:35:15 1995 Yukihiro Matsumoto <matz@caelum.co.jp>
* lib/tk.rb: {Radio,Check}Buttonのvariableの実装.
* eval.c (rb_yield_0): Block.callがネストした時のバグ.
* io.c (f_select): 常に配列3つをふくむ配列を返すように
* lib/tk.rb: fileeventをruby側で実装.
Wed Nov 29 17:53:23 1995 Yukihiro Matsumoto <matz@caelum.co.jp>
* variable.c (rb_ivar_get): selfを常に指定するように.
Tue Nov 14 00:07:29 1995 Yukihiro Matsumoto <matz@caelum.co.jp>
* lib/tk.rb: Tk4.0対応
Mon Nov 13 16:23:32 1995 Yukihiro Matsumoto <matz@caelum.co.jp>
* version 0.93
Thu Nov 9 23:26:01 1995 Yukihiro Matsumoto <matz@caelum.co.jp>
* gc.c (gc_mark): モジュールのMixinのマーク忘れ.
* parse.y (f_arglist): メソッド定義の引数を括弧で括らなくても良い
ようにした.
Wed Nov 8 00:17:51 1995 Yukihiro Matsumoto <matz@caelum.co.jp>
* eval.c (rb_yield_0): 未初期化のローカル変数があった.
* eval.c (rb_eval): pendig signalのチェックをeval実行後に行うよう
にした.でないとシグナルの発生と検出が遠く離れてしまう事がある.
* parse.y: class文のsuperclass部を定数から式に拡張した.
* lib/tk.rb: Tkのほぼ全ウィンドウクラスに対応.キャンバスとテキス
ト上のオブジェクトが残っている.
Tue Nov 7 08:18:37 1995 Yukihiro Matsumoto <matz@caelum.co.jp>
* signal.c (trap): ブロックを指定できるように.
Mon Nov 6 16:44:00 1995 Yukihiro Matsumoto <matz@caelum.co.jp>
* eval.c (f_caller): 呼出元の情報を得る.
* ext/tkutil/tkutil.c: wishのstderr出力を監視することで,エラー処
理を行う.
* ext/tkutil/tkutil.c: wishとの通信部をCで記述.
Sat Nov 4 01:12:59 1995 Yukihiro Matsumoto <matz@caelum.co.jp>
* sample/ruby-mode.el (ruby-calculate-indent): インデントの計算を
もう少しスマートにした(正規表現のチェック,継続行のチェック).
* eval.c (rb_call): 無限再帰を避けるため,関数のネストレベルの制限
を行なう.
* lib/tk.rb: Tkインターフェース.まだ不完全だが.
* eval.c (rb_yield_0): 空のBlockのバグ.
* sample/ruby-mode.el (ruby-calculate-indent): 行末の演算子による
行継続に対応.
Fri Nov 3 12:56:21 1995 Yukihiro Matsumoto <matz@caelum.co.jp>
* eval.c (rb_call): 本体が空の関数の実行にバグ.
* parse.y (var_extend): 文字列の末尾の変数展開のバグ.
* variable.c (rb_gvar_set): traceの評価時にに変数値を与えるように.
* eval.c (f_require): ruby scriptのrequireにbug.
* variable.c (rb_const_get): モジュールのinclude対策.
Thu Oct 19 13:56:06 1995 Yukihiro Matsumoto <matz@caelum.co.jp>
* dln.c (dln_load): HP対応でのtypo.
Wed Oct 18 17:39:39 1995 Yukihiro Matsumoto <matz@caelum.co.jp>
* version 0.92
* object.c (krn_type): オブジェクトの動的な型を返すメソッド.
Tue Oct 17 00:48:18 1995 Yukihiro Matsumoto <matz@caelum.co.jp>
* ruby.c (proc_options): -X オプション.chdirだけを行う.
* re.c (reg_search): 漢字コードを途中で変更できるように.コンパイ
ル時のコードが変更された時にはマッチの直前に正規表現の再コンパイ
ルを行う.定数KCODEから変数$KCODEへ.
* parse.y: ()のなかにcompexprを許す.
* re.c (reg_search): メモリリークを直した.
Fri Oct 13 13:19:19 1995 Yukihiro Matsumoto <matz@caelum.co.jp>
* string.c (str_sub): 文字列置換にバグ.
* string.c (str_strip_bang): 文字列の後ろの長さの調整が行われてい
なかった.
* re.c (reg_search): $&, $1...のはローカルに束縛するようになった.
呼び出したメソッドでのマッチは現スコープの$&などの値に影響しない.
マッチの情報をスコープ外で得たいときには$~を使って束縛情報を持ち
出す必要がある.
Thu Oct 12 00:33:33 1995 Yukihiro Matsumoto <matz@caelum.co.jp>
* re.c (reg_search): String:split, String:indexでは$&, $1...が変化
しないようにした.
* io.c (rb_str_setter): setterの仕様が変更になっていた.
* variable.c (f_trace_var): 第2引数を省略してイテレータとして呼べ
るように.
Wed Oct 11 11:50:59 1995 Yukihiro Matsumoto <matz@caelum.co.jp>
* version 0.91
* variable.c (var_setter): 引数が間違っていた.致命的バグ.
* io.c (pipe_open): $stderrの値が変更されている時にはそちらを
子プロセスのstderrに設定する.
Mon Oct 9 13:06:33 1995 Yukihiro Matsumoto <matz@caelum.co.jp>
* object.c (mod_to_s): モジュール内のモジュールは`::'を使った表現
で表示されるように.
* variable.c (rb_gvar_set): 代入によるループが発生しないように,
trace内での代入ではtraceを評価しない.
* struct.c (struct_equal): structのequal判定にクラスの一致を含めた.
Sat Oct 7 00:18:32 1995 Yukihiro Matsumoto <matz@caelum.co.jp>
* eval.c (rb_eval): defined?の機能を拡張(yieldのチェック,superの
存在など).
Fri Oct 6 12:06:47 1995 Yukihiro Matsumoto <matz@caelum.co.jp>
* version 0.90
* st.c (st_foreach): 要素を削除した時に要素数が変化していなかった.
* hash.c (hash_values): バグ修正.keysを返していた….
* parse.y (call_op): defined? の引数では定数の畳み込みを行わない
(チェックする前にコンパイルエラーになっては困る).
* スコープ生成の一部見直し.
Thu Oct 5 00:29:43 1995 Yukihiro Matsumoto <matz@caelum.co.jp>
* 関数とクラスの命名規則を変更した.関数名,変数名の全面書き換え.
* gc.c (looks_pointerp): ヒープチェックの高速化.
* struct.c (Fstruct_aset): 構造体に対する`[]='.
(struct_set): 構造体メンバに対する代入.
Wed Oct 4 09:54:07 1995 Yukihiro Matsumoto <matz@caelum.co.jp>
* version 0.89
* eval.c (Frequire): ダイナミックロードのエラーチェックを厳しく.
* struct.c: structの構造を完全に書き換えた.以前は順序付きの
id->valueの連想配列であったが,今度は構造体毎に新しいクラスを生
成するようにした.
* parse.y: `::'の意味をAssocの生成からクラス(モジュール)内の定数ア
クセスへ変更.
* assoc.c: なくす.
Tue Oct 3 13:31:08 1995 Yukihiro Matsumoto <matz@caelum.co.jp>
* variable.c (Ftrace_var): trace_var, 大域変数への書き込みhookを設
定する.
* variable.c: global_entryの構成を書き換えた.これでtrace_varを実
装できる.
* file.c (Ffile_stat): "&"で直前のfstatの結果も参照できるように.
Fri Sep 29 14:15:13 1995 Yukihiro Matsumoto <matz@caelum.co.jp>
* version 0.88
* dln.c (dln_load): AIXとHPに対応したコードを入れた(動作は未確認).
* ext/extmk.rb.in: 必要に応じて,定数EXTLIBを定義するように.
* dln.c (dln_load): dln独立に書き換える.将来の拡張用.
(load_1): dln_a_outにおいてソースコードでライブラリを明示的にロー
ドする必要がないように変更した.
Thu Sep 28 13:31:37 1995 Yukihiro Matsumoto <matz@caelum.co.jp>
* sample/ruby-mode.el: もっとましなhilit19対応(正規表現).
Wed Sep 27 04:12:44 1995 Takahasi Mamoru <taka@soum.co.jp>
* sample/test.rb: echoで-nを使わないように(SysV対策).
* ext/extmk.rb.in: sub -> sub!
Tue Sep 26 19:12:42 1995 Yasuo OHBA <jammy@csg.mes.co.jp>
* dln.c (dln_find_1): `.', `..'から始まるパスに対応した.
Mon Sep 25 12:33:03 1995 Yukihiro Matsumoto <matz@caelum.co.jp>
* version 0.87
Sat Sep 23 10:00:18 1995 Yukihiro Matsumoto <matz@caelum.co.jp>
* eval.c (Fmod_modfunc): メソッドをprivateにし,同時に特異メソッド
も定義するメソッド.パッケージ的使い方のモジュール用.
Fri Sep 22 11:02:44 1995 Yukihiro Matsumoto <matz@caelum.co.jp>
* lib/find.rb: findを提供するライブラリ
* variable.c (rb_define_variable): hookの設定を分離.
(add_hook): 1変数に対して複数のhookを設定できるように.
Thu Sep 21 00:22:11 1995 Yukihiro Matsumoto <matz@caelum.co.jp>
* string.c (Fstr_frozen): 文字列が更新不可かどうかをチェックする述
語メソッド.
* hash.c (Fhash_aset): keyが文字列の時,キーの内容が変化しないよう
に,dupしてfreezeする.
Wed Sep 20 16:12:44 1995 Yukihiro Matsumoto <matz@caelum.co.jp>
* version 0.86
* ext/extmk.rb.in (have_header): キャッシュにバグ.
* ext/extmk.rb.in (have_library): 引数の順序が変わった.
Thu Sep 14 18:00:59 1995 Yukihiro Matsumoto <matz@caelum.co.jp>
* object.c (obj_is_instance_of): is_member_ofから名称変更.
Wed Sep 13 15:44:35 1995 Yukihiro Matsumoto <matz@caelum.co.jp>
* string.c (Fstr_tr_bang): 範囲外の文字に対する変換バグ.
Tue Sep 12 14:27:58 1995 Yukihiro Matsumoto <matz@caelum.co.jp>
* file.c (Sfile_expand_path): expand_file_name -> expand_pathに名
称変更.
* enum.c (Fenum_member): includes? -> member? に名称変更.
* string.c (Fstr_each_byte): StringはByteArrayであるという基本に戻っ
て,eachの定義をeach_byteに変更した.今までのeachはeach_lineでア
クセスできる.
Mon Sep 11 18:31:17 1995 Yukihiro Matsumoto <matz@caelum.co.jp>
* file.c (cache_stat): ファイル名として"&"を指定すると直前の
stat(2)の結果を再利用するように.
Fri Sep 8 14:18:51 1995 Yukihiro Matsumoto <matz@caelum.co.jp>
* ruby.texi: `!', `?'に対応してアップデート.
* parse.y: defined -> defined?
* file.c: FileOpの一文字メソッドをなくす.一文字テストはtestメソッ
ドにまかせる.
* parse.y (yylex): 変数名の後ろに`?'も許す.述語メソッドの後ろに
`?'を追加する.
Thu Sep 7 20:01:33 1995 Yukihiro Matsumoto <matz@caelum.co.jp>
* string.c: 文字列の中身を更新するメソッドの名前の終りに`!'を付加.
`!'の無いバージョンも用意した.
* parse.y: 変数名の後ろに`!'を許す.
Wed Sep 6 14:12:19 1995 Yukihiro Matsumoto <matz@caelum.co.jp>
* version 0.85
* string.c (Fstr_dup): 文字列の複製を作る
(Fstr_freeze): 文字列の更新不可属性を設定できるように.
(Fsub/Fgsub): $_の内容をdupしてから置換を行うように.
* ruby.h (CLONESETUP): flagsの状態もコピー
Tue Sep 5 01:27:50 1995 Yukihiro Matsumoto <matz@caelum.co.jp>
* sample/test.rb: 失敗の検出を厳しく.
Fri Aug 25 14:31:02 1995 Yukihiro Matsumoto <matz@caelum.co.jp>
* process.c (Ffork): イテレータとしても動作するように.
* version 0.84
* signal.c (sig_beg): ハンドラが設定されている時には再設定しない.
* ext/extmk.rb.in (create_makefile): shared objectのリンクの際に
`-l'オプションを指定するように.
* signal.c (trap): `EXIT'で終了処理を行う設定が出来る.
Wed Aug 16 00:13:22 1995 Yukihiro Matsumoto <matz@caelum.co.jp>
* signal.c (sig_beg): デフォルトではbegin節の中でだけSIGINTを捕捉
するように変更.
* io.c (io_ctl): fcntlを持たないシステムにも対応.
* 各ディレクトリに分散していたMANIFESTをまとめた.拡張モジュール毎
には必要.
* string.c (Sstr_new,str_sub,Fstr_crypt): 引数を自動的に文字列に変
換するように.
Sat Aug 12 00:44:02 1995 Yukihiro Matsumoto <matz@caelum.co.jp>
* string.c (Fstr_crypt): PD cryptを用意した.
Fri Aug 11 14:37:03 1995 Yukihiro Matsumoto <matz@caelum.co.jp>
* assoc.c (Fassoc_clone): assocもcloneできるように.
* io.c: マクロREAD_DATA_PENDINGの定義を変更(Linux対応)
* io.c (io_fptr_finalize): ftprの開放時の処理を指定できるように.
Wed Aug 9 16:52:41 1995 Yukihiro Matsumoto <matz@caelum.co.jp>
* eval.c (rb_provided): 複数のfeatureをロードすると無限ループに落
ちるという単純な(しかし凶悪な)ミス.
* ext/extmk.rb.in (install): dlopen対応を行った.今までdlnにしか十
分に対応していなかった.
Tue Aug 8 14:17:06 1995 Yukihiro Matsumoto <matz@caelum.co.jp>
* version 0.83
Mon Aug 7 12:47:41 1995 Yukihiro Matsumoto <matz@caelum.co.jp>
* parse.y: resque -> rescue.恥ずかしいがtypoを残しておくわけには
いかないよなあ.なんで今まで気がつかなかったのか….
Thu Aug 3 18:18:05 1995 Yukihiro Matsumoto <matz@caelum.co.jp>
* missing/nt.c: NT移植用の関数群をまとめた.
* variable.c (rb_const_get): また例外を発生するようにした.defined
がある以上例外を発生させない理由がないので(例外が発生した方がタ
イプミスの検出などの点で有利).
* variable.c (Fautoload): autoloadを実装.今度は使えるか.
Mon Jul 31 15:44:21 1995 Yukihiro Matsumoto <matz@caelum.co.jp>
* parse.y (arg_ambiguous): 第1引数のあいまいさを警告(-vオプション
で有効).
* eval.c (rb_eval): `-v'オプションをつけて`def'が呼ばれると不必要
なエラーメッセージが出た.
* parse.y (yylex): メソッドの第1引数の判定をもうちょっと賢くした.
Fri Jul 28 19:04:43 1995 Yukihiro Matsumoto <matz@caelum.co.jp>
* parse.y (yylex): `+/-/['の直前に空白が来るかどうかで動作を変更し
た(混乱のもとか?)
Wed Jul 26 09:21:23 1995 Yukihiro Matsumoto <matz@caelum.co.jp>
* version 0.82a
* sprintf.c (Fsprintf): `%s'で'\0'を含む文字列に対応.
* pack.c (Fpck_pack): packの要素確保のバグ.
* eval.c (Floop): 無限ループのイテレータ.
* io.c (next_argv): 存在しないファイル名が指定された時のエラー処理
が行われていなかった.
Mon Jul 24 17:37:34 1995 Yukihiro Matsumoto <matz@caelum.co.jp>
* version 0.82
* ext/extmk.rb.in (install): 拡張モジュールをstatic linkする場合は
そのモジュールが既にrequireされたのと同じようにfeatureを設定する.
これで拡張モジュールの機能が必要な時には(static linkされているか
どうかにかかわらず)requireすればよくなる.
* eval.c (Frequire): `$"'に格納する文字列をフルパスでなくフィーチャ
名とする.rubyスクリプトをロードした時には`.rb',オブジェクトを
ロードした時には`.o'をフィーチャ名に付加する.lispのrequireと
provideの働きに(少し)近い.
Thu Jul 20 12:50:05 1995 Yukihiro Matsumoto <matz@caelum.co.jp>
* Makefile.in (test): make testができるように.
* struct.c (struct_new): typo.
* eval.c (rb_eval): `defined'を追加.メソッド/変数/定数の定義状態
を知る事が出来る.
Wed Jul 19 18:04:01 1995 Yukihiro Matsumoto <matz@caelum.co.jp>
* version 0.81
Mon Jul 17 14:53:51 1995 Yukihiro Matsumoto <matz@caelum.co.jp>
* variable.c (rb_const_get): 未初期化のCONSTANTの値をnilにした.し
かし,今後また例外に戻す可能性はある.要はoptionalなクラス/モジュー
ルが存在するかチェックしたいだけなんだな.
* st.c (int): grow_factorを固定にした(大嶋さんのマシンに対応).
Fri Jul 14 00:48:40 1995 Yukihiro Matsumoto <matz@caelum.co.jp>
* ext/extmk.rb.in: キャッシュのバグを修正.
* parse.y (var_extend): #{$数字}に対応した.
* dln.c (dln_load_1): `Init_FILENAME'だけを有効に.`init_*'は今後
実行しない.
* ext/etc/etc.c : Etcモジュールを拡張モジュールとして分離.実はNT
対応への布石だったりするかもしれない.
Tue Jul 11 17:12:48 1995 Yukihiro Matsumoto <matz@caelum.co.jp>
* gcc -Wallで出たwarningを元にソースを変更.
* signal.c (trap): typo.
Fri Jul 7 10:08:51 1995 Yukihiro Matsumoto <matz@caelum.co.jp>
* version 0.80
* ruby.texi: texinfo documentを提供.specとruby.1は無くなった.
* signal.c (Ftrap): 割込み禁止中の例外発生に対応.
* eval.c (Flambda): Blockオブジェクトを返す.Block.newと同義.
Thu Jul 6 00:35:03 1995 Yukihiro Matsumoto <matz@caelum.co.jp>
* signal.c (Ftrap): SIG_DFLの処理を変更.SIGINTへのデフォルトハン
ドラを用意(例外を発生する).
* file.c (Sfile_expand_fname): パス名を絶対パスに展開するメソッド.
(Sfile_basename): basenameを得るメソッド.拡張子も外せる.
(Sfile_dirname): basenameの反対.
* eval.c (rb_call): argument評価中の例外発生に対応.
* file.c (Ftest): `M', `A', `C'を追加.
Tue Jul 4 12:36:33 1995 Yukihiro Matsumoto <matz@caelum.co.jp>
* file.c (Ftest): ファイルテスト用メソッド.
* ruby.c (proc_options): `-r'オプションを追加.
* parse.y (f_args): デフォルト引数を追加.
* eval.c (rb_call): 該当する引数が無い時,rest引数の値をnilに.
* numeric.c (num_equal): 数値以外との比較で例外が発生していた.
FALSEを返すように.
* eval.c (masign): 多重代入のrest部の動作がおかしかった.
Sat Jun 17 01:03:16 1995 Yukihiro Matsumoto <matz@caelum.co.jp>
* parse.y (gettable): 未初期化のローカル変数の参照(独立した識別子)
は正式にメソッド呼び出しとした.
* parse.y (read_escape): tokenbufを使わないように修正.それにとも
ない,`\C-x',`\M-x'などのエスケープ表現を復活.これでドキュメン
トと実際の処理系が一致した.
Thu Jun 15 15:42:00 1995 Yukihiro Matsumoto <matz@caelum.co.jp>
* re.c (re_regcomp): cacheのチェックを改善.
Mon Jun 12 18:50:51 1995 Yukihiro Matsumoto <matz@caelum.co.jp>
* version 0.79
Sat Jun 10 00:25:01 1995 Yukihiro Matsumoto <matz@caelum.co.jp>
* re.c (re_regcomp): cache判定に`$='の値も反映させた.
* sample/test.rb: test suite作成.
Fri Jun 9 15:58:34 1995 Yukihiro Matsumoto <matz@ix-02>
* re.c (re_regcomp): cacheの判定が間違っていた.
Fri Jun 9 00:01:35 1995 Yukihiro Matsumoto (matz@dyna)
* eval.c (rb_yield): block構造体に初期化していないメンバ(iter)があっ
たのでイテレータのネストが正しく動作しなかった.
Thu Jun 8 00:59:03 1995 Yukihiro Matsumoto (matz@dyna)
* re.c (=~): String以外との比較がFALSEを返すように(例外を発生して
いた).
* extmk.rb.in: 判定した値をファイルにキャッシュするようにした.
* assoc.c (to_a): to_aメソッドが再定義されていなかった.
* eval.c (rb_eval): 初期化されていないローカル変数へのアクセスを引
数の無いメソッド呼び出しと解釈する.ただし,(現状では)メソッドが
定義されていない場合,エラーにせず変数未初期化のwaringを出して
nilを返している.「ruby -pe print」などが実行できるという意味で
はありがたいこの仕様は,しかし今後の検討が必要である.-- メソッ
ド呼び出しとするのを止めるか(以前の仕様),いつもメソッド呼び出し
とする(未定義ならばエラー)か,今の仕様で行くか.
* eval.c (rb_eval): 初期化されていないローカル変数へのアクセスで
(evalなどで)初期化された事が分かった時には以後初期化されたローカ
ル変数とみなす.
Wed Jun 7 11:58:12 1995 Yukihiro Matsumoto <matz@ix-02>
* eval.c (rb_fail): 例外処理後も`$!'をクリアしないように.
(rb_fail): `$!'変数に最後に改行を追加しない.
* io.c (Fprint): privateメソッドに変更.引数を取らない時の動作を変
更(`$_'を出力する).
(Fio_print): 出力先指定のprintメソッド.
(Fio_printf): 出力先指定のprintfメソッド.
* parse.y: not演算子の追加.優先順位の低い`!'演算子.
Mon Jun 5 19:00:55 1995 Yukihiro Matsumoto <matz@ix-02>
* version 0.78
Fri Jun 2 17:52:03 1995 Yukihiro Matsumoto <matz@ix-02>
* ruby.c (proc_options): -Iオプションで`$:'への追加される順番を修
正した.
Fri Jun 2 00:36:34 1995 Yukihiro Matsumoto (matz@dyna)
* parse.y: while修飾子の動作を通常のwhileと同じにした.ただし,
begin式へのwhile修飾子だけはdo..while型のループとなる.
Wed May 31 18:36:30 1995 Yukihiro Matsumoto <matz@ix-02>
* version 0.77
Mon May 29 18:39:37 1995 Yukihiro Matsumoto <matz@ix-02>
* ext/extmk.rb.in (install): 拡張モジュールもインストールできるよ
うに.
Fri May 26 14:43:01 1995 Yukihiro Matsumoto <matz@ix-02>
* process.c (Fsystem): 戻り値をサブプロセスの失敗/成功を表す真偽値
にした.終了ステータスは`$?'で得る.
Tue May 23 10:58:11 1995 Yukihiro Matsumoto <matz@ix-02>
* string.c (Fstr_upto): 無限ループに陥らないように.
* parse.y (cond): `||'などの右辺に制御式が書けるように,条件式がか
ならずしも値を持たなくても良いようにした.
* ext/marshal/marshal.c: オブジェクトの読み書きをメソッドの再定義
でコントロールできるように.インスタンスが`_dump_to'というメソッ
ドを定義している時はそちらを使うように.
* ext/extmk.rb.in: static linkも設定できるような仕様にした.
ext/Setupというファイルにディレクトリ名を記述するとそのディレク
トリに存在するモジュールはstatic linkされる(はず).
* eval.c (rb_eval): `..'を文法に組み込み,`..'と`...'の動作をperl
に合わせた.
Sat May 20 01:22:48 1995 Yukihiro Matsumoto (matz@dyna)
* io.c (select): timeout時と割込み時の動作の明確化.
Co-authored-by: Takahasi Mamoru <taka@soum.co.jp>
Co-authored-by: Yasuo OHBA <jammy@csg.mes.co.jp>
Diffstat (limited to 'spec')
-rw-r--r-- | spec | 3538 |
1 files changed, 0 insertions, 3538 deletions
@@ -1,3538 +0,0 @@ -.\" spec - -*- Indented-Text -*- created at: Tue May 25 15:18:26 JST 1993 - -* Ϥ - -RubyϡUNIXǼڤ˥֥ȻظץߥפȤ˾ -¸뤿ޤ줿ΤɬפȻפ줿: - - * ʸˡ䵡ǽñǤ롥 - * ֥ȻظץߥݡȤ뵡ǽ - ĸȤ߷פƤ롥 - * 饦ɥबû(ץǤ) - * OS(UNIX)εǽñѤǤ롥 - * ץȸȤƻȤ롥 - * ϤfreeǤ롥 - -ʤɤǤ롥֥ȻظȤưŪǤSmalltalkC++ʤɤ -ξΰƤϤ뤬ä˼ڤʥץߥȤ˷ -ƤꡤʾξƤΤǤϤʤäץȸ -ǤPerl Tcl˥֥Ȼظǽɲäƥ¸ߤ뤬 -ϡּڤ˥ץߥפȤƤϤƤ⡤դ˥ -Ȼظǽääơξ -߷פ줿Rubyħ: - - * ץǤ롥 - * ñ㳰ξʤʸˡ - * ʬʥ֥Ȼظǽġ - * Ǥ䤹(黻ҷʤ) - * ١쥯롥 - * 㳰ǽ롥 - * ʬ˶Ϥʥ饹Ȥ߹ޤƤ롥 - * OS뵡ǽ롥 - * ĥ䤹 - -ʤɤǤ롥RubyshPerlΤäƤͤˤȤäƤξQˤʤ뤿ä -Τǡθ줫μʰܹԤǽǤȻפ롥ץޤ -RubyΥ֥ȻظǽˤĤƳؤ٤С궯ϤʤȤǤ褦 -ʤ - -Cǥ饹åɤҤɲä뤳ȤRuby˶Ϥˤ -뤳ȤǤ롥ΥץåȥեǤRubyưŪ˥֥ȥե -Ǥ뤷ǤʤƤRubyƥѥ뤷Ȥ߹ߥ -ɲäΤưפǤ(PerlʤɤϤ뤫ưפǤ) - -* Lexical structure - -ߤrubyμϥ饯åȤȤASCIIѤ롥rubyʸ -ʸ̤롥̻ҤǤʤǤդΤȤ˶ʸ -Ȥ롥ʸϥڡ(space)(tab)ľ(vertical -tab) CR(carriage return)(form feed)Ǥ롥(newline) -˼³ˤ϶ʸȤơʳǤʸζڤȤƲ -ᤵ롥 - -̻Ҥϱʸ("_"ޤ)Ϥޤꡤѿ³ΤǤ롥ruby -̻ҤŤϤʤߤμϼ̻ҤȤƥޥХȥ -(EUC,SJIS)̤ʤ - -Хѿ̾"$"³̻Ҥޤϵ1ʸѿ -"@"³̻ҡˤʸǻϤޤ뼱̻ҡѿ̾Ͼʸ -ǻϤޤ뼱̻ҤǤ롥å̾ˤñʤ뼱̻ҤѤ(å̾ -ʸǤ⾮ʸǤϤ) - -** - -ץȸνˤʤ餤ʸʸɽ(?#)ʳ`#' -ޤǤϥȤȸʤ - -** ͽ - -ͽϰʲ̤Ǥ - - alias def if retry while - and else in return yield - begin elsif module self __END__ - break end nil super __FILE__ - case ensure or then __LINE__ - class fail redo undef - continue for resque when - -ͽϥ饹̾å̾ѿ̾ʤɤѤ뤳ȤϤǤʤ - -** ڤʸ - -ʸʤɤΥƥʳξζʸ(֤ȥڡ)Ӳ -(\n)ڤ국Ȥʤ롥˲Ԥ - - a + - b - -Τ褦˹ԤǽꡤιԤ³Ȥ(Ǹʸ -黻Ҥ뤤`,'Ǥ)ζڤȤǧ롥 - -* ץ - -: - - print "hello world!\n" - -ץϼ¤٤ΤǤ롥ȼδ֤ϥߥ(`;')ޤϲ -ԤǶڤ롥 - -* - -RubyǤnilʳɾ롥CPerlʤɤȤϰۤʤꡤ0 -""(ʸ)ϵȤɾʤΤǵĤ뤳ȡ - -** ʸ - -֥륯(`"')dz줿ʸϥХåå³ʸʲ -Τ褦˲ᤵ롥 - -Хåå嵭ˡ - - \t (0x09) - \n ʸ(0x0a) - \r ʸ(0x0d) - \f ڡʸ(0x0c) - \b Хåڡ(0x08) - \a ٥(0x07) - \e (0x1b) - \# ʸ`#'Τ - \nnn 8ʿɽ(n0-7) - \xnn 16ʿɽ(n0-9,a-f) - \cx ȥʸ(xASCIIʸ) - \x ʸxΤ - -ޤ`#'ˤѿŸԤ롥륯(`'')dz -ʸϡ`\\'(Хåå夽Τ)`\''(륯) -ơʸȤβԤʤ - -ʸʸ֥ȤΤǡʸƤ -Ƥ⡤ȤȤʸѤʤ - -** ޥɽ - -RubyǤshΤ褦˥ޥɤμ¹Է̤ʸƥΤ褦˻ȤȤ -Ǥ롥``ǰϤޤ줿ʸϡ֥륯ȤƱͤ˥Хåå嵭 -ˡβѿŸԤʤ줿塤ޥɤȤƼ¹Ԥ졤μ¹Է -ʸȤͿ롥ޥɤɾ뤿Ӥ˼¹Ԥ롥 - -** ɽ - -`/'ǰϤޤ줿ʸɽɽ`/'θʸ`i'Ϳ -줿ˤϡɽϥޥåʸʸζ̤ʤ - - ^ Ƭ - $ - . Ǥդ1ʸ - \w ѿ[0-9A-Za-z_]Ʊ - \W ѿ - \s ʸ[ \t\n\r\f]Ʊ - \S ʸ - \d [0-9] Ʊ - \D - \b 춭ʸ(ʸ饹) - \B 춭ʸ - \b (0x08)(ʸ饹) - [ ] ʸ饹 - * ľɽ0ʾη֤ - + ľɽ1ʾη֤ - {m,n} mnη֤ - ? 0ޤ1 - | - ( ) ɽޤȤ - -¾ʸƱХåå嵭ˡѿŸͭǤ롥 - -** ѿŸ - -֥륯(`"')ǰϤޤ줿ʸޥʸɽ -ӥ磻ɥɼǤ`#{ѿ̾}'ȤѿƤŸ -ȤǤ롥ѿѿ(`$',`@')ǻϤޤˤ`#ѿ̾'Ȥ -ǤŸǤ롥ʸ`#'³ʸ `{',`$',`@'ǤʤСΤޤ -ʸ`#'ȤƲᤵ롥 - -** ͥƥ - - 123 - -123 (Ĥ) - 1_234 (10ʿ`_'ޤळȤǤ) - 123.45 ư - 1.2e-3 ư - 0xffff 16 - 0377 8 - ?a ʸ`a'Υ(97) - ?\C-a ȥaΥ(1) - ?\M-a aΥ(225) - ?\M-\C-a -ȥaΥ(129) - - :ܥ ̻/ѿ̾/黻ҤȰабapplyʤ - ǥåɤꤹʤɤ˻Ȥ - -?ɽǤƤΥХåå嵭ˡͭǤ롥 - -** ѿ - -Rubyѿϥ(ͭϰ)ȼ̿(ͭ)ˤä4ʬव졤 -μѿ̾κǽΰʸǷꤵ롥̾ѿ2ʸܰʹߤ -ѿޤ`_'Ǥ뤬ƥѿΰϡ`$'+1ʸεפȤ -ѿ롥ѿ̾Ĺ˴ؤ̤¤Ϥʤ - -ѿΥפ˴ؤ餺ƤʤѿȤͤnil -Ǥ롥μѿɬפʤ - -*** Хѿ - -: - - $foobar - $/ - -`$'ǻϤޤѿΥפϥХǤꡤץΤɤǤ -ȤǤ롥μ̿ϥץμ̿ - -*** ѿ - -: - - @foobar - -`@'ǻϤޤѿϥѿǤꡤΥ饹ޤϥ֥饹 -åɤ黲ȤǤ롥פϥåǤꡤμ̿ϥ֥ -Ȥμ̿ - -*** 饹 - -: - - FOOBAR - -ʸǻϤޤ뼱̻ҤؤΥǤꡤǽ줿饹 -ƤΥ֥饹ΥǻȤǤ롥 -Ƥ⥸塼롼ɤ뤳ȤˤäƹԤʤ롥ؤ -ϥȥåץ٥롤ʤåɤǤ٥ǤΤ߲ǽǤ롥 -ϥ饹֤ͤͭ졤ͤѹ뤳ȤǤʤ -(㳰ȯ)饹μ̿ϥ饹μ̿ - -饹ϼưŪΤǡ饹̾Ǥ롥 - -*** ѿ - -: - - foobar - -ʸޤ`_'ǻϤޤ뼱̻ҤϥѿؤΥǤ롥 -ʤѿͤnilǤ - -ѿΥפϥ֥åϰ(åǤϥåɤν -ޤǡ饹/⥸塼ǤϤνޤ)Ǥ롥̿⤽ -֥åνޤ(ȥåץ٥Υѿϥץνλޤ) -롥 - -*** ѿ - -̾ѿʳ˵ѿȸƤФüѿ4Ĥ롥 - - self | ߤΥåɤμ¹Լ - nil | Nil饹ͣΥ(ɽ) - __FILE__ | ץȤΥե̾(ʸ) - __LINE__ | ߤιֹ() - -εѿˤäƤͤѹ뤳ȤϤǤʤ -ѿؤ㳰ȯ롥 - -** - -: - - [1, 2, 3] - -Array饹ΥǤ롥뼰ϰʲη -롥 - - `[' , .. `]' - -줾μɾ̤ޤ֤ǿ0ζ -뤿ˤ϶ - - `[' `]' - -Ѥ롥 - -** Ϣ - -: - - {1=>2, 2=>4, 3=>6} - -ϢȤǤդΥ֥Ȥ(ź)ȤƻǤ롥Ruby -ϢHash(Ϣ)饹ΥǤ롥ܺ٤ϥ饹 -HashιȤ줿ϢϢϰʲηǤ롥 - - `{' `=>' .. `}' - -줾μɾ̤ͤȤϢ֥Ȥ֤ -ǿ0Ϣ뤿ˤ϶Ϣ - - `{' `}' - -Ѥ롥Ǥ1İʾ夢硤ۣǤʤ`{', `}'ϾάǤ롥 - -** åɸƽм - -: - - foo.bar() - foo.bar - bar() - -֥Ȥ˥åŪʹʸåǤꡤδ -ܷϰʲ̤Ǥ롥 - - 1 `.' å̾ `(' 1.. [`,' `*' n ]`)' - -1ɾ륪֥ȤΡ̻ҤǻꤵåɤƤ -ФֺǸΰ`*'³(ñ)Ǥ硤μɾ -(ǤʤѴ)ŸơȤɲä롥 - -åǡ쥷Фselfξ硤쥷Фά̾Υץ -ߥˤؿΤ褦ʷǥåɤƤӽФȤǤ롥 - -åɸƤӽФΰμγ̤άǤ뤬Ȥʤ뼰 -ʸޤͽǻϤޤϡ̤ͥδطͽ̤η̤ -ʤ礬롥 - - (, [, {, /, +, -, if, while - -ɤΤ褦ɾ뤫ۣʾˤϳ̤Ĥ - -㡧 - foo bar+baz # åɸƤӽФfoo(bar+baz) - foo (1+2)*5 # åɸƤӽФ(foo(1+2)) * 5 - foo 1 # åɸƤӽФfoo(1) - foo -1 # ѿfoo - 1 - -쥷ФꤷåɸƤӽФǤϤξ1Ĥʤˤ -άǤ(쥷Фꤷʤ硤̤Ĥʤȥѿ -ȤȤƲᤵ) - -å̾ȤƤǤդμ̻ҤѤ뤳ȤǤ롥ǽʸʸ -Ǥ⾮ʸǤʤѿ̾Ȥϼ̻Ҥ֤̾㤦ΤǽʣƤ -ʤ - -饹ModuleƤå(public,private)ǥåɤθƤӽ -椹뤳Ȥ롥privateǻꤵ줿¤줿åɤϴ -ǤƤӽФȤʤ - -** SUPER - -: - - super - super(1,2,3) - -åüʥȤƥѡ饹ΥåɤθƤӽФ -롥ηϥåɤ˥ѡ饹Ѥ뤿 -˻Ȥ - - super - -ߤΥåɤͿ줿Τޤޥѥ饹Ʊ̾ΥåɤƤ -ФȤͿ줿ѿͤѹƤ⡤ϤΤϸΰ -ͤǤ롥 - - super`(' .. `)' - -ȤȤ˥ѡ饹Ʊ̾ΥåɤƤӽФֺǸΰ -`*'³̾ΥåɸƤӽФƱͤŸϤ롥 - -** - -: - - foo = bar - foo[0] = bar - foo.bar = baz - -ѿʤɤͤꤹ뤿Ѥ롥ϱ黻ҷȤ -Ƥ뤬åɤǤϤʤΤǺ뤳ȤϤǤʤդˤʤ뤳 -Τϰʲ3μǤ롥 - -ѿ(`$'̻ | `@'̻ | ̻) - - ѿ `=' - -ѿؤϱդμɾ줿ͤդǻꤵ줿ѿ -롥 - -([..]) - - 1`[' 2.. `]' `=' n - -ȼؤϡ1ɾ륪֥Ȥˡ2鼰n -ޤǤȤơ"[]=" ȤåɤƤӽФ - -°(`.'̻) - - 1 `.' ̻ `=' 2 - -°(ʤΥåɸƤӽФ)ؤϡ1ɾ -֥(쥷Фά줿`self')Фơ"̻="Ȥ -åɤ 2ȤƸƤӽФ - -** - -: - - foo += 12 - -ͤΤΤ˱黻ä뤿˼롥 - - 1 op= 2 # 1ǽǤʤФʤʤ - -ηŪˡּ1 = 1 op 2פƱͤɾ롥1 -1ɾʤΤǡ1Ѥϡּ1 = 1 op 2 -Ȥưۤʤ̤Ȥʤ롥opȤƻȤ黻Ҥ - - +, -, *, /, %, **, &, |, ^, <<, >> - -11Ǥ롥黻Ҥ`='δ֤˥ڡƤϤʤ - -** ¿ - -: - - foo, bar, baz = 1, 2, 3 - foo, = list() - foo, *rest = list2() - -ƱʣѿԤʤȤǤ롥ηϰʲ̤Ǥ롥 - - `,' [ `,'..] [`*' ]= [, ..] - -դˤ3μ롥դμĤʤϡ -Ȥ(ɬפʤto_aåɤѴ)Ǥ줾캸 -դ롥ʳξˤϡ줾μͤդ롥 -դοȱդǤοʤˤʤѿˤ nil졤 -;äǤ̵뤵롥¿κǸǤ`*'硤Ĥ -ưȤ롥 - - foo, bar = [1, 2] # foo = 1; bar = 2 - foo, bar = 1, 2 # foo = 1; bar = 2 - foo, bar = 1 # foo = 1; bar = nil - - foo, bar, baz = 1, 2 # foo = 1; bar = 2; baz = nil - foo, bar = 1, 2, 3 # foo = 1; bar = 2 - foo,*bar = 1, 2, 3 # foo = 1; bar = [2, 3] - -¿ͤ(Ѵ줿)դǤ롥 - -** 黻Ҽ - -: - - 1+2*3/4 - -ץߥؤΤ˰ΥåɸƤӽФ湽¤ϱ黻ҷ -Ȥ롥Rubyˤϰʲˤ黻Ҥ롥ΤΤۤɷ̤ -Ʊα黻Ҥη̤ƱǤ롥 - - [](), []=() - -(unary) +(unary) ! ~ - ** - * / % - + - - << >> - & - | ^ - > >= < <= - <=> == != =~ !~ - && - || - .. ... - :: - =() (+=, -=,..) - and - or - if while - -ۤȤɤα黻ˤϥåɸƤӽФȤƲᤵ(饹˺ -Ǥ)ǤʤüʤΤ롥Ǥʤü黻 -Ҥ - - =(), ...(ϰ), !(), &&(), and, |(), or, - if, while - -9Ĥα黻ҤȤȤȤ߹碌ˤʤ !=, !~ Ӽ黻 -Ǥ롥 - -Ǥü黻Ұʳα黻ҷϰʲΤ褦ʥåɸƤӽФȸ -ʤ롥 - -ñ黻(+, -, ~) - - 1. 黻 () - -(Ϣޤ)Ǥλ(1 `[' 2.. `]') - - 1. `[]' (2..) - -Ǥ( 1 `[' 2.. `]' `=' n) - - 1. `[]=' (2.., n) - -ʳ2黻(1 黻 2) - - 1. 黻 (2) - -ϤޤǤ⤽ΥåɸƤӽФȤƲᤵȤ -ǡrubyץǤҤȤ櫓ǤϤʤ - -** ̤ˤ륰롼ԥ - -: - - (1+2)*3 - -ϳ̤ˤäƥ롼ԥ뤳ȤǤ롥 - - `(' `)' - -** IF - - if 1 [then] - .. - [elsif 2 [then] - .. ].. - [else - .. ] - end - -ȽǼRubyifelse ifǤelifǤʤelsififϢ³Ԥʤ -Ȥդ뤳ȡ郎ΩƼ¹Ԥ֤ͤ¹Ԥʤä -ͤnil - -ifξȽμǤʸɽƥϼ$_=~ ƥפ -άǤȤߤʤ롥 - -** IF - - if - -、(if)μԤ뼰äɾ롥ưбif -ƱͤǤ롥ifҤΤĤͤϾ郎Ωˤϼ͡ -ΩξˤnilǤ롥 - -** CASE - - case 0 - [when 1 [, 2].. [then] - .. ].. - [else - .. ] - end - -ʬCswitchPascalcase˻Ƥ롥breakæФ뤳Ȥ -μ˷³뤳ȤʤΤա - -ΰפϡּn =~ 0]ǹԤʤ롥Ĥޤꡤ - - case expr0 - when expr1, expr2 - stmt1 - when expr3, expr4 - stmt2 - else - stmt3 - end - -ϰʲifȤۤǤ롥 - - _tmp = expr0 - if expr1 =~ _tmp || expr2 =~ _tmp - stmt1 - elsif expr3 =~ _tmp || expr4 =~ _tmp - stmt2 - else - stmt3 - end - -** AND - - 1 `&&' 2 - 1 `and' 2 - -1ɾͤ(nilʳ)ǤС2ɾ롥`and'ͥ -̤㤤̾Ǥ롥 - -andξդμǤʸɽƥϼ$_=~ ƥפξά -Ȥߤʤ롥 - -** OR - - 1 `||' 2 - 1 'or 2 - -1ɾͤǤС2ɾ롥`or'̤ͥ㤤 -̾Ǥ롥 - -orξդμǤʸɽƥϼ$_=~ ƥפξά -Ȥߤʤ롥 - -** ϰϻ꼰 - - 1 `...' 2 - -1ˤʤޤǤϵ֤θϼ2֤ޤǤϿ֤2 -ˤʤо֤ϵ롥 - -`...'ξդμǤʸɽƥϼ$_=~ ƥפξά -ϡ$.==פξάȲᤵ롥 - -** NOT - - `!' - -ǤеǤп֤ - -`!'Ǥʸɽƥϼ$_=~ ƥפξάǤȤ -ʤ롥 - - 1 `!=' 2 - -!(1 == 2)פξά - - 1 `!~' 2 - -!(1 ~= 2)פξά - -** WHILE - - while - .. - end - -ɾͤδ֤֡¹Ԥ롥whileͤnilǤ롥 - -whileξȽμǤʸɽƥϼ$_=~ ƥ -ξάǤȤߤʤ롥 - -** WHILE - - ñ㼰 while - -֤(while)ϤޤԤ뼰ɾƤPɾ -ǡ٤ϼ¹Ԥ뤳Ȥˤʤ롥whileҤΤĤͤnil -롥 - -** ƥ졼(֤) - -ƥ졼Ȥ湽¤(ä˥롼)ݲΤѤåɤ -Ǥ롥ɤ(֥åȸƤФ)ꤷƥƥ졼Ƥ -Фȡƥ졼ŬͤåȤƥ֥åɾ(餯 -ʣ)ƥ졼Υ֥åθƤӽФyieldѤ() - -ƥ졼θƤӽФϰʲιʸǹԤʤ롥 - - `{' ռ.. `|' .. `}' - -ּפ֥åȤꤷּפΥåɤƥ졼Ȥɾ -롥ּפΥȥåץ٥Υåɤƥ졼ȤƸƤӽФ졤 -쥷Фɽ䡤μϥƥ졼ȤƤϸƤӽФʤּ -ʣμޤơƥ졼Ȥƽ˸ƤФ롥 - -ƥ졼yield¹Ԥȡǻꤵ줿ͤռǻꤵ -줿ѿ졤֥å¹Ԥ롥֥åμ¹ԤλȤ -ͤ yieldͤȤ֤롥åɤƥ졼ȤƸƤӽ -줿ɤϥåiterator_p()ͤΤ뤳ȤǤ롥ˤ -Enumerable⥸塼grepåɤΤ褦˥ƥ졼ȤƸƤФ줿 -̤ΥåɤȤƸƤФ줿Ȥưۤʤåɤ⤢롥 - -** FOR - -֥ȤγǤФԤʤηƤ롥 -ϰʲ̤ꡥ - - for ռ.. in - - end - -γǤФ¹Ԥ롥ϰʲμǤ롥 - - ().each `{' ռ.. `|' `}' - -äƼͤΥ֥Ȥåeachʤ硤for¹Ԥ -㳰ȯ롥 - -** YIELD - - yield `(' [ [`,' ..]]) - yield - -ƥ졼ǥ֥åθƤӽФԤʤyield¹Ԥåɤ -ƥ졼ȤƸƤӽФƤʤˤ㳰ȯ롥yield ͤϥ -åͤǤ롥 - -yieldΰγ̤ۣǤʤ¤άǤ롥 - -** FAIL - - fail `(' [å] `)' - -㳰ȯ롥åͿ줿ˤȯե -ֹ̾ƥѿ`$@'ˡå`$!'˥åȤ롥 - -failΰγ̤ϾάǤ롥 - -** BEGIN - -ʣμޤȤ뤿㳰Τbegin롥beginη -ʲ̤Ǥ롥 - - begin - .. - [resque - .. ] - [ensure - ..] - end - -beginͤϰֺǸɾ줿ͤǤ롥beginνȯ -㳰resqueͤ뤳Ȥ롥ξbeginͤ -resqueǺǸɾͤǤ롥ensure¸ߤ -beginλɬ(ェλǤʤ㳰, return, break, -continue, redoʤɤˤæФǤ)ensureμɾ롥 - -** RETRY - - retry - -beginresqueǻȤbeginϤᤫ⤦ټ¹Ԥ롥㳰 -ԤʤäƤƻԤΤ˻ȤresqueʳretryѤ줿 -ȯ롥 - -** RETURN - - return [[`,' ..]] - -ͤͤȤƥåɤμ¹Ԥλ롥2İʾͿ줿 -ˤϡǤȤåɤͤȤ롥Ĥʤ -ˤ nil ͤȤʤ롥 - -** BREAK - - break - -break ϥ롼פæФ롥CȰ㤤breakϤäȤ¦Υ롼פæФ -Ѥcase ȴѤϻʤ - -** CONTINUE - - continue - -continueϤäȤ¦Υ롼פμη֤Ϥ롥 - -** REDO - - redo - -redoϥ롼ΥåԤʤ鷺ߤη֤ľ - -** 饹 - -饹빽ϰʲ̤Ǥ롥 - - class 饹̾ [`:' ѡ饹̾ ] - - end - -饹̾ʸǻϤޤ뼱̻ҤǤ롥 - -** ⥸塼 - -⥸塼빽ϰʲ̤Ǥ롥 - - module 饹̾ - - end - -⥸塼̾ʸǻϤޤ뼱̻ҤǤ롥 - -** å - -̾(ðۥåɤǤʤ)åηϰʲ̤Ǥ롥̾ -ϥͥȤǤʤΤǡåǤϥåƤӸ -ӽФʤ - - def å̾ [`(' [`,' ..][`,' `*' ] `)'] - - end - -å̾ϼ̻ҤޤʸǤ롥黻Ҥκˤʸ -ǻꤹ롥¤ӤκǸ`*'硤¿Ϳ줿 -°ϡǸΰȤͿ(ʤˤϥ顼) - - -åɤˤϸƤӽФ¤ä뤳ȤǤ¤ä줿åɤϡ -ؿǤƤӽФʤ(privateå) - -˥åɤ硤饹γˤdefϥǥե -Ǥprivateåɤ饹ˤdefpublic -ɤ롥ѡ饹Υåɤˤ -åɤβĻϥѡ饹ΥåɤΤΤѤ - -åɤβĻѹˤModule饹Ƥpublic, -privateγƥåɤѤ롥 - -** ðۥå - -åˤϤ⤦ðۥåɤ롥ðۥåɤȤϤ -Υ֥Ȥ˸ͭΥåɤǤ롥ϰʲ̤Ǥ롥 - - def `.' å̾ [`(' [`,' ..][`,' `*' ] `)'] - - end - -ηϼͤǤ륪֥Ȥðۥåɤ롥ͤ -(ӥȥ饹Ǥʤ)̾索֥Ȥ饹ޤϥ⥸塼Ǥ -ɬפ롥̾åȤϰۤʤꡤðۥåɤϥå -ǤͥȤ뤳ȤǤ롥 - -ðۥåɤ̾ϷѾʤ㳰Ȥƥ饹ðۥåɤϤ -֥饹ˤѾ롥ؤХ饹ðۥåɤ¾Υ֥ -Ȼظƥˤ륯饹åɤƯ롥 - -: 롼ɤ⥸塼ðۥåɤϷѾʤ - -** ALIAS - -ʲηǥåɤ̾Ĥ뤳ȤǤ롥 - - alias å̾1 å̾2 - -̾դ줿åɤϡλǤΥåѤΥ -åɤƤ⡤θŤåɤƤӽФ줿ΤƱ -Ư롥 - -** UNDEF - -åɤäˤundefѤ롥 - - undef å̾ - -ꤷåɤä - -defˤ̾undefˤäˤäƥ饹Υե -ѡ饹Ωѹ뤳ȤǤ롥åɤself - ˥åäƤ⤢Τǡ褯դʤȴ¸Υ -ɤưʤʤǽ롥 - -* Ȥ߹ߴؿ - -Rubyˤϸ̩ʰ̣ǤϴؿϤʤKernel饹δؿåɤ(Ƥ -̾說饹ؿǸƤӽФΤ)ؿŪѤ롥ؿŪ -Ѥåɤʲˤ롥Υåɤݤˤϸ -ͤƹԤʤ٤Ǥ롥 - - _exit(status) - - ץμ¹Ԥλ롥statusλơȤ롥 - exit()Ȥϰäơ㳰ʤɤϰڹԤʤʤfork()θ塤 - ץλʤɤѤ롥 - - eof() - - ޥɥ饤ϤEOFãƤ硤֤ - - eval(expr) - - exprȤͿ줿ʸrubyץȤƲᡤ¹Ԥ롥 - - exec(command) - - ¹ԤƤץλơcommandʸǻꤵ - ̥ץư롥 - - exit([status]) - - ץμ¹Ԥλ롥statusȤͿ줿硤 - ͤRubyޥɤνλơȤ롥ǥեȤ0 - - fork() - - forkƥॳ¹Ԥҥץ롥ܺ٤ - fork(2)ȤΤȡƥץ¦ǤϻҥץΥץid - ֤ҥץ¦Ǥnil֤餫θǻҥץ - ˼Ԥˤ㳰ȯ롥 - - format(format, ...) - - եޥåȤȤͿ줿ʸCsprintfƱ褦 - ᤷŸʸ֤åsprintf()̾ - - RubyˤformatҤγĥˤĤƤsprintf()ιȤ - ȡ - - getc() - - ɸϤʸФͤɤ߹ʸʸ - (ASCII)ɽFixnumǤ롥 - - gets() - - ȤͿ줿ե(ʤɸ)ǹ벾 - Ūʥե(ƥѿ`$<'ǥǤ)ɤ߹ - ǡɤ߹ߤˤϤʸ֤եν - ãˤnil֤Ԥζڤϥƥѿ`$/'ˤä - ѹǤ롥ɤ߹ʸϥƥѿ`$_'ˤ⥻åȤ롥 - - gsub(pattern[, replace]) - - ƥѿ`$_'λؤʸ pattern˥ޥåʬ - replace֤롥String饹gsubåɤβȤ - ȡreplaceά줿ˤϥƥ졼Ȥư - åɾִ̤롥 gsubåɤ`$_'ͤ - 롥 - - iterator_p() - - åɤƥ졼ȤƸƤӽФ줿˿Ǥʤ˵ - ֤Ҹ졥 - - kill(signal, pid..) - - pidǻꤵ줿ץ˥ʥ롥ʥϥʥ - 椫̾ǻꤹ롥ͤĥʥ(뤤ϥʥ̾ - `-')ͿȥץǤϤʤץ롼פ˥ʥ - 롥 - - load(file) - - fileɤ롥fileɤѥϥƥѿ$LOAD_PATH - Ƿꤵ롥 - - open(file[, mode]) - - fileץơFile֥Ȥ֤ե̾ϥ - եե̾`|'ǻϤޤˤ³ʸ - ޥɤȤƵưѥץ饤롥 - - ޥ̾"-"Ǥopen()Rubyλҥץ - λҥץȤΥѥפ֤ - - modeϥեΥ⡼ɤꤹ롥ϰʲΤΤ - 줫ʸǤ롥 - - r ɤ߹ѡopenեϤ餫¸ߤƤ - ɬפ롥 - - r+ ɤ߽ξѡopenեϤ餫¸ߤƤ - ɬפ롥 - - w ѡե뤬¸ߤƤ硤Ĺ0ˤ - 롥¸ߤƤʤп˥ե롥 - - w+ ɤ߽ξѡɤ߹ߤԤʤ뤳Ȱʳ"w"ƱƯ - 롥 - - a ɲýѡեϤ餫¸ߤƤɬ - 롥ߤϥեκǸɲä롥 - - a+ ɤ߽ξѡե뤬¸ߤƤʤп˺ - 롥֤ϥեκǸ˽롥 - - ⡼ɤά줿ΥǥեȤ"r"Ǥ롥 - - print(arg1, ..., argn) - - ˽Ϥ롥Ϳʤˤϥ쥷ФϤ롥 - ʸʳΥ֥ȤȤͿ줿ˤϡ - ֥Ȥto_såɤˤäʸѴƤϤ롥 - ƥѿ`$;'(ϥեɥѥ졼)nilǤʤͤ - ȤƤˤϡưδ֤ˤʸϤ롥ƥ - ѿ`$\'(ϥեɥѥ졼)nil ǤʤͤåȤ - ˤϡǸˤϤ롥 - - printf([port, ]format, arg1, ..., argn) - - Cprintf()Ʊformat˽ʸѴϤ - 롥1IOΥ֥饹ΥǤäϤΥ - ֥ȤФƽϤԤʤǥեȤ$stdout˽Ϥ롥 - - RubyˤformatҤγĥˤĤƤsprintf()ιȤ - ȡ - - rand(max) - - 0maxۤʤϰϤȯ롥ͤFixnum - - require(file) - - fileɤ롥loadȤưΰ㤤ϳĥҤäƤ - ɤեΥեѥѿ`$"'˳ФƤƴ˥ɤ - եϺƥɤʤȥʥߥåǥб - Ƥ(OS ˤ)Ǥ롥ºݤ˥ɤˤ TRUE˥ - ɤƤˤFALSE֤ - - select(reads[, writes[, execpts[, timeout]]]) - - select(2)¹Ԥ롥reads/writes/execptsˤIO(ޤϤΥ - 饹)ΥͿ롥timeoutFixnum / Float - / TimeΤ줫ǻꤹ롥ͤtimeoutΩˤ - nilǤʤȤ3Ǥ֤γǤ// - 㳰ԤΥ֥ȤǤȤƻġ - - sleep([sec]) - - secäץμ¹Ԥߤ롥secά줿硤ץ - SIGALRMʤ¤ꡤʵפ˥פ롥ºݤ˥ - פÿ֤ - - sprintf(format, ...) - - formatʸCsprintfƱ褦˲ᤷŸ - ʸ֤åformat()̾ - - - formatҤCsprintf()դ(Ruby - unsignedʤΤǡ%uϽ)˲ä, %b, %B, %O, %XȤ - ȤǤ롥%bϿͤ2ɽ%B, %O, %XϤ줾2ʡ8ʡ - 16ʿɽԤʤονκݤ2ɽǤϤʤ - ɽƬ`-'ĤΤɽ롥 - - srand([]) - - νͤꤷŤ֤ͤͤά줿 - time(3)֤ͤǥեȤȤ롥 - - sub(pattern[, replace]) - - ƥѿ`$_'λؤʸǺǽpattern˥ޥåʬ - replace֤롥replace ά줿ˤϥƥ졼 - Ȥư֥åɾִ̤롥subåɤ - `$_'ͤ롥¾ξܺ٤˴ؤƤString饹sub - åɤβȤΤȡ - - syscall(num, arg..) - - numǻꤵ줿ֹΥƥॳ¹Ԥ롥2ʹߤ - ƥॳΰȤϤʸޤǤʤ - ʤʤ - - system(command) - - ޥɤ¹Ԥνλơ֤ - - trap(command, signal..) - - signalγߤäcommand¹Ԥ롥signalϥ - ʥ̾ʥֹ桥commandȤ"SIG_IGN"ޤ"IGNORE" - ꤷˤϤΥʥ̵뤹(ǽʤ)"SIG_DFL" - "DEFAULT"ꤷϥǥեȤưԤʤ - - wait() - - ҥץλΤԤλҥץpid֤ - ҥץĤʤnil֤ - - waitpid(pid, flags) - - λҥץνλԤΥץλ˿ - ҥץ¸ߤʤΥ֥å⡼ɤǻҥץ - ޤλƤʤˤnil֤waitpid(2)wait4(2) - ƤʤޥǤflagsϤĤnilޤ0ǤʤФ - ʤ - -* Ȥ߹ѿ - - $! 顼åfailꤹ롥 - - $@ 顼ȯΥե̾ȹֹ椬 - - "ե:ֹ[:å̾()]" - - ηdzǼ롥 - - $& Ǹѥޥå - - $` ǸΥѥޥåǥޥåʸʸ - - $' ǸΥѥޥåǥޥåʸθ³ʸ - - $+ ǸθѥǥޥåǸγ - - $1..$9 Ǹѥޥånܤγ̤˥ޥå - ͤǼ롥̤ʤniläƤ롥 - - $~ ǸΥޥå˴ؤåȤ$&$1..$9 - ͤѲ롥 - - $= ѿͤnilǤʤѥޥåʸ - Ӥǥե٥åȤʸʸ̤ʤǥե - Ȥnil(̤) - - $/ ϥ쥳ɥѥ졼եʸФeach - Ԥʤʬʸꤹ롥$/˶ʸ("")ꤹ - ñ̤ϤԤʤnilꤹΤ - ɤ߹ࡥ$/ˤɽϻȤʤǥեȤ - "\n" - - $\ ϥ쥳ɥѥ졼ѿʸꤹ - write()print()٤˺ǸˤʸղäƽϤ - 롥ǥեȤnil(ʤˤɲäʤ) - - $, Array:join()ΥǥեȤζڤʸprint()γư - δ֤˽Ϥʸ - - $; String:split()ΥǥեȤζڤʸ - - $. Ǹɤϥեιֹ桥 - - $< (ʤɸ)ǹ벾ۥե롥Ĥޤ - gets()$<.gets()Ʊ̣Ǥ롥$<.fileǸɤ߹ - Υե륪֥Ȥ$<.filenameǤΥե - ̾롥(Ф: `<'ϥϸ) - - $> printprintfΥǥեȤν补ͤ$stdout-i - ץꤷˤɤ߹߸Ʊ̾Υե - 롥(Ф: `>'ϥν) - - $_ Ǹgets()ʤɤɤ߹ʸ - - $0 rubyץȤ̾ѿps(1)ν - Ѳ롥 - - $* rubyץȤͿ줿rubyȤФ - Ƥ롥 - - $$ ¹rubyץpid - - $? Ǹ˼¹Ԥҥץstatus - - $: եɤ˸ǥ쥯ȥؤΥѥ - ޤưˤϥǥե(ѥ˻ꤹ - )˲äơĶѿRUBYLIBͤrubyư-Iץ - ǻꤵ줿ͤɲä롥(Ф: ϴĶ - PATHζڤʸǤ) - - $" ˥ɤ줿ե̾ޤrequire()Ʊ - ե2ɤʤѤ롥(Ф: - prevent files to be doubly quoted(loaded)) - - $ARGF $<̾ - - $ARGV $*̾ - - $DEBUG `-d'ե饰ξ() - - $FILENAME ۥե`$<'Ǹɤ߹(ågets() - ɤǤ)ե̾$<.filenameƱ - - $LOAD_PATH $:̾ - - $stdin ɸ - $stdout ɸ - $stderr ɸ२顼 - - $VERBOSE `-v'ե饰ξ() - - TRUE t - FALSE nil - - 줾쿿ͤɽȽǤnilʳƤͤ - ȤȽǤ뤿ᡤTRUEͤɽŪʿͤȤʾΰ̣ - ʤäơåɤͤǤȤȤȡ - 줬TRUE֤ȤȤϸ̩ˤƱǤϤʤ(ҸŪѤ - åɤͤȤTRUE֤褦ˤϤʤäƤ뤬) - Ĥޤ - - if some.method() then ... else ... end - - - - if some.method() == TRUE then ... else ... end - - ϴˤƱǤϤʤFALSE˴ؤƤϡΤ褦 - ʤ - - STDIN ɸ - STDOUT ɸ - STDERR ɸ२顼 - - ENV Ķѿ˥ϢʸȤͿ - бĶѿͤ롥Ķѿ¸ߤ - nil֤롥 - - KCODE бƤɤɽʸ"EUC","SJIS"ޤ - "NONE" - - VERSION rubyΥСʸ - -* Ȥ߹ߥ饹ȥ⥸塼 - -** Array(饹) - -źȤΥ饹Ǥ롥ϰŪˤ``[..]'' -Ԥʤ롥 - -SuperClass: Object - -Included Modules: Enumerable - -Methods: - - self[nth] - self[start..end] - self[start, length] - - Ǥ˥롥ǽηǤnthܤǤ - ֤2ܤηǤstartܤǤendܤǤޤ - ʬ֤3ܤηǤstartܤlengthĤǤޤ - ʬ֤ - - self[nth] = val - self[start..end] = val - self[start, length] = val - - Ǥѹ롥ǽηǤnthܤǤval - ѹ롥2ܤηstartܤǤendܤǤޤǤ - valѹ롥3ܤηǤstartܤlengthĤǤval - ѹ롥 - - 2ܡ3ܤηǤvalǤʤФʤʤ - - : - - ary = [1, 2, 3, 4, 5] - ary[0..2] = [0, 0] # Ƥ [0, 0, 4, 5] - ary[1, 0] = [7] # Ƥ [0, 7, 0, 6, 5] - - self + other - - Ϣ롥selfotherξƤҤ - ֤ - - self * times - - η֤ - - self - other - - κ黻selfotherǤƤο - ֤ʣǤ1٤롥 - - self * other - - ѱ黻ξ˴ޤޤǤʤ뿷֤ - ʣǤ1٤롥 - - self | other - - ±黻ξˤ줫˴ޤޤǤƴޤ - ֤ʣǤ1٤롥 - - self << obj - - objɲä롥self֤ΤC++ŪϢǤ롥 - - assoc(key) - - Ϣۥꥹ(assocڥǤȤ)1Ǥkey - ("=="Ӥ)֤ - - clear - - 礭0ˤ롥 - - delete(val) - - valȰפǤ롥 - - delete_if - - Ǥ륤ƥ졼֥åɾͤλб - Ǥ롥 - - each - - γǤͿ륤ƥ졼 - - fill(val) - fill(val, start[, length]) - fill(val, start..end) - - (λꤵ줿ʬ)Ǥͤvalꤹ롥2֤η - lengthά줿νޤǤĹȤ롥ꤵ줿 - ʬϰϤۤϼưŪ˳ĥ롥 - - index(val) - - valǽǤΥǥå֤Ǥ¸ - ʤnil֤ - - indexes(ary) - indexes(index-1, ..., index-n) - - 1ܤηǤȤƼơǤǥ - ȤǤޤ֤2ܤηǤϳưͤ - ǥåȤǤޤ֤ - - join([sep]) - - ǤϢ뤷ʸ֤ǤʸѴ졤 - sepϢ뤵롥sepά줿ˤϥƥѿ`$,' - ͤѤ롥 - - length - size - - Ĺ(ǿ)֤ - - push(obj) - - objɲä롥 - - pack(template) - - Ƥtemplateʸˤäơ1Ĥʸ˥ѥå - 롥ѥåʸ֤ƥץ졼ȤϷʸȤĹ - (ά1)¤٤ΤǤ롥ĹȤ`*'ꤵ줿 - ֻĤΥǡơפĹɽ - - ʸϰʲΤΤ롥 - - a ASCIIʸ(nullʸͤ) - A ASCIIʸ(ڡͤ) - b ӥåȥȥ(̥ӥåȤ̥ӥå) - B ӥåȥȥ(̥ӥåȤ鲼̥ӥå) - h 16ʸ(̥˥֥뤬) - H 16ʸ(̥˥֥뤬) - c char - C unsigned char - s sort - S unsigned sort - i int - I unsigned int - l long - L unsigned int - n ͥåȥХȥshort - N ͥåȥХȥlong - f ñư(¸) - d ư(¸) - x ʥХ - X 1Хȸ - @ а֤ؤΰư - - pop - - Ǥơ֤ - - rassoc(value) - - Ϣۥꥹ(2ǤǤȤ)2Ǥ - value("=="Ӥ)֤ - - shift - - ƬǤơ֤ - - sort - - ƤȤ롥ƥ졼ȤƸƤӽФ줿ϥ֥ - ɾͤǤ羮ꤹ롥礭 - 0顥̾ΥåɤȤƸƤӽФ줿ϳ - `<=>'Ӥ롥 - - to_a - - ʬȤ֤оΤѰդƤåɤǤޤ - ʤ - - unshift(obj) - - objƬɲä롥 - -Single Methods: - - Array[item..] - - ǤȤ롥 - -** Assoc(饹) - -ǡ(ڥ)ɽ륯饹̾`::'黻ҤѤƹԤʤ -롥 - -SuperClass: Object - -Methods: - - car - - CONSڥΥǡCAR֤ - - car=(val) - - CONSڥCARΥǡѹ롥 - - cdr - - CONSڥΥǡCDR֤ - - cdr=(val) - - CONSڥCDRΥǡѹ롥 - -** Bignum(饹) - -̵¿ĹΥ饹黻η̤FixnumϰǤˤϼ -ưŪ˥饹FixnumѴ롥ŪRubyץǤFixnum -BignumѴϰۤΤ˹ԤΤǡռɬפ̵FloatȤ -˴ؤƤϡBignum Floatgenericity⤤Τˤؤ餺 -Bignum礭ͤɽǤΤǡѴ˷ǽ -롥 - - -SuperClass: Integer - -Methods: - - self + other - self - other - self * other - self / other - self % other - self ** other - - ѱ黻줾¡ѡ;Ѿ֤ - - ~ self - self | other - self & other - self ^ other - - ӥåȱ黻줾ӥåȿž¡ѡ¾Ū¤ - ֤ - - self << bits - self >> bits - - եȱ黻줾bitsӥåȤ˥ӥåȥեȤԤʤ - - divmod(other) - - Ⱦ;2Ǥ֤ - -** Block(饹) - -ƥ졼Ϥ³ޤȤ֥ȡ¹Ԥ륳ɤ -ʤƥ(ѿ)ʤɤ¸롥 - -SuperClass: Object - -Methods: - - call(arg[,..]) - - ֥å¹Ԥ롥 - -Single Methods: - - new - - ֥å롥yield¹ԤǤǤΥå - ƤФȡλǼ¹Ԥ٤ɤ߹֥ - (Block)롥 - -** Class(饹) - -饹Υ饹긷̩ȥ饹ðۥåɤѾ뤿 -ˡ줾饹ȸƤФ̾Τʤ饹饹Ȥƻ -ClassϤΥ饹Υ饹Ǥ(ʬä?)β⤬ -ǤʤƤ⡤RubyȤȤ˲λپʤ饹ˤðۥåɤ -Ǥȡѡ饹줿ðۥåɤϤΥ֥饹 -ǤͭǤΤнʬǤ롥 - -SuperClass: Module - -Private Methods: - - attr(name[, public]) - - Υ饹ΥФnameǻꤵ°롥 - ܤModuleattråɤιȤΤȡ - -Methods: - - new(..) - - 饹Υ롥¿ξ礳Υåɤϥ֥ - 饹ðۥåɤˤäƥС饤ɤ졤饹ˤäư - ۤʤ롥 - -** Comparable(⥸塼) - -ӱ黻饹ΤMixinΥ⥸塼롼ɤ뤳 -Ȥˤäơ`<=>'黻Ҥ¾α黻ҤϤѤ -Ǥ롥 - -Methods: - - self == other - - selfother֤ - - self > other - - selfother礭֤ - - self >= other - - selfother礭֤ - - self < other - - selfother꾮֤ - - self <= other - - selfother꾮֤ - - between(min, max) - - selfminmaxϰˤ֤ - -** Dir(饹) - -ǥ쥯ȥǤ֤ǥ쥯ȥꥹȥΤΥ饹 - -SuperClass: Object - -Included Modules: Enumerable - -Methods: - - close - - ǥ쥯ȥꥹȥ롥ʸ㳰ȯ - 롥 - - each - - ǥ쥯ȥγǤͿ륤ƥ졼 - - getwd - pwd - - ȥǥ쥯ȥ֤ - - rewind - - ǥ쥯ȥꥹȥƬ˥ꥻåȤ롥 - - seek(pos) - - ǥ쥯ȥꥹȥΰ֤posꤹ롥 - - tell - - ǥ쥯ȥꥹȥθߤΰ֤֤ - -Single Methods: - - self[pat] - glob(pat) - - ʸpatshΥ磻ɥɤȤŸ̤ʸ - Ȥ֤ϰʲ̤Ǥ롥 - - * Ǥդʸ(ʸޤ)Ȱ - ? Ǥդ1ʸȰ - [ ] []Τ줫1ʸȰ - {..} {}(ޤǶڤ줿)줫ʸ - - - chdir(path) - - ȥǥ쥯ȥpathѹ롥 - - chroot(path) - - ץΥ롼ȥǥ쥯ȥѹ롤Ʊ̾Υƥॳ - ƱƯ롥ϼ¸uidѥ桼Ǥ - ¤Ƥ롥롼ȥǥ쥯ȥ᤹(롼ȥǥ쥯 - ѹ)ˡƤʤ - - mkdir(path[, mode]) - - modeǻꤵ줿⡼ɤĥǥ쥯ȥpath롥⡼ - umaskˤäƽ롥modeΥǥեͤ0777 - - open(path) - - pathФǥ쥯ȥꥹȥץ롥 - - rmdir(path) - - pathǻꤵ줿ǥ쥯ȥ롥ǥ쥯ȥ϶Ǥ - ɬפ롥 - -** Enumerable(⥸塼) - -ǤФ뷫֤Ԥʤ饹ΤMixinΥ⥸塼 -롼ɤ뤿ˤϡå`each'ɬפ롥 - -Methods: - - collect - - ǤФƥ֥åɾ̤ƴޤ֤ - - find - - ǤФƥ֥åɾͤˤʤäǽǤ֤ - - find_all - - ǤФƥ֥åɾͤǤäǤƴޤ - ֤ - - grep(pattern) - - =~ patternפΩƤǤޤ֤ - 졼ȤѤ줿Ͼ嵭ξΩǤФƥ֥ - ¹Ԥ롥 - - includes(val) - - val`=='δطˤǤĻ֤ - - index(val) - - val`=='δطˤ륪֥Ȥܤ˸줿֤ - ֺǽǤ0ˤʤ롥Ǥ¸ߤʤˤnil֤ - ʤ饹ФƤϤޤ̣ʤ - - length - - Ǥο֤ - - min - - ǾǤ֤ƤǤߤ`<=>'åɤӤǤ - 뤳ȤꤷƤ롥 - - max - - Ǥ֤Ǥ`<=>'åɤӤǤ뤳Ȥ - Ƥ롥 - - reverse - - ƤǤս¤٤֤ - - sort - - ƤǤȤ֤ - -** Etc(⥸塼) - -/etcǥ쥯ȥʲξ뤿Υ⥸塼롥饹˥롼 -ƻȤȤǤ롥 - -Methods: -Single Methods: - - getlogin - - ʬlogin֤̾줬Ԥgetpwuid()Ѥ - ɤ - - getpwnam(name) - - /etc/passwdե(뤤DBMեNISǡ١) - name̾passwdȥ֤ͤpasswd¤ - ΤǰʲΥФġ - - struct passwd - name # 桼̾(ʸ) - passwd # ѥ(ʸ) - uid # 桼ID() - gid # 롼ID() - gecos # gecosե(ʸ) - dir # ۡǥ쥯ȥ(ʸ) - shell # (ʸ) - # ʹߤΥФϥƥˤäƤʤ - change # ѥѹ() - quota # () - age # () - class # 桼饹(ʸ) - comment # (ʸ) - expire # ͭ() - end - - ܺ٤getpwnam(3)ȤΤȡ - - getpwuid([uid]) - - uid桼IDȤpasswdȥ֤ͤgetpwnam() - ƱͤǤ롥άˤgetuid()ͤѤ롥ܺ٤ - getpwuid(3)ȤΤȡ - - getgrgid(gid) - - /etc/groupե(뤤ϡgetpwnam)gid롼 - IDȤ륰롼ץȥ֤ͤgroup¤Τǰʲ - Фġ - - struct group - name # 롼̾(ʸ) - passwd # 롼פΥѥ(ʸ) - gid # 롼ID() - mem # 롼ץ̾ - end - - ܺ٤getgrgid(3)ȤΤȡ - - getgrnam(name) - - nameȤ̾Υ롼ץȥ֤ͤgetgrgid()Ʊ - ͤǤ롥ܺ٤getgrnam(3)ȡ - - group - - ƤΥ롼ץȥ˥뤿Υƥ졼 - - passwd - - Ƥpasswdȥ˥뤿Υƥ졼 - -** File(饹) - -ե륢ΤΥ饹åopen()롥ޤ -饹ðۥåɤȤtestΥեƥȱ黻Υåɤ -Ƥ(FileTest⥸塼Υåɷ) - -SuperClass: IO - -Methods: - - atime - - եκǽ֤ - - ctime - - եκǽơѹ֤ - - chmod(mode) - - եΥѡߥåѹ(cf chmod(2)) - - chown(owner, group) - - եνͭԤȥ롼פѹ(cf chown(2))nil-1 - ꤹ뤳ȤˤäƽͭԤ䥰롼פߤΤޤѤʤǤ - ȤǤ롥 - - eof - - եνüã˿֤ - - lstat - - ե˴ؤStat¤Τ֤lstatϥե뤬ܥ - ǤХΤΤ˴ؤStat¤Τ֤¤ - ƤˤĤƤstatȤΤȡ - - mtime - - եκǽ֤ - - rewind - - եΥեݥΰ֤Ƭ˰ư롥 - - path - - եΥѥ֤̾ - - seek(offset, ptrname) - - եΥեݥΰ֤offset˰ư롥ptrname - 012Τ줫Ǥäơ줾եƬ߰֡ - եνüΤΤ줫Ф - - stat - - ե˴ؤStat¤Τ֤(Struct ) - - struct stat - dev # ե¸ߤǥХ - ino # եi-nodeֹ - mode # ⡼ - nlink # ϡɥο - uid # ͭԤΥ桼ID - gid # ͭԤΥ롼ID - rdev # ǥХID(ڥեΤ) - size # ե륵(byte) - blksize # ե륷ƥˤŬڤʥ֥å - blocks # ֥å - atime # ǽ - mtime # ǽ - ctime # ǽѹ - end - - ܺ٤fstat(2)ȤΤȡƥƤ - stat¤Τ˳Фʤ0ꤵƤ롥 - - tell - - եθߤΥեݥΰ֤֤ - - truncate(length) - - եڤΤƤƺlengthХȤˤ롥եwrite⡼ - ɤǥץƤʤФʤʤ - -Single Methods: - - atime(filename) - - filenameκǽ֤ - - ctime(filename) - - filenameκǽơѹ֤ - - chmod(mode, path, file..) - - եΥѡߥåѹ(cf chmod(2))ѹե - ֤fileˤϥ磻ɥɤ - - chown(owner, group, file..) - - եνͭԤȥ롼פѹ(cf chown(2))nil-1 - ꤹ뤳ȤˤäƽͭԤ䥰롼פߤΤޤѤʤǤ - ȤǤ롥ѹե֤fileˤϥ磻ɥɤ - - - link(old, new) - - oldؤΥϡɥnew롥link(2)Ʊ¤롥 - - mtime(filename) - - filenameκǽ֤ - - readlink(path) - - ܥåpathƤʸȤ֤ - - rename(from, to) - - ե̾fromtoѹ롥rename(2)ȡtoȤ̾ - Υե뤬¸ߤˤϤޤΥե뤬롥 - - stat(filename) - - filenameΥեStat¤Τ֤ - - symlink(old, new) - - oldؤΥܥånew롥 - - truncate(path, length) - - pathǻꤵ줿եڤΤƤƺlengthХȤˤ롥 - - type(filename) - - filenameΥեΥפɽʸ֤ʸ"file" - "directory""characterSpecial""blockSpecial""fifo" - "link""socket"ΤΤ줫ĤǤ롥 - - unlink(file..) - - ե롥ǥ쥯ȥκˤDir.rmdirȤȡ - fileˤϥ磻ɥɤ - - utime(atime, mtime, file..) - - եΥatimeˡmtimeꤹ롥 - atimemtimeϿޤTime饹ΥǤʤФʤ - fileˤϥ磻ɥɤ - - - ʳFileTest⥸塼ΥåɤðۥåɤȤƻġ - -** FileTest(⥸塼) - -եƥѥåɤ⥸塼롥롼ɤѤ뤳 -Ǥ롥 - -Methods: -Single Methods: - - b(filename) - - filenameΥե뤬֥åڥեǤ - - - c(filename) - - filenameΥե뤬饯ڥեǤ - ֤ - - executable(filename) - x(filename) - - filenameΥե뤬¹Բǽλ֤ - - exists(filename) - e(filename) - a(filename) - - filenameΥե뤬¸ߤ֤ - - G(filename) - - filenameΥեgid¸롼פgidƱ֤ - - isdirectory(filename) - d(filename) - - filenameǥ쥯ȥλ֤ - - isfile(filename) - f(filename) - - filenameΥե뤬̾եλ֤ - - islink(filename) - l(filename) - - filenameΥե뤬ܥåǤ֤ - - ispipe(filename) - p(filename) - - filenameΥե뤬̾Ĥѥ(FIFO)Ǥ֤ - - issocket(filename) - S(filename) - - filenameΥե뤬åȤǤ֤ - - owned(filename) - O(filename) - - filenameΥե¸桼ͭƤ֤ - - readable(filename) - r(filename) - - filenameΥեɤߤȤǽλ֤ - - R(filename) - - filenameΥեuid/gidɤߤȤǽλ֤ - - setuid(filename) - u(filename) - - filenameΥեsetuidӥåȤåȤƤ֤ - - setuid(filename) - g(filename) - - filenameΥեsetuidӥåȤåȤƤ֤ - - size(filename) - s(filename) - - filenameΥե뤬¸ߤե礭֤¸ߤ - ʤnil֤ - - sticky(filename) - g(filename) - - filenameΥեstickyӥåȤåȤƤ֤ - - writable(filename) - w(filename) - - filenameΥե뤬uid/gidǽ߲ǽλ֤ - - W(filename) - - filenameΥե뤬߲ǽλ֤ - - z(filename) - - filenameΥե뤬¸ߤ礭0Ǥ֤ - -** Fixnum(饹) - -31bit(ޥlongĹ-1 bit)Υ饹builtin classǤ롥 -饹pointer¨ͤǤ뤿call by valueǸƤӽФħŪ -Ǥ(¾Υ饹call by reference)黻η̤31bitۤ -ϼưŪBignum(̵¿Ĺ)˳ĥ롥 - -ƥ졼upto()downto()step()Ϸ֤ΤѤ졤̤ -Range饹Ѥ®Ǥ롥 - -SuperClass: Integer - -Methods: - - self + other - self - other - self * other - self / other - self % other - self ** other - - ѱ黻줾¡ѡ;Ѿ֤ - - ~ self - self | other - self & other - self ^ other - - ӥåȱ黻줾ӥåȿž¡ѡ¾Ū¤ - ֤ - - self << bits - self >> bits - - եȱ黻줾bitsӥåȤ˥ӥåȥեȤԤʤ - - self .. max - - ϰϻꡥself maxޤǤϰϥ֥Ȥ֤ - - downto(min) - - ƥ졼selfminޤDz˷֤ - - id2name - - ͤIDȤߤʤơʸ֤ʸ - ¸ߤʤnil֤ - - step(max, step) - - ƥ졼selfmaxޤstepѲʤ顤֤ - - to_f - - selfFloatѴΤ֤ - - to_i - - selfΤޤ֤ - - upto(max) - - ƥ졼selfmaxޤǷ֤ - -** Float(饹) - - ưΥ饹 - -SuperClass: Numeric - -Methods: - - self + other - self - other - self * other - self / other - self % other - self ** other - - ѱ黻줾¡ѡ;Ѿ֤ - - self == other - self > other - - ӱ黻 - - coerce(num) - - numfloatѴ롥FloatǤ¾ο - FixnumBignumǤ롥 - - to_f - - selfΤޤ֤ - - to_i - - selfѴ̤֤ - -Single Methods: - - new(float) - - floatƱͤĿFloat֥Ȥ֤ - -** GC(⥸塼) - -RubyȤ߹ߤgarbage collectorԤʤΥ⥸塼롥Υ -塼ΥåɤѤ뤳ȤˤäơŪGCߤꡤGCε -륿ߥ椷Ǥ롥 - -Methods: - - garbage_collect - - GCϤ롥GC.startפƱ - -Single Methods: - - disable - - GCػߤ롥 - - enable - - GCĤ롥 - - start - - GCϤ롥 - -** Glob(饹) - -磻ɥɤΥ饹磻ɥɤΥƥ<..>ȤǤ -롥ɽȤۤƱ褦˻Ȥ뤬ϵǽʤ -ɥɤŸǽ롥 - -SuperClass: Object - -Included Modules: Enumerable - -Methods: - - self =~ string - - 磻ɥɤʸ˥ޥåˤϿʤ - nil֤ - - each - - 磻ɥɤ˥ޥåե̾Ϳ륤ƥ졼 - -Single Methods: - - new(string) - - ʸ磻ɥɤѴ֥Ȥ֤ - -** Hash(饹) - -Ϣ뤤ϥϥåɽǤդΥ֥ȤźȤǤΥ -Ǥ롥Ϣ֥ȤϰŪˤϢ - - ``{a=>b,..}'' - -ǹԤʤ롥 - -SuperClass: Object - -Included Modules: Enumerable - -Methods: - - self [key] - - keyȤ֤ͤ - - self [key]= value - - keyȤơvalueǼ롥valueȤnilꤹȤ - keyФܤκȤʤ롥ĤޤꡤHashͤȤnil - ȤϤǤʤ - - clear - - Ϣˤ롥 - - delete(key) - - keyȤȤ롥 - - delete_if - - Ǥ륤ƥ졼key::valueȤڥͿơ֥ - ɾͤλܤ롥 - - each - each_pair - - key::valueʤڥͿ륤ƥ졼 - - each_key - - ƤkeyФƷ֤ƥ졼 - - each_value - - ƤvalueФƷ֤ƥ졼 - - has_key(key) - includes(key) - - keyϢ¸ߤ֤ - - has_value(value) - - valueͤȤȤϢ¸ߤ֤ - - indexes(ary) - indexes(key-1, ..., key-n) - - 1ܤηǤȤƼơǤȤ - Ǥޤ֤2ܤηǤϳưͤȤ - ޤ֤ - - keys - - Ϣ¸ߤ륭Ƥޤ֤ - - length - size - - ϢǤο֤ - - shift - - ϢǤļФ()key::valueʤڥ - ֤ - - to_a - - Ϣkey-valueڥǤȤ֤ - - values - - Ϣ¸ߤƤޤ֤ - -Single Methods: - - Hash[key, value..] - - ܤΰkeyܤΰvalueȤϢ - 롥 - - new - - ()Ϣ֥Ȥ֤ - -** Integer(饹) - -饹ºݤϤ礭ˤäFixnumBignumĤΥ֥饹 -Ǽ¸Ƥ롥IntegerϤΥѡ饹Ȥʤݥ饹Ǥ -롥RubyǤϤۤȤɤξ硤FixnumBignumζ̤ɬפʤߤѴ -ϼưŪ˹Ԥʤ롥ӥåȤߤʤˤϡ̵¤Ĺ -ĥӥåȹͤƹʤ - -SuperClass: Numeric - -Methods: - - self[idx] - - idxӥåܤåȤƤ1åȤƤʤ - 0֤ - - chr - - οɤȤʸޤ1ʸʸ֤̤ - Ĺ1ʾʸˤĤơδطΩ롥 - - str[0].chr == str[0,1] - - ʸϰ(0..255)ˤʤ㳰ȯ롥 - - is_integer - - Ĥ֤ - -** IO(饹) - -ϤΤδܥ饹 - -SuperClass: Object - -Included Modules: Enumerable - -Methods: - - self << object - - objectϤ롥objectʸǤʤˤϥåto_sѤ - ʸѴ롥selfͤȤΤǡC++Τ褦`<<' - ϢȤ롥 - - : - - $stdout << 1 << " is a " << Fixnum << "\n" - - close - - ϥݡȤ롥ʸΤΥ֥ȤФ - ϥ顼ˤʤ롥 - - each - - Ԥɤ߹Ǥ뤿Υƥ졼Ԥζڤϥƥ - `$/'ˤäѹǤ롥ɤ߹ʸϥƥѿ`$_' - ⥻åȤ롥 - - each_byte() - - ʸɤ߹Ǥ뤿Υƥ졼ʸʸɤɽ - FixnumǤ롥 - - fileno - to_i - - IO֥ȤȤäƤեǥץ(Fixnum)֤ - - flush - - Хåեեå夹롥 - - getc - - ɤ߹ǡɤ߹ߤˤϤʸ֤ե - νãˤnil֤ͥågetc() - $stdin.getcƱ̣Ǥ롥 - - gets - - ɤ߹ǡɤ߹ߤˤϤʸ֤ե - νãˤnil֤ - - isatty - - ϥݡȤttyǤ֤ - - puts(obj) - - objϤ롥self << objפƱ̣Ǥ롥 - - read([length]) - - lengthХɤ߹ǡʸ֤lengthά줿 - ˤϡƤΥǡɤ߹ࡥ - - readlines - - եɤ߹dzƹԤǤȤƤ֤ - - sync - - ߤνƱ⡼ɤ֤ͤƱ⡼ɤλϽϴ - θƽ˥Хåեեå夵롥 - - sync=(newstate) - - Ʊ⡼ɤꤹ롥 - - sysread(length) - - stdioͳread(2)ѤϤԤʤϤ줿ǡ - ޤʸ֤եνãˤnil֤ - read(2)ˤɬlengthХȤʸɤ߹ޤ櫓 - ǤϤʤgets()getc()ʤstdioͳåɤȺѤ - ȤϥХåեʤɤǻפư뤳Ȥ롥 - - syswrite(str) - - stdioͳˡwrite(2)ѤƽϤԤʤΥå - ϥХåեʤstdioƤ뤳ȤϰڹԤʤʤ - syswriteϼºݤ˽Хȿ֤print()printf() - syswrite()ѤΤϿ侩Ǥʤ - - write(str) - - strϤ롥ϤХȿ֤ - -** Kernel(饹) - -ƤΥ饹δ쥯饹RubyȤ߹ߤƤδؿåɤϤΥ饹 -Ƥ롥ؿåɤˤĤƤϡִؿפιܤȤΤȡ - -SuperClass: ʤ - -Methods: - - ! self - - ꡥNon-nilΥ֥Ȥξ˵(nil)֤Υ - ɤNil饹ǤϺ쿿֤ - - self == other - equal(other) - - ֥ȤΰȽꡥ쥷ФȰΰפ - ֤Kernel饹ǤΥ֥ȤƱλ - "=="åɤϳƥ֥Ȥ˱ƺɬפ - 롥"=="åɤˤϡhashåɤ⤽˹ - ƺɬפ롥 - - equal()åɤ"=="åɤ̾ǡ"=="Ǥ - ֥ȤƱȽԤʤѤ롥ä - equal()åɤϥ֥饹Ǻ٤ǤϤʤ - - self != other - - "=="ꡥ"=="åɤƤӽФƤΤǡϺ - ɬפϤʤ - - self =~ other - - ޥåǥեȤư"=="ƱǤ롥"=~"caseӤ - Ѥ롥 - - !~ - - "=~"ꡥ"=~"åɤƤӽФƤΤǡϺ - ɬפϤʤ - - self :: other - - selfotherǤȤassocڥ֤α黻ҤϱǤ - Τǡa::b::c (a::(b::c)) Ȳᤵ롥 - - is_nil - - ֥ȤnilǤ뤫ɤKernel饹ǤϿ - Nil饹ǺƤ롥 - - id - - ƥ֥ȤФưդFixnum֤FixnumϼʬȤ - ΤǡidפƤƱ֥ȤǤ뤳Ȥݾڤʤ - Ĥޤꡤ - - obj1.id == obj2.id - - ΩƤ⡤ɤ餫FixnumǤСobj1obj2ƱǤ - Ȥϸ¤ʤξFixnumǤʤȤݾڤǤС2 - ĤΥ֥ȤƱǤ뤳Ȥϳμ¤Ǥ롥 - - hash - - ֥ȤΥϥå(Fixnum)֤Hash饹ǥȤʤ - ֥ȤǼΤѤƤ.A == BפΩ - ɬA.hash == B.hashפΩɬפΤǡ"==" - ˤɬ⤽˹碌ƺ뤳ȡ - - -** Math(⥸塼) - -ư黻ݡȤ륯饹Math⥸塼ƱΥå -ðۥåɤȤξƤΤǡðۥåɤƤӽФƻ -Ȥȡ饹˥롼ɤƻȤȤȤξǤ롥 - - : - - pi = Math.atan2(1, 1) * 4; - include Math - pi2 = atan2(1, 1) - -Methods: -Single Methods: - - atan2(x, y) - - С-ФϰϤX/YΥȤ֤ - - cos(x) - sin(x) - tan(x) - - 饸ɽ줿xλѴؿ֤ͤ - - exp(x) - - xλؿؿ֤ͤ - - log(x) - - xμп֤ - - log10(x) - - xξп֤ - - sqrt(x) - - xʿ֤xͤǤˤ㳰ȯ롥 - - cbrt(x) - - xΩ֤ - -** Module(饹) - -⥸塼Υ饹 - -SuperClass: Object - -Private Methods: - - attr(name[, public]) - - Υ⥸塼롼ɤ饹ΥФ - nameǻꤵ°ղä°Ф륢åɤ - 롥attr("attr")ϥ饹˰ʲ˼ɤɲä - ȤۤƱǤ롥 - - def attr; @attr; end - - άǽ2publicͿơĤͤnilǤʤ - Ϥ°ˤ°åɤѰդ졤ǽˤ - 롥attr("attr", TRUE)ϥ饹˰ʲΥɤɲä - ȤۤƱǤ롥 - - def attr; @attr; end - def attr=(val); @attr = val; end - - °åɤ뤳Ȥˤäơư - ѹǤ롥㤨 - - attr("test", TRUE) - def test=(val) - print("test was ", @test, "\n") - print("and now is ", @test = val, "\n") - end - - Τ褦°ͤɽ褦ʤȤǽǤ롥attr - ϥåɤǤƤϡǥեȤΥ - åɤʤ - -Methods: - - include(module[, module..]) - - ǻꤷ⥸塼롼ɤơåɡ - ä롥饹⥸塼̤Υ⥸塼롼ɤ뤳 - Ȥˤäơꤵ줿¿ŷѾ(Mixin)¸Ǥ롥 - - to_s - - ⥸塼ʸɽ֤⥸塼ξʸɽϥ - 塼̾Ǥ롥 - - private(name[, name..]) - - nameǻꤵ줿åɤؿǤƤӽФǽˤ롥 - ǤprivateåɤǤˤϲ⤷ʤ - - public(name[, name..]) - - nameǻꤵ줿åɤ̾ǸƤӽФǽˤ롥Ǥ - publicåɤǤˤϲ⤷ʤ - -** Nil(饹) - -ɽ֥nilΥ饹ѿ()nilNil饹ͣΥ -Ǥ롥 - -SuperClass: Kernel - -Methods: - - self + other - - otherưʸǤother֤ - - ! self - - ˿֤ - - is_nil - - ˿֤ - -** Numeric(饹) - -̤ɽݥ饹 - -SuperClass: Object - -Included Modules: Comparable - -Methods: - - + self - - ֥selfΤΤ֤ - - - self - - 0 - selfפ֤֥ͤ饹ǤΨŪ˺뤳 - ȤԤ롥 - - abs - - ֤ͤ - - divmod(other) - - Ⱦ;Υڥ֤ - - next - - ο֤οȤϤοۤǾǤ롥 - -** Object(饹) - -Ƥ̾說饹Υѥ饹̾說饹ΥΰŪʿ -Ƥ롥Υ饹Υ֥饹Ǥʤ饹KernelNilȡ -Ȥ߹ߴؿƤBuiltinǤ롥 - -SuperClass: Builtin - -Methods: - - extened(module[, module..]) - - ǻꤷ⥸塼self˥롼ɤ롥⥸塼 - ƤåɤðۥåɤȤɲä롥 - - initialize - - ֥Ȥ˸ƤӽФ롥ǥեȤϲ⤷ - ֥饹ɬפ˱ƺ뤳ȤԤƤ롥 - - is_member_of(class) - - ֥self饹classΥǤ֤ - - is_kind_of(class) - - ֥self饹classΥ֥饹Υ - ֤ - - clone - - ֥Ȥʣ롥¨ͤǤFixnum饹 - ʳΥ饹ξ硤obj.equal(obj.clone)פϵǤ뤬¿ - ξobj == obj.cloneפϿǤ롥 - - to_s - - ֥Ȥʸɽ֤ΥåɤŪprint() - format()åɤѤƤ롥 - - to_a - - ֥ȤѴ롥ͥ륯饹Ƥ - եȤϡΥ֥ȼȤޤ1Ǥ֤ - -** Process(⥸塼) - -ץ˴ؤԤʤΥ⥸塼롥Math⥸塼Ʊͤ -ƤΥåɤðۥåɤȤƤ̾ΥåɤȤƤȤ롥 -Processϥץ֥ȤΥ饹ǤϤʤơץΥ -ɤޤȤΤǤ뤳Ȥդ뤳ȡ - -Methods: -Single Methods: - - egid - - ץθߤμ¸GID֤ - - egid=(gid) - - ץθߤμ¸GIDgid˥åȤ롥 - - euid - - ץθߤμ¸UID֤ - - euid=(uid) - - ץθߤμ¸UIDuid˥åȤ롥 - - getpgrp([pid]) - - pidǻꤵ줿ץ߽°Ƥץ롼פid - ֤pidάpid0Ϳϸ¹ԤƤ - оݤˤ롥 - - getpriority(which, who) - - whichwhoǻꤵץץ롼ס桼θ - ̤֤ͥܺ٤getpriority(2)ȡProcess⥸塼 - ǤwhichȤƻǤPRIO_PROCESSPRIO_PGRP - PRIO_USERƤ롥 - - gid - - ץθߤμGID֤ - - gid= - - ץθߤμGIDgid˥åȤ. - - pid - - ץΥץID֤ϥƥѿ`$$'ͤƱ - 롥 - - ppid - - ƥץΥץΥץID֤UNIXǤľܤοƥץ - λ硤ƥץpid1(initpid)ˤʤ롥 - - setpgrp(pid, pgrp) - - pidǻꤵ줿ץΥץ롼פpgrpˤ롥pid0 - Ϳȸ¹Υץоݤˤ롥 - - setpriority(which, who, prio) - - whichwhoǻꤵץץ롼ס桼θ - ̤ͥprioꤹ롥ܺ٤setpriority(2)ȤΤȡ - - uid - - ץθߤμUID֤ - - uid= - - ץθߤμUIDuid˥åȤ. - -** Range(饹) - -ϰϥ֥ȤΥ饹ϰϥ֥Ȥ`..'黻Ҥˤä졤 -ŪˤϰʲΤ褦ʻȤ - - for i in 1..5 - ... - end - -ξϰʲ®. - - 1.upto(5) { - ... - } - -ϰϥ֥Ȥ`..'黻ҤξդComparableޤ९饹Υ -ǤвǤʤϰϤϻȽޤळȤդ -. - -SuperClass: Object - -Included Modules: Enumerable - -Methods: - - self =~ other - - selfotherƱ饹Фϰϥ֥Ȥǡϰ - other(start <= other <= end)֤case - ϰϻꤹǤ롥㤨 - - case i - when 1, 3..5 - ... - end case - - Τ褦ʥɤȤǤ롥 - - each - - ϰ¸ߤ륪֥ȤͿ륤ƥ졼forΤ - Ѥ롥 - - end - - ϰϤν֤ - - start - - ϰϤλ֤ - -** Regexp(饹) - -ɽΥ饹ɽΥƥ/.../ȤɽưŪ -뤿ˤ - - Regexp.new(ʸ) - -Ȥ롥String饹`=~'ϤȤ¿Υåɤɽ -ؤʸͿ줿ˤŪɽΤǡ -ȤȻפ䡤ɽʸʸζ̤Ū˻ -ꤷʤɰʳŪȻפȤϾʤϤ - -SuperClass: Object - -Methods: - - self =~ string - - ɽʸ˥ޥå硤ޥå֤֤ޥå - ʤnil֤ - - ~ self - - $_ =~ selfפƱ - -Single Methods: - - complie(string[, casefold]) - new(string[, casefold]) - - ʸɽѴ֥Ȥ֤άǽ2 - Ϳ졤ͤnilǤʤˤϡ줿ɽ - Ȥϥƥѿ`$='ͤ˴ؤ餺ޥåʸ - ʸΰ㤤̵뤹롥 - - quote(str) - - ʸɽǰ̣ʸפ롥ʸ - ֤ - -** String(饹) - -ʸ饹Rubyʸϥ̥륿ߥ͡ȤǤϤʤΤǡХʥǡ -ⰷ롥äƤɤ餫ȤñʤʸȤХǤ롥 -λۤ˴Ťơɽ˴ؤåɰʳ2byteϤʸռ -ƤʤϺԤμȴǤϤʤտŪˤƤΤǤ( -Ƥ) - -SuperClass: Object - -Included Modules: Comparable, Enumerable - -Methods: - - self + other - - ʸϢ롥Ϣ뤵줿ʸ֤ - - self * times - - ʸη֤㤨 - - "x" * 4 == "xxxx" - - Ǥ롥 - - self == other - self > other - - ʸӡƥѿ$=nilǤʤˤʸʸ - ̤ӤԤʤ - - self =~ other - - ʸΥޥåotherɽʸotherʸξ - ưŪɽѴ롥ޥåϥޥå֡ - ʤänil֤롥 - - ~ self - - $_ =~ selfפƱ - - self[nth] - self[beg..end] - self[beg,len] - - ƤμФ1ܤηǤnthХܤΥǡFixnumȤ - ֤2ܤηǤbegХܤendХܤޤǤʬʸ - ֤(ξüޤ)3ܤηǤbegХܤlenХ - ʬʬʸ֤ - - self[nth] = val - self[beg..end] = val - self[beg,len] = val - - Ƥι1ܤηǤnthХܤΥǡval () - 롥2ܤηbegХܤendХܤޤǤʬʸ - valȤͿ줿ʸ֤롥3ܤηbeg - ܤlenХʬʬʸvalȤͿ줿ʸ - ֤롥 - - capitalize - - ʸκǽʸ(줬ե٥åȤǤ)ʸ - ѴĤʸΥե٥åȤʸ֤롥 - - chop - - ʸκǸΥХȤڤȤʸѹ뤳Ȥ - դ뤳ȡ - - crypt(salt) - - crypt(3)ѤưŹ沽ʸ֤salt2ХȰʾĹ - ǤդʸǤ롥 - - delete(str) - - ʸΤstr˴ޤޤʸ롥ʸλtr - ƱͤǤꡤa-babޤǤϰϤƬ^ʸ( - ޤƤʤΤ)̣롥ʸѹ뤳Ȥ - դ뤳ȡ - - downcase - - ʸΥե٥åȤƾʸ֤ʸ֤ - - each - - ʸ1Ԥɤ߹Ǥ륤ƥ졼 - - each_byte - - ʸΤ줾ΥХȤˤĤƷ֤ƥ졼 - - gsub(pattern[, replace]) - - ʸpattern˥ޥåʬreplace֤롥 - ʸreplace&\0ϥޥåʸˡ\1..\9nܤ - ̤Ƥ֤롥replaceά줿ˤϥ - 졼Ȥư֥åɾִ̤롥 - - hex - - ʸ16ʿɽʸȲᤷơѴ롥 - - index(substr[, pos]) - - substrǽ˽и֤֤posͿȤΰ֤鸡 - Ϥ롥Ĥʤˤnil֤ - - intern - - ʸ˰դб֤ʸϥʥʸޤǤϤ - ʤ - - length - size - - ʸĹ(Хȿ)֤ - - ljust(width) - rjust(width) - center(width) - - ʸ줾졤ͤᡤͤᡤwidthʸ - ֤ʸĹwidthĹϸʸ֤ڤ - ʤ - - next - - selfendޤǡּΡʸ֤ʸȤϿϿ - ȤơʸϱʸȤä夬νԤʤ줿 - ΤǤ롥 - - "aa".next => "ab" - "99".next => "100" - "a9".next => "b0" - - oct - - ʸ8ʿɽʸȲᤷơѴ롥8ʿ - /[0-7]+/ǤꡤʸƬ餳Υѥ˥ޥå - ʬѴ롥ƤϤޤʤʸФ - Ƥ0֤perlȤϰäʸ0xϤޤäƤ뤫Ȥ - 16ʿȸʤƤ줿ϤʤƬ08ʿ - ǧ졤0֤ - - reverse - - ʸγƥХȤս¤٤ʸ֤ʸ2ХȤ - ʸޤǤƤ⤪ʤ˥Хñ̤ȿž롥 - split2ХʸΤǡ2Хʸޤʸʸ - ñ̤ȿžˤ - - "ʸ".split(//).reverse.join("") - - ȤФ褤 - - rindex(substr[, pos]) - - ʸsubstrǸ˽и֤֤posͿȤΰ - Ǹλ롥Ĥʤˤnil֤indexȤ - 1)ʸ鸡롥2)substrȤɽդ - ʤ2Ǥ롥 - - split([sep[, limit]]) - - ʸsepǻꤵ줿ѥˤäơեɤʬ䤹롥 - sepά줿ΥǥեȤϥƥѿ`$;'ͤѤ - 롥limitꤵ줿ˤϺlimitĤΥեɤʬ䤹롥 - split()ʬ䤵줿ʸޤ֤sepǻꤵ줿ѥ - ʸȥޥåʸ1ʸĤʬ䤵롥 - - squeeze([str]) - - ʸΤstr˴ޤޤʸϢ³Ƥ硤ʸ˰ - ̤롥strά줿硤٤ƤʸоݤȤ롥ʸ - λtrƱͤǤꡤ`a-b'abޤǤϰϤƬ`^' - ʸ(ޤޤƤʤΤ)̣롥ʸ - 뤳Ȥդ뤳ȡ - - strip - - ʸζ - - sub(pattern[, replace]) - - ʸpattern˥ޥåǽʬreplace֤롥 - ʸreplace&\0ϥޥåʸˡ\1..\9 nܤ - ̤Ƥ֤롥replaceά줿ˤϥ - 졼Ȥư֥åɾִ̤롥 - - sum([bits]) - - ʸbitsӥåȤΥå롥άͤ16Ǥ롥ruby - ǤϰʲΥɤSystem V`sum'ץƱͤ롥 - - while gets() - sum += $_.sum - end - sum %= 65536 - - swapcase - - ʸΥե٥åȤΤʸʸˡʸʸ - ֤롥 - - to_f - - ʸFloatѴ롥 - - to_i - - ʸ10ʿɽʸȲᤷơѴ롥 - - toupper - - ʸΥե٥åȤʸ֤ʸ֤ - tr("a-z", "A-Z")꾯® - - tolower - - ʸΥե٥åȤƾʸ֤ʸ֤ - tr("A-Z", "a-z")꾯® - - tr(search, replace) - - ʸsearchʸ˴ޤޤʸ¸ߤСreplaceʸ - бʸ֤롥replaceʸά줿 - ϶ʸͿ줿ȸʤreplaceʸsearchʸ - ûreplaceʸκǸʸ֤Ƥȸ - searchʸûˤбʸΤʤreplace - ñ̵뤵(BSDtrư) - - searchʸreplaceʸ`a-b'Ȥ줿硤 - abޤǤϰϤʸASCIIξǻꤷȤˤʤ롥 - searchʸκǽʸ`^'Ǥ硤³ʸ*ޤ - ʤ*ʸִоݤˤʤ롥 - - tr(1)εǽΤʸ뵡ǽϢ³ʸ̤ - ǽ̤Υåɤʬ䤵Ƥ롥εǽˤĤƤ - deletesqueezeȤΤȡ - - ؤΤᡤstr.tr(src,repl).squeeze(repl)å - tr_s(src,repl) Ƥ롥 - - unpack(template) - - ʸtemplateʸˤäƥѥåǤ - ޤ֤templateʸArray饹packåɤȤ - ƱͤǤ롥 - - a ASCIIʸ(³nullʸ䥹ڡĤ) - A ASCIIʸ(³nullʸ䥹ڡ) - b ӥåȥȥ(̥ӥåȤ̥ӥå) - B ӥåȥȥ(̥ӥåȤ鲼̥ӥå) - h 16ʸ(̥˥֥뤬) - H 16ʸ(̥˥֥뤬) - c char - C unsigned char - s sort - S unsigned sort - i int - I unsigned int - l long - L unsigned int - n ͥåȥХȥshort - N ͥåȥХȥlong - f ñư(¸) - d ư(¸) - x 1ХɤФ - X 1Хȸ - @ а֤ؤΰư - - rubyunpackperlȰäƥåηǽʤȤ - դ뤳ȡ - - - upcase - - ʸΥե٥åȤʸ֤ʸ֤ - - upto(end) - - selfϤޤäơendޤǡּΡʸͿ륤ƥ졼 - ʸȤstr.nextͿʸǤ롥 - - ΥåɤRange:eachѤƤΤǡʲΤ褦ʽ - ǽǤ롥 - - for i in "a" .. "ba" - print(i, "\n"); - end - - a, b, c, ... aa, ... az, baޤǤƹԤ˽Ϥ롥 - - - դʤФʤΤϡνλȽ羮طǤϤʤ - `=='ȽꤵƤ뤿ᡤ`..'黻Ҥκդͤ³ʸ˱ - դʸޤޤƤʤʲΤ褦ʾ̵¥롼פ - ٤äƤޤ - - for i in "0" .. "1a" - print(i, "\n"); - end - - ԤϤȤˤäǤƨƤ褦ȤƤȹͤ - ⤤뤫⤷ʤο¬ - -Single Methods: - - new(string) - - stringƱƤĿʸ֤ - -** Struct(饹) - -¤Υ饹ʣΥǡޤȤѤ(: Time::times) -ǡޤȤˤ饹Ѥ뤳Ȥ⤢뤬(: select) -¤ΤȤ٤ϰʲΤ褦ʾǤ롥 - - (1) Ǥο - - ǤοưΤϹ¤ΤȤΤˤϸʤ - - (2) Ǥο¿ - - ʹ֤٤ưפ˰복ǰο7ĤޤǤǤȤ⤬롥 - β˽СǤ4İʾ夢ǡξѤ - 硤ǿ*2(ĤޤꥪեåȤȤΰ̣)7ۤ롥äơ - Τ褦ʾˤϹ¤ΤȤä䤹Ȼפ롥 - - (3) Ʊ̤ʤ - - ¤Τ㴳Ȥ⤤Τǡ®٤ˤʤ - (㤨Ʊ̤ʤ)Ϲ¤ΤλѤŬڤǤʤ - ǽ롥 - -ƹ¤Τˤϥ̾Ʊ̾ΰΤʤåɤ롥 - -ܥɥǡ¤Τɽ뤿ˤϰʲηȤ - - struct ¤̾ - ... - end - -ץǤηǹ¤Τ櫓ǤϤʤ - -SuperClass: Object - -Included Modules: Enumerable - -Methods: - - self[idx] - - idxλidxܤǤ֤idxʸλidxƱ̾ - ΥФǤ֤ - - values - - ¤ΤΥФͤǤ˻֤㤨аʲΥɤ - ʬpasswdȥϤ뤳ȤǤ롥 - - print(Etc.getpwuid().values.join(":"), "\n") - - νϤ`grep "$USER" /etc/passwd'νϤ;ʬʥեɤ - Ĥ(ƥˤäưۤʤ)ʳƱǤ롥 - -Single Methods: - - new(name, member::value..) - - nameȤ̾ŤΤ롥memberϹ¤ΤΥФ - ɽʸǤꡤvalueϤͤǤ롥줿¤Τϥ - Фǻꤵ줿̾ðۥåɤƤơΥå - ˤäƥФƤ뤳ȤǤ롥 - -** Time(饹) - -֤ɽ饹羮ӤʤɤǤ롥Time.nowǸߤλ֤뤳 -Ǥ롥ޤեΥॹפåɤͤ⤳Υ -ΥǤ롥 - -SuperClass: Object - -Included Modules: Comparable - -Methods: - - self <=> other - - otherTimeΥͿ줿 - ˤ1970ǯ 1 1 00:00:00 GMTÿǤ - ƻȤӤԤʤ - - asctime - ctime - to_s - - date(1)ʸѴ롥 - - gmtime - - ॾνԤʤʤGMTǤλ롥Υå - ȤäTime饹ΥϡʸλѴGMT - ԤʤgmtimeϼʬȤ֤ - - ɥλɽˤ - - print(Time.now.gmtime, "\n") - - ȤФ褤 - - localtime - - ॾνԤʤä(ǥե)localtime - ϼʬȤ֤ - - to_i - tv_sec - - 1970ǯ 1 1 00:00:00 GMTޤǤÿ֤ - secondʬǤ⤢롥 - - sec - min - hour - mday - year - wday - yday - zone - isdst - - ŪݻƤtm¤ΤƤ֤zoneʳ֤ - zoneϥॾɽʸ֤(cf localtime(3)) - - strftime(format) - - formatʸ˽äʸѴ̤֤format - ʸȤƻǤΤ ʲ̤Ǥ롥 - - %A ̾(Sunday, Monday,..) - %a ξά̾(Sun, Mon,..) - %B ̾(January, February,..) - %b ξά̾(Jan, Feb,..) - %c ɽ(cf ctime(3)) - %d ʿǤ(01-31) - %H 24λ(00-23) - %I 12λ(01-12) - %j ǯ̻(001-366) - %M ʬ(00-59) - %m ɽ(01-12) - %p ޤϸ(AM,PM) - %S (00-61) - %U ɽǽ1 - Ϥޤ(00-53) - %W ɽǽη1 - Ϥޤ(00-53) - %w ɽ0(0-6) - %X (: 15:01:06) - %x (: Fri Jan 14 1994) - %Y ɽ - %y β2(00-99) - %Z ॾ - %% % - - usec - tv_usec - - micro secondʬ֤ - -Single Methods: - - now - - ߤλɽTime饹Υ롥 - - at(time) - - timeƱɽTime饹Υ롥time - Time饹Υ뤤Ͽ(/ư)Ǥꡤ - ξ1970ǯ 1 1 00:00:00 GMTÿǤȤƻ - 롥 - - times - - ߤΥץȤλҥץ桼/ƥCPU - ѻ¤ΤȤ֤(Struct) - - struct tms - utime # ץΥ桼 - stime # ץΥƥ - cutime # ҥץΥ桼 - cstime # ҥץΥƥ - end - - ֤ñ̤äǤꡤưͿ롥ܺ٤ - times(3)ȤΤȡ - -* CȤΥե - -rubyCȤΥեC줫Υ饹⥸塼 -CǵҤåɤrubyΥåɤθƤӽФ -졼θƤӽФ㳰ʤɤԤʤȤ롥ޤOSм -ԻCǽ줿⥸塼ɤ뤳Ȥ롥 - -Ūʥե˴ؤƤϡ̥ɥ(źեե C-IF) -ȤΤȡ - -* ʸˡ - -ʲϵBNFǵҤrubyʸˡǤ롥ΤʵҤparse.y -줿 - -PROGRAM : COMPEXPR - -COMPEXPR : EXPR (TERM EXPR)* [TERM] - -EXPR : MLHS `=' ARGS - | ASSOCS - | return ARGS - | fail ARGS - | yield ARGS - | identifier CALL_ARGS - | PRIMARY `.' identifier CALL_ARGS - | super CALL_ARGS - | undef FNAME - | alias FNAME FNAME - | include identifier (`,' identifier)* - | EXPR if EXPR - | EXPR while EXPR - | EXPR and EXPR - | EXPR or EXPR - | ARG - -ARG : LHS `=' ARG - | LHS OP_ASGN ARG - | ARG `..' ARG - | ARG `...' ARG - | ARG `+' ARG - | ARG `-' ARG - | ARG `*' ARG - | ARG `/' ARG - | ARG `%' ARG - | ARG `**' ARG - | `+' ARG - | `-' ARG - | ARG `|' ARG - | ARG `^' ARG - | ARG `&' ARG - | ARG `<=>' ARG - | ARG `>' ARG - | ARG `>=' ARG - | ARG `<' ARG - | ARG `<=' ARG - | ARG `==' ARG - | ARG `!=' ARG - | ARG `=~' ARG - | ARG `!~' ARG - | `!' ARG - | `~' ARG - | ARG `<<' ARG - | ARG `>>' ARG - | ARG `::' ARG - | ARG `&&' ARG - | ARG `||' ARG - | PRIMARY - -PRIMARY : `(' EXPR `)' - | LITERAL - | VARIABLE - | super `(' [CALL_ARGS] `)' - | super - | PRIMARY `[' [ARGS] `]' - | `[' [ARGS [`,']] `]' - | `{' [ (ARGS|ASSOCS) [`,'] ] `}' - | redo - | break - | continue - | retry - | return - | fail `(' ARGS `)' - | fail `(' `)' - | fail - | yield `(' ARGS `)' - | yield `(' `)' - | yield - | PRIMARY `{' [ITER_VAR] `|' COMPEXPR `}' - | identifier `(' [CALL_ARGS] `)' - | PRIMARY `.' identifier `(' [CALL_ARGS] `)' - | PRIMARY `.' identifier - | if EXPR THEN - COMPEXPR - (elsif EXPR THEN COMPEXPR)* - [else COMPEXPR] - end - | while EXPR TERM COMPEXPR end - | case COMPEXPR - (when ARGS THEN)+ - [else COMPEXPR] - end - | for ITER_VAR in EXPR TERM - COMPEXPR - end - | begin - COMPEXPR - [resque COMPEXPR] - [ensure COMPEXPR] - end - | class identifier `:' identifier - COMPEXPR - end - | module identifier - COMPEXPR - end - | def FNAME ARGLIST - COMPEXPR - end - | def SINGLETON `.' FNAME ARGLIST - COMPEXPR - end - -THEN : TERM - | then - | TERM then - -ITER_VAR : LHS - | MLHS - -MLHS : LHS `,' [LHS (`,' LHS)*] [`*' LHS] - -LHS : VARIABLE - | PRIMARY `[' [ARGS] `]' - | PRIMARY `.' identifier - -CALL_ARGS : ARGS - | ASSOCS - | ARGS `,' ASSOCS - | ARGS `,' `*' ARG - -ARGS : ARG - | ARGS `,' ARG - -ARGLIST : `('[identifier(`,'identifier)*][`*'identifier]`)' - | TERM - -SINGLETON : VARIABLE - | `(' COMPEXPR `)' - -ASSOCS : ASSOC (`,' ASSOC)* - -ASSOC : ARG `=>' ARG - -VARIABLE : VARNAME - | nil - | self - | `__FILE__' - | `__LINE__' - -LITERAL : numeric - | SYMBOL - | STRING - | REGEXP - | GLOB - -TERM : `;' - | `\n' - -겼ϻǧ롥 - -SYMBOL : `:'FNAME - | `:'VARNAME - -FNAME : identifier | `::' | `..' | `|' | `^' | `&' - | `<=>' | `==' | `=~' | `>' | `>=' | `<' | `<=' - | `<<' | `>>' | `+' | `-' | `*' | `/' | `%' | `**' - | `~' | `+@' | `-@' | `[]' | `[]=' - -VARNAME : GLOBAL - | `@'identifier - | identifier - -GLOBAL : `$'identifier - | `$'any_char - -STRING : `"' any_char* `"' - | `'' any_char* `'' - | ``' any_char* ``' - -REGEXP : `/' any_char* `/'[i] - -GLOB : `<' any_char* `>' - -* ռ - -RubyθͤϿ¿θαƶƤ. ʲˤΤϤμ -ʸǤ롥 - - C, Perl, CLU, Sather, CLOS, Eiffel, Icon, tcl, AWK, bourne shell, - Smalltalk, Emacs Lisp. - -ޤrubyθͤꤹ뤿˶ϤƲäʲˤ롥 - - ͷƣϺ¼Σţáغܣģţá - ʤֺ.ٻ(ɾά) -------------------------------------------------------- -Local variables: -fill-column: 70 -end: |