summaryrefslogtreecommitdiff
path: root/ruby.texi
diff options
context:
space:
mode:
authorYukihiro Matsumoto <matz@ruby-lang.org>1996-12-24 15:20:58 +0900
committerTakashi Kokubun <takashikkbn@gmail.com>2019-08-17 22:09:32 +0900
commit554b989ba1623b9f6a0b76f00824c83a23fbcbc1 (patch)
tree71f06227fe259bebaa5ca4bf05cc398184bced68 /ruby.texi
parentfca49a8a69a0f6bb4feae74c6cd0e93d7fac8b36 (diff)
version 0.99.4-961224v0_99_4_961224
https://cache.ruby-lang.org/pub/ruby/1.0/ruby-0.99.4-961224.tar.gz Tue Dec 24 15:20:58 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * version 0.99.4-961224 * configure.in: charがunsignedかどうかもチェック * regex.c (SIGN_EXTEND_CHAR): __CHAR_UNSIGNED__にも対応 * pack.c (pack_unpack): 明示的にsigned charを指定. Mon Dec 23 14:41:23 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * ruby.c (load_file): 標準入力からのスクリプトで一時ファイルを使わ ないように * object.c (f_integer): `0x', `0'などでbaseを解釈するように. Fri Dec 20 01:44:39 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * Makefile.in (flock.o): flockに対応 Thu Dec 19 20:13:32 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * version 0.99.4-961219 Wed Dec 18 00:06:48 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * glob.c (glob_filename): strrchrがマクロの場合に対応 * configure.in: <sys/select.h>をチェック * ext/kconv/kconv.c: 1.62ベースに * ext/kconv/kconv.c: Kconvモジュール * string.c (str_substr): lenが元の文字列より長い時に対応 * parse.y (iterator): 「$bar do .. end」などは許さないように * parse.y (iterator): FID(foo!,foo?)をdo形式のイテレータにできる. * missing/flock.c (flock): lockf()を使って代替 * file.c (file_flock): flockを実装 Tue Dec 17 12:13:38 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * version 0.99.4-961217 Fri Dec 13 02:05:03 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * configure.in: RUBYLIBのカレントを後回し(@mix/awk offline) * dln.c: AIXに対応した?(@mix/awk offline) * eval.c (thread_schedule): critical sectionでも明示的なコンテキス トスイッチは起きないとまずい * re.c (reg_search): matchに失敗した時に$~をnilに. * re.c (reg_search): 毎回matchを生成するように Thu Dec 12 17:03:30 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * numeric.c (flo_to_s): 2.0.to_s -> 2.0に * eval.c (thread_save_context): $_, $~をthread毎に保存 * eval.c (thread_kill): main threadではexit(0) * string.c (str_split_method): 間違った結果を返していた Thu Dec 12 15:32:48 1996 WATANABE Hirofumi <watanabe@ase.ptg.sony.co.jp> * dir.c: CYGWIN32対応 * ext/socket/socket.c: CYGWIN32対応 * io.c: CYGWIN32対応 Thu Dec 12 14:43:51 1996 Jun Kuroda <j_kuro@pluto.ai.kutech.ac.jp> * lib/tk.rb: wish4.2も探索候補に含める * config.guess: JCC対応 Thu Dec 12 00:41:17 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * version 0.99.4-961212 * parse.y (parse_string): """..."""はやはり無くすことにした * parse.y (parse_regx): %r|...|でterminatorを \ でエスケープできる ように * signal.c (posix_signal): sigactionを使うsignal * configure.in: posix signal/bsd signalの検出 Wed Dec 11 17:47:35 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * eval.c (thread_schedule): critical sectionではコンテキストスイッ チが起きないように * lib/thread.rb: SharedMutexクラス * lib/jcode.rb: String#scanを使うように Tue Dec 10 12:21:28 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * version 0.99.3-961210 * string.c (str_split_method): 正規表現に()を含む時にバグ * lib/jcode.rb: ちょっとましになった * string.c (tr_setup_table): 置換文字が短すぎる(2文字)のときのバグ Mon Dec 9 11:38:04 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * string.c (str_scan): 文字列のマッチを行う.イテレータとしても動 作する * regex.c (re_copy_registers): allocatedが初期化されていなかった * re.c (match_to_s): $~の文字列化 * re.c (match_to_a): $~を配列化できるように * re.c (match_getter): レジスタが初期化されていなかった Thu Dec 5 11:06:10 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * string.c (str_split_method): マッチしなかった括弧は空文字列を pushするべきではない * string.c (str_succ): アルファベットを含まない文字に対応 Wed Dec 4 10:48:09 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * version 0.99.3-961204 * io.c (io_binmode): DJGPPでのbinmode対応 * sprintf.c (f_sprintf): intの範囲の数値は直接sprintfで変換する * sprintf.c (f_sprintf): "%02s"に頼らない * re.c (reg_search): indexでSEGV Tue Dec 3 10:09:36 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * version 0.99.3-961203 * ext/extmk.rb.in (install): INSTALL_DATAからINSTALLに変更 * dln.c: hpux対応 * string.c (str_aset_method): 負の値を含む範囲でも例外を起こさない * array.c (ary_replace): 負の値を含む範囲でも例外を起こさない * array.c (beg_len): beg==endの時,長さ0に Mon Dec 2 14:07:12 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * configure.in: HP shl対応 * string.c (str_upto): beg > endの時無限ループに落ちるのを止めた * range.c (range_each): String#uptoが再定義された場合に対応 * string.c (str_split_method): "ABC".split(/(B)/)が誤動作 Sat Nov 30 01:43:52 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * eval.c (rb_eval): undefでSEGV Fri Nov 29 12:17:59 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * sample/ruby-mode.el (ruby-parse-region): %Q#..#などに対応.しか し,区切り文字が演算子で行末にある場合には対応できなかった. * re.c (reg_raise): 例外でもスラッシュをエスケープ * re.c (reg_inspect): スラッシュをエスケープ * parse.y (parse_string): `%[QqXxRr](.)..\1'なる文字列形式(テスト 採用) * parse.y (parse_qstring): '''...'''の形式 * ext/dbm/dbm.c (Init_dbm): 述語key?,value?の追加 * ext/dbm/dbm.c (Init_dbm): includes->include? * hash.c (Init_Hash): 述語key?,value?,include?の追加 * eval.c (rb_eval): else節が実行されない(うーん) * string.c (str_sub_iter_s): イテレータブロック内でマッチが行われ ると位置がずれる(時に無限ループに落ちる) * string.c (str_resize): lenが0の時sizeの調整が行われなかった Thu Nov 28 00:59:54 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * version 0.99.3-961128 * parse.y (parse_string): 3-quote styleの文字列(例:"""abc"d"e""") * configure.in (EXTSTATIC): extを静的にリンクする時にはrubyはdllを 使うように * io.c (Init_IO): getsの引数が間違っていた * string.c (str_each_line): RSを明示的に指定できるように Wed Nov 27 12:37:46 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * version 0.99.3-961127 * eval.c (rb_eval): iver defined? でselfを指定するのを忘れた * io.c: gets等でRSを明示的に指定できるように * ext/extmk.rb.in (install): static linkに失敗 Tue Nov 26 10:33:04 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * version 0.99.3-961126 * string.c (str_sub_s): 置換後の文字列長さが間違っていた Mon Nov 25 09:11:22 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * numeric.c (fix_rshift): 32以上の右シフトで0を返すように(Cの rshiftは(x>>(y%32))を返していた). * string.c (str_gsub): 置換が行われない場合があった * string.c (str_resize): 本当に必要な時だけrealloc Thu Nov 21 04:13:21 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * configure.in (EXTSTATIC): --with-static-linked-extで全てのモジュー ルを静的リンクするように * pack.c (pack_unpack): 行末の改行がない時にもチェックサムをスキッ プするように Wed Nov 20 96 21:42:51 1996 Yasuo OHBA <jammy@shljapan.co.jp> * configure.in: freebsd対応 Wed Nov 20 10:24:24 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * ext/extmk.rb.in (install): 通常リンク用のLDFLAGSとダイナミックリ ンク用のDLDFALGSを分離 * ext/extmk.rb.in (install): コンパイルの成功したものを静的リンク のリストに追加する * eval.c (f_missing): オブジェクトの文字列表現が長すぎる時バッファ を書き潰していた * process.c (proc_exec_v): forkした後例外を発生させてはいけない Tue Nov 19 13:28:15 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * version 0.99.3-961119 * eval.c (mod_method_defined): Module#method_defined? の追加 * parse.y (call_args): 引数が唯一のコマンドコールである時のバグ(戻 り値が展開されてしまう) Mon Nov 18 13:28:18 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * string.c (str_sub): 失敗した時にnilを返していた * string.c (str_split_method): 検索開始位置が移動してなかった * ext/socket/socket.c (sock_s_getservbyaname): まだ間違っていた * version 0.99.3-961118 * string.c (str_sub_s): 元の文字列を置換するのを止めた * pack.c (encodes): 領域外をアクセスしていた Fri Nov 15 17:10:35 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * bignum.c (big_divmod): Bignumが引数の場合の対応忘れ * sample/ruby-mode.el (ruby-expr-beg): word?形式への対応が不完全 Wed Nov 13 15:42:40 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * string.c (str_tr_s_bang): tr_sでtrが行われていなかった * eval.c (rb_eval): autoloadクラスのチェック * string.c (f_sub): subがsub!と同じ動作になっていた * eval.c (thread_sleep): stopとsleepの分離 Mon Nov 11 13:53:19 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * version 0.99.3-961111 * numeric.c (fix_step): to, stepが整数以外の場合に対応 * eval.c (rb_call): dynamic varがdynamic scopingになっていた(これ はまずい) * string.c (str_chop_bang): 長さ0の文字列のchopで,領域外のアクセ スが発生していた. * parse.y (yyerror): 割り当てた領域外をアクセスしていた Fri Nov 8 11:54:46 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * eval.c (thread_yield): scopeをheapにコピー Thu Nov 7 09:56:53 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * numeric.c (num_coerce): とりあえず両辺をFloatに変換することに Wed Nov 6 10:45:13 1996 Yasuo OHBA <jammy@shljapan.co.jp> * lib/parsearg.rb: 第2引数を変更. Tue Nov 5 14:21:09 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * version 0.99.3-961105 Sat Nov 2 01:11:40 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * bignum.c (big_pow): typo (dy -> dx) * bignum.c (big_divmod): 知らない型はfloatに変換してみる * numeric.c (fix_lshift): 境界条件のバグ(負になっていた) * bignum.c (big_pow): 無駄なfloatへの変換をなくした * math.c (math_atan2): typo(x -> y) Fri Nov 1 15:30:59 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * ext/socket/socket.c (sock_gethostname): gethostnameがない時には unameを使ってホスト名を得る * ext/etc/etc.c (etc_getlogin): getloginがNULLを返しても環境変数を 調べるように * object.c (krn_clone): オブジェクトのフラグもコピー * hash.c (rb_cmp): ハッシュの比較を`=='でなく`eql?'に変更 * math.c (Need_Float): Float()を使って変換する * compar.c (cmp_gt): 以前の右辺を返す仕様の名残が残っていた Thu Oct 31 12:55:51 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * version 0.99.3-961031 * numeric.c (Init_Numeric): typo * eval.c (error_print): 長すぎるtrace backを途中省略する * regex.c (re_compile_pattern): 全角のrangeに対応 Wed Oct 30 03:03:18 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * version 0.99.3-961030 * io.c (f_ungetc): 関数を追加 * eval.c (dyna_var_asgn): return値忘れ Tue Oct 29 10:05:28 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * string.c (f_split): 関数splitを追加 * eval.c (rb_call): ネストした外側のクラス/モジュールの定数を参照 できるように Mon Oct 28 09:51:03 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * string.c (str_sub): offsetが文字の末尾にある時のチェック * regex.c (re_match): 割り当てるレジスタの数が1多かった * io.c (io_gets): $/ = ""の動作をperlに合わせる(awkとはちょっと違 うらしい) * io.c (io_gets): $/ = nilの時少し高速化 * string.c (str_split_method): 括弧がnullにマッチした時にも無視し ないように * string.c (str_split_method): 括弧にマッチした分はlimitの数に含め ないように. * numeric.c (num_coerce_bin): coerceの定義を変更,2要素の配列 [x,y]を返すように * sample/ruby-mode.el (ruby-calculate-indent): "do |aa|"の対応を改 善した. Sat Oct 26 01:43:51 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * ext/marshal/marshal.c (w_object): ビルトインクラスのサブクラスを 正しく復旧できるように * ext/marshal/marshal.c (w_object): ユーザ定義dumpの優先 * numeric.c (flo_coerce): Float()を使って定義 * numeric.c (Init_Numeric): Numericのnewのundefはまずい * ext/marshal/marshal.c (w_symbol): シンボルの内容(文字列)は一度し かファイルに書き出さない. * sample/ruby-mode.el (ruby-parse-region): if/while修飾子に対応し なくなっていた * bignum.c (Init_Bignum): Bignum.newを除く * eval.c (rb_eval): 引数評価後にファイル名と行番号を再設定 * numeric.c (flo_div): typo * sample/ruby-mode.el (ruby-parse-region): def /, def `に対応 Fri Oct 25 09:26:29 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * sample/ruby-mode.el (ruby-calculate-indent): "do |aa|"に対応 * array.c (ary_aset): indexがfixnumの場合ちょっと高速化 * eval.c (thread_fd_writable): 書き込み前のselectチェック * array.c (ary_assoc): 無限ループに落ちた * eval.c (thread_wait_for): selectがエラー終了した時,linux以外で の動作が正しくなかった. Thu Oct 24 08:26:48 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * eval.c (backtrace): `$@'を文字列から配列に変更した. * eval.c (eval): eval中の例外発生位置を保存する * bignum.c (bigsub): オペランドの大小比較の失敗 * re.c (reg_search): 直接参照がない時にも`$~'がセットされるように Wed Oct 23 10:40:10 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * version 0.99.2-961023 * ext/marshal/marshal.c (r_bytes): mallocをやめ,allocaを使う * sample/ruby-mode.el (ruby-calculate-indent): 括弧の対応を変更. ()内ではインデントをレベルを合わせるように Tue Oct 22 12:59:11 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * hash.c (hash_s_new): sizeを指定できるように * ext/marshal/marshal.c (w_object): dumpする深さ制限を指定できるよ うに * array.c (ary_s_new): sizeを指定した時の初期化忘れ * object.c (f_float): big2dblの宣言忘れ. * bignum.c (bigsub): 大きさの近いBignum同士の演算で結果が負になる 場合に間違いがあった. * array.c (ary_aset): 置換先と置換元が同じ長さの時内容を shift(memmove)しないように. * ext/marshal/marshal.c (marshal_dump): ファイルフォーマットにバー ジョンを埋め込むように * ext/marshal/marshal.c (tmpnam): linux-aout-dln用に定義 Mon Oct 21 08:40:20 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * ext/socket/socket.c (sock_s_gethostbyname): hostent構造体の情報 を返す (sock_s_gethostbyaddr): IPアドレスからhostent構造体を得る (sock_s_getservbyaname): getservbyname(3) Fri Oct 18 10:37:36 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * sample/ruby-mode.el (ruby-indent-to): 移動先カラムが負になるバグ * eval.c (compile): evalで元ソースの行番号でエラーを表示する Thu Oct 17 09:52:28 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * eval.c (eval): evalで文法エラーがあった時にSEGV * lib/safe.rb: Restricted.evalの中だけ制限を加える. * eval.c (error_print): バックトレースの出力.callerで例外発生位置 を調整した時に問題が出る(そんなことをしなければ良いのだが…) * eval.c (make_backtrace): バックトレースの生成 Wed Oct 16 12:56:22 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * ruby-man-0.99.2-jp/index.html: 日本語版ドキュメントの完成(長かった…) * re.c (reg_regcomp): $=がnilの時の処理 * string.c (f_chop): $_に対するchop Tue Oct 15 11:04:23 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * version 0.99.2-961015 Mon Oct 14 18:22:38 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * eval.c (thread_schedule): BOW対応.selectが-1を返した時にバグ(実 はdo .. whileがcontinueで先頭にジャンプすると思い込んでいた.条 件の直前だったのね ^^);;;;; * sample/ruby-mode.el (ruby-mode-syntax-table): ?のsyntaxが"/"では まずいらしい * hash.c (rb_hash): name conflict Fri Oct 11 00:23:05 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * version 0.99.2-961011 * ext/marshal/marshal.c (w_object): 結局動いていなかった循環オブジェ クト対応を外した. * hash.c (rb_hash): Fixnumと文字列の高速化 * ext/marshal/marshal.c (w_object): 無駄なデータの削除(フォーマッ トの非互換性) * io.c (io_readline): 戻り値の不備 * ext/marshal/marshal.c (marshal_dumps): MSDOS対応 * ruby.c (load_file): MSDOS対応 Wed Oct 9 17:46:27 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * ext/extmk.rb.in (install): 無駄なコピーを避ける * string.c (str_sub_method): マッチがなかった時のString#subの値が 違っていた. * eval.c (obj_extend): extendした時にobject_extendedを呼ぶように Tue Oct 8 00:55:38 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * eval.c (thread_alloc): 割当の平均化 * eval.c (thread_schedule): joinのバグを修正 * eval.c (thread_wait_for): selectへの割込みなどに対応 * eval.c (thread_select): linuxのselectの挙動に対応(timeoutが変化 する) Mon Oct 7 09:47:19 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * version 0.99.2-961007 * eval.c (PUSH_BLOCK): the_classの保存を忘れていた. * ext/dbm/dbm.c (fdbm_store): sizeの保存する場所が間違っていた * ext/socket/socket.c (s_accept): thread対応していなかった Sat Oct 5 01:32:27 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * io.c (io_readchar): EOFで例外を発生させる Fri Oct 4 11:59:54 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * ext/marshal/marshal.c (w_object): HashとObjectの復旧に必要なハッ シュテーブルが渡されていなかった. * variable.c (rb_path2class): ユーザ定義クラスの復旧に失敗していた * variable.c (rb_path2class): クラスが存在しない時のエラーをFatal からNameErrorへ. * range.c (range_s_new): first,lastが両方Numericの時エラーになって いた. * range.c: start->first, end->last Wed Oct 2 02:02:46 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * file.c: DJGPPでchmod,chownを使えるように(ってDOSにchownがあるのか?) * class.c (rb_singleton_class): ビルトインクラスもextendしたり特異 メソッドを追加したりできるように * variable.c (rb_set_class_path): ユーザ定義のトップレベルクラスに pathを設定しない * eval.c (eval): 例外がRuntimeErrorに化けていた * eval.c (eval): eval中の例外の表現の改善 * eval.c (eval): eval_with_bindingとの一本化 * eval.c (rb_eval): クラス/モジュール定義の中から定義中のクラス/モ ジュールが参照できるように Tue Oct 1 01:40:09 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * version 0.99.2-961001 * parse.y: cur_crefが2度宣言されていた * signal.c (trap): SIGSEGV,SIGBUSのない機種に対応 * io.c (Init_IO): 引数タイプの指定間違い Mon Sep 30 15:28:00 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * version 0.99.2-960930 * config.guess,config.sub: $host_osが正しく設定されない * eval.c (rb_eval): yieldで正しくないselfが設定されていた * eval.c (ruby_run): toplevelの例外処理のバグ Mon Sep 30 09:13:26 1996 WATANABE Hirofumi <watanabe@ase.ptg.sony.co.jp> * djgpp対応 Sat Sep 28 02:45:10 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * version 0.99.2-960928 * sample/ruby-mode.el (ruby-beginning-of-block): ブロックの先頭に 移動(正しくインデントしていないと動作しない) (ruby-end-of-block): 同上 * eval.c (class_s_new): Class#newがイテレータとして呼ばれた時は initializeもイテレータとして呼ばれるように * signal.c (sigsegv): SEGVでbacktraceを表示するように Fri Sep 27 09:51:07 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * version 0.99.2-960927 * eval.c (error_print): 引数のないraiseでメッセージが正しく表示さ れるように. * eval.c (rb_longjmp): mesgがnilの時RuntimeErrorを生成する. * eval.c (f_raise): 引数がない時に対応 * eval.c (thread_mark): stack上にないデータのアドレス変換を行って いた. * eval.c (Init_Thread): 割込みの間隔が1秒と長すぎた. Thu Sep 26 16:02:45 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * eval.c (thread_schedule): 一度ペンディングになるとフラグがクリア されていなかった. * process.c (rb_proc_exec): system/execの引数が空文字列であった場 合,例外を発生すべきだった. * config.sub/config.guess: 新しいものに置き換え Thu Sep 26 15:41:35 1996 WATANABE Hirofumi <watanabe@ase.ptg.sony.co.jp> * io.c (next_argv): -i.bakをBOWとDOSに対応. Thu Sep 26 01:31:43 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * io.c (io_sysread): EOFで例外 * io.c (f_readline): EOFで例外を発生するように.getsは互換性のため nilを返すままにする * eval.c (proc_call): lambdaからのreturnでIN_BLOCKフラグが立ったま まだった * eval.c (PUSH_BLOCK2): threadに対応するためBlockを一度stackにコピー Wed Sep 25 11:54:11 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * parse.y (method_call): Const::method()形式を使えるようにしてみた. 引数括弧は省略できない. * sample/test.rb: Process.killの存在を確かめてからテストを行う * eval.c (eval_with_binding): 第2引数としてbinding(またはlambda)を 与えるとその環境でevalを実行するようにした * eval.c (f_binding): 現在のbindingを返す関数 * eval.c: block構造体にthe_classを保存するメンバを追加 * process.c (Init_process): kill,wait,waitpidをProcessに移動 Tue Sep 24 02:44:43 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * sample/ruby-mode.el: いろいろ問題が多いので以前の高速化は破棄. 別のアプローチを使った. * lib/tk.rb (Tk.pack): 複数のウィンドウを受け付けるpack Sat Sep 21 11:08:09 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * parse.y (exprs): 空文も受け付けるように文法を変更.今までは改行 の連続だけが許されていた. Fri Sep 20 11:39:18 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * Failの大半を名前つき例外に変更. * re.c (Init_Regexp): 名前つき例外を導入. * eval.c (f_missing): Objectはinspectしない. * object.c (inspect_i): Object#inspectでloopに対応. * regex.c (re_search): /^$/が""にマッチしなかった. Thu Sep 19 19:25:12 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * regex.c (re_search): /^$/が非空行にマッチしていた. Tue Sep 17 10:28:11 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * version 0.99.2-960917 Mon Sep 16 10:47:56 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * sample/ruby-mode.el (ruby-calculate-indent): 演算子継続の場合の 文字列の判定のバグ * sample/ruby-mode.el (ruby-calculate-indent): elseなどの次の行の インデント計算を正しく. Sat Sep 14 08:37:19 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * version 0.99.2-960914 Fri Sep 13 08:06:03 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * ext/socket/socket.c (tcpaddr): port番号にntohsをつけ忘れ * dln.c (link_undef): テーブルの種類が間違っていた. * bignum.c (bigadd): 引き算が発生する時に計算違いが起きていた. * parse.y (iter_do_block): do..endでもdynamic variableを. * bignum.c (big_pow): より正確な計算を(整数同士ではfloatに変換しな い). Thu Sep 12 13:11:55 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * variable.c (rb_set_class_path): Stringクラスが初期化される前に Stringを作っていた.組込みクラスにはpathはいらない * parse.y (yylex): 0.1が0になっていた * parse.y (yylex): 行番号の不整合 * gc.c (oblist_live_obj): 今「生きている」全部のオブジェクトを返す イテレータ.そのクラス(またはサブクラス)の全部のインスタンスを返 すeach_object_ofも定義した. * class.c (rb_define_class_id): 無駄なクラスを割り当てていた.結果 として未初期化のクラスオブジェクトが存在していた. Wed Sep 11 00:56:23 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * parse.y (yylex): octalの定数の検出をより正確に(090はエラーとか). * bignum.c (big_minus): yがxより大きい場合にエラー. * parse.y (yylex): エラー行番号の表示をより正確に * sample/ruby-mode.el (ruby-expr-beg): 変数名が1文字の時誤動作して いた. * sample/ruby-mode.el (ruby-calculate-indent): ?/でループに落ちい たバグを修正. * enum.c (enum_min,enum_max): sortのようにイテレータとしても動作す るように. * enum.c (enum_find_all): typo Tue Sep 10 12:07:12 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * node.h (nd_line): NODEのlineをflagsに押し込めてオブジェクトサイ ズを小さくした.制限:32bit intのマシンの場合,ファイルの行数が 32767を越えると正常に表示されない. * st.c: hashとcompareの関数メンバを構造体にパック,クラス的な使い 方を行う.1 tableあたり4 byteの節約. Mon Sep 9 16:35:54 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * file.c (file_truncate): 提供されない時には特別な例外を発生するよ うに. * eval.c (Init_Proc): 不適切な位置のlocal-jumpを例外に. Sat Sep 7 17:06:15 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * eval.c (proc_call): まだスコープがスタック上にある時には局所脱出 を有効にする.これで,procを生成してcallすることは,スコープを脱 出しない限り,yieldと同じ意味を持つことになる. Fri Sep 6 13:30:59 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * sample/ruby-mode.el (ruby-indent-to): インデントが変わらない時に はバッファを変更しない. (ruby-calculate-indent): まず文字列の内部か判断してから,前の行 からパーズを行う.defunが大きくなった時の高速化. (ruby-in-string-p): 文字列の内部かどうかを判断する関数(以前の parseから分離) (ruby-parse-region): 文字列に対する処理をはずす. (ruby-beginning-of-block): ブロックの先頭に (ruby-end-of-block): ブロックの末尾に(遅い…) Thu Sep 5 14:23:07 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * file.c (file_s_split): [dirname,basename]にsplitする. * eval.c (rb_eval): evalの中でも定数の値が正しくなるように.これで 定数に関しては静的なスコープが保証されるようになった. * st.c (rehash): ハッシュ拡大の系数を2から1.79に.割算がより良い値 を返すように. Thu Sep 5 00:32:07 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * eval.c (class_superclass) クラスのスーパークラスを返すメソッド. Wed Sep 4 16:54:56 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * random.c (f_rand): Bignumやlongの範囲を越えるFloatに対する乱数も 発生できるように. * struct.c (struct_alloc): Fatalではなく例外を発生させるように(通 常の使用で発生しうる). * struct.c (struct_s_members): Structの特異メソッドではなく,生成 されたStructクラスの特異メソッドにした. * st.c (st_init_table): ruby専用にパラメタを固定にした(サイ ズが減った) Mon Sep 2 11:37:59 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * array.c (ary_shift): capaがあまりにも大きい時には領域をREALLOC (ary_pop): 同上 * string.c (str_inspect): multibyte character 対応にミス. (str_inspect): unsigned charにしないと符号展開されてしまう * parse.y (primary): `::'をprimaryに移動 Foo::Bar.Bazがエラーにな らないように. * parse.y (primary): オペレータ形式の特異メソッドが定義できない * random.c (f_rand): maxが0の時に対応 * io.c (io_printf): 関数を定義していたがインタプリタに登録していな かった. * file.c (file_s_basename): 第2引数が無い時にエラー. Thu Aug 29 10:49:40 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * parse.y (expr): イテレータの新形式に「method do .. end」形式を採 用した.もちろん昔の形式も有効. * sample/ruby-mode.el (ruby-calculate-indent): endの数の方が多い場 合にもエラーを起こさないように. Wed Aug 28 09:41:36 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * numeric.c (upto,downto,step,times): 対象がfixnumの範囲を越えても 動作するように. Mon Aug 26 10:04:37 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * missing/setenv.c (envix): typo(missing `== 0' for memcmp) * dir.c (dir_foreach): foreach(dir open -> read loop -> closeまで) * io.c (io_foreach): foreach(file open -> read loop -> closeまで) * Fatalのうち捕捉可能ないくつかを例外に. Sat Aug 24 23:56:37 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * bignum.c (bigdivmod): FIX2INT -> INT2FIX 大間違い Fri Aug 23 18:13:03 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * regex.c (re_free_registers): allocateしていない時には当然 free してはいけない. Thu Aug 22 01:20:35 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * eval.c (thread_create): 外側から強制終了させられたthreadは cleanupする必要が無い. Wed Aug 21 09:57:28 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * eval.c (thread_create): threadを終了させた大域脱出の情報を main_threadに渡すように. * parse.y (call_args): 最終引数に括弧を省略したメソッド呼出しを置 けるように(例: print foo bar, baz == print(foo(bar,baz))) Tue Aug 20 13:37:16 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * eval.c (masign): 多重代入とrest引数の動作を合わせて空の配列を代 入するように. * parse.y (arg): defined?の強度をもうちょっと強く * eval.c (error_print): -wで例外名も表示するように * eval.c (rb_eval): 新構文に対応 (handle_rescue): 捕捉する例外を kind_of? で同定 * parse.y (primary): rescueの構文を変更(同定引数の追加,複数rescue) * Fail()のかなりを適当な例外を使うように * eval.c (thread_interrupt): Interrupt(今はnon-local jump)は main-threadに送られるように. * eval.c (rb_longjmp): $! の内容を文字列から例外クラスに変更 (rb_raise): rb_fail から名称変更 (rb_interrupt): 例外化 (rb_exit): 例外化 * error.c (Init_Exception): 例外クラスの新設(文字列のサブクラス) Mon Aug 19 19:40:52 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * signal.c (trap): 古いハンドラを返すように. Wed Aug 14 00:07:18 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * eval.c (rb_trap_eval): ハンドラのためにthreadをforkすることを止 めた. * eval.c (thread_mark): thread毎の $!, $@ をマークし忘れ * ext/dbm/dbm.c (fdbm_delete): イテレータとして呼ばれた場合,要素 が無ければブロックを評価する. * hash.c (hash_delete): イテレータとして呼ばれた場合,要素が無けれ ばブロックを評価する. * array.c (ary_delete): イテレータとして呼ばれた場合,要素が無けれ ばブロックを評価する. * eval.c (rb_interrupt): SIGINTのデフォルトをexitから特別な大域脱 出に.やはり割り込まれた位置の表示が無いのは寂しいので. Tue Aug 13 01:34:00 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * eval.c (rb_exit): sub-thread内でのexitもstatusを保存するように (thread_create): 自thread内のexitに対応 * signal.c (sighandle): SIGINTのデフォルトハンドラはexitするように (以前は例外を発生していた). * 例外の一部をFatalに. * string.c (str_aset): 文字列の置換の対象が部分文字列でなかった時, 例外を発生させないように * eval.c (proc_call): Procの中からbreak/nextは通し,他のものは通さ ないように Mon Aug 12 14:15:09 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * object.c (krn_type): 文字列を返す * eval.c (thread_create): sub-thread内でのexitに対応 * numeric.c (fix_type): 文字列を返す * io.c (f_p): デバッグ用データ表示メソッド * eval.c (f_missing): nil/TRUE/FALSEを特別扱い * string.c (str_inspect): 長い文字列を短縮表示.inspectの働きを human readable stringの生成に統一(re-generatable string は正式に 無くなった). Sat Aug 10 16:54:21 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * object.c (Init_Object): kernel/nil/false/trueのクラス名を変更(小 文字に),rubyスクリプトからアクセスできないように. * eval.c (rb_eval): CONSTANTのアクセス先を単純化.crefを使わない. * eval.c (f_eval): 特異メソッド内でも定数の値が正しくなるように Fri Aug 9 12:23:17 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * array.c (ary_concat): append -> concat Stringに合わせた * parse.y (yylex): `$;'が使えなかった. * array.c (ary_push_method): 複数引数を受け付けるように. (ary_unshift): 複数引数を受け付けるように. * io.c (io_popen): IO.popenでcommand pipeが開けるように. * object.c (Init_Object): KernelとNilをruby scriptからアクセスでき ないように. Thu Aug 8 01:21:47 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * object.c (f_integer): 整数への変換関数 (f_float): 実数への変換関数 (f_string): 文字列への変換関数 (f_array): 配列への変換関数 * bignum.c (big_to_i): FIXNUMの範囲でない時はBignumのまま返すよう に変更. Wed Aug 7 09:28:38 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * version 0.99.1-960807 * parse.y (mlhs): 「*foo = 1,2,3」タイプの多重代入も可能に. * object.c (Init_Object): クラスTrue/Falseをruby scriptからアクセ スできないように. * object.c (nil_inspect): inspect表現は"nil"に * io.c (io_print): nilのprintをnilに. * object.c (nil_to_s): nilの文字列表現を""に. Tue Aug 6 01:12:32 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * dir.c (dir_s_open): file descripterが足りない時にはgcしてからも う一度openしてみる. * io.c (rb_fopen): すべてのfopen()についてfile descripterが足りな い時にはgcしてからもう一度openしてみる. * ext/socket/socket.c (Init_socket): 定数の追加. * sample/ruby-mode.el (ruby-indent-to): インデント後のカーソル位置 の調整を正しく. * gc.c (gc): 割込みチェックを行わない(Cコードの中で安心して malloc()が使えなくなるので). * st.c (call_hash_func): signalとthreadによる割込みに対応. * sig.h (DEFER_INTS): 割込み禁止区間の指定 * eval.c (f_require): threadによるrequireの競合に対応(最初の requireが終了するまで他のthreadは待つ). * bignum.c (str2inum): 0x80000000の値が負になっていた * sprintf.c (f_sprintf): 文字列末尾,行末の単独の`%'に対応 * bignum.c (big_cmp): 比較の結果が逆になる時があった. Mon Aug 5 10:58:13 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * process.c (proc_exec_v): 例外のメッセージを分かりやすく. * ext/dbm/dbm.c (fdbm_store): nilを格納すると要素の削除になる * ext/dbm/dbm.c: サイズをキャッシュ. Sat Aug 3 01:52:52 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * eval.c (rb_fail): `fail'が引数無しで呼ばれた時だけ以前の`$@'を保 存するように. * eval.c (f_fail): frameの調整 Fri Aug 2 11:26:21 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * ext/socket/socket.c (bsock_setopt): valとしてTRUE/FALSE/Fixnumも 受け付けるように. * ext/socket/socket.c (Init_socket): SO_REUSEADDR等の定数の追加 * ext/md5/md5init.c: md5モジュール(初の複数ファイルからなるモジュー ルでもある) * ruby.h (Make_Data_Struct): Data: objectのinstance変数に格納 -> Data型のObjectに(Dir,Time,Proc,Thread,DBM) Thu Aug 1 11:38:44 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * ext/dbm/dbm.c (fdbm_store): valueが文字で無い時に対応 Wed Jul 31 10:53:42 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * ext/socket/socket.c (open_inet): htonsが必要であった (tcpaddr): ntohlで変換した * process.c (rb_proc_exec): execvp -> execv Tue Jul 30 17:48:33 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * eval.c: `$?'をthread localに * Makefile.in (install): install時にstripを行う * configure.in: install時のstripの検出 * configure.in: NEXTSTEP対応 * version 0.99.1-960730 Tue Jul 30 16:40:35 1996 SHIROYAMA Takayuki <psi@fortune.nest.or.jp> * dln.c (dln_load): NeXT dln(mach-o)対応.configureは未対応 Tue Jul 30 09:46:51 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * process.c (f_system): 複数引数もとれるように * process.c (f_exec): 複数引数もとれるように * array.c (ary_append): 配列(またはEnum)の要素を破壊的に追加 * array.c (ary_plus): Enumはその要素を追加 * file.c (file_s_open): File.openを追加 * struct.c (struct_new): FIX2INTを忘れていた * file.c (Init_File): exists? -> exist? * object.c (obj_is_kind_of): is_kind_of? -> kind_of?, is_a? * object.c (obj_is_instance_of): is_instance_of? -> instance_of? Mon Jul 29 16:40:02 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * parse.y (parse_regx): 式展開を行った場合,casefoldの設定ができて いなかった. * object.c (true_type): TRUE/FALSEにtypeを実装. * parse.y (read_escape): 3文字以内のoctalに対応(\0とか) Fri Jul 26 00:31:45 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * array.c (ary_reverse_bang): in-placeで配列を反転させる (ary_sort_bang): in-placeでsortする (ary_sort): sortした配列を返すように (ary_delete_at): 指定した位置の要素を削除する * eval.c (rb_call): stack深さチェックを毎回は行わないように * error.c (Warning): 実行中のwarningが表示されていなかった * eval.c (compile): 例外発生を分離. * eval.c (f_eval): 変数rb_in_evalを正しく管理するように * ext/dbm/dbm.c (fdbm_store): 格納するkeyを文字列に変換 * eval.c (rb_call): 無限再帰のチェックを大域脱出を行うC methodにも 対応させた.threadのstack深さチェックルーチンを流用. * parse.y (yylex): 第1引数のunary -/+の判定が間違っていた. * parse.y (yylex): unary +で数字を余計に読んでいた(ex. +5 -> 55) Thu Jul 25 12:15:04 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * parse.y (yylex): 曖昧でない引数に対して警告を出していた. * eval.c (iterator_p): 引数で呼んでも正しい結果を返すように. * parse.y: break/next/redo/retryのメソッド化. * sample/ruby-mode.el (ruby-calculate-indent): nestのチェックミス * sample/ruby-mode.el (ruby-parse-region): 予約語のチェックを強化 * parse.y (primary): unless/untilの復活 Tue Jul 23 18:50:10 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * array.c (Array#empty?), Hash.c (Hash#empty?), ext/dbm/dbm.c (DBM#empty?): 空の判定述語 * eval.c (f_unless): ifの逆をするイテレータ * eval.c (f_until): whileの逆をするイテレータ * parse.y: notの優先順位をand/orより高く * parse.y (expr): `!'を引数括弧を省略したcallでも有効に Mon Jul 22 10:15:38 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * version 0.99-960722 * array.c (ary_print_on): OFSのNILチェックが不完全 * ruby.c (load_file): 標準入力からのスクリプトが空の時に対応. * ruby.c (proc_options): -wでは引数無しの時には標準入力からスクリ プトをとる(-vではたんに終了する). * array.c (ary_compact): nilの要素を取り除くメソッド * array.c (ary_nitems): nilでない要素を数えるメソッド Sun Jul 20 00:51:53 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * ruby.c (proc_options): -w optionを追加 * parse.y: {}が閉じていない時には展開しない文字列を Fri Jul 19 16:16:05 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * version 0.99-960719 * lib/find.rb: 石塚版(pruneの拡張付き) * file.c (test_l): lstatで調べないとね. * eval.c (f_throw): 第2引数を省略可能に. * parse.y (str_extend): {}のネストに対応 Thu Jul 18 18:25:46 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * version 0.99-960718 * parse.y (str_extend): 文字列中の式展開に \" ' ` / を含む事ができ るように. Tue Jul 16 15:55:31 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * sample/ruby-mode.el (ruby-parse-region): 正規表現内のエスケープ に対応 * version 0.99-960716 Fri Jul 12 10:06:19 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * io.c (f_select): 引数のclose check. * ruby.c (load_file): #!行の引数チェックを第1引数に限定(実をいうと DOS改行対策) Wed Jul 10 17:18:35 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * version 0.99-960710 * time.c (time_s_timegm/time_s_timelocal): 時間を生成するメソッド Mon Jun 17 15:59:20 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * version 0.99-960617 * parse.y (yyerror): エラー表示の簡略化. Wed Jun 12 14:11:01 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * signal.c (rb_trap_exit): trap 0はthreadを生成せずに処理する. Fri Jun 7 10:17:01 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * array.c/hash.c (indexes): 配列1引数のパターンを無くした.配列の 場合は`*ary'を使ってもらおう. * eval.c (thread_wait_threads): main_threadが終了する前に他の threadを待つ(強制的には終了させない). (ruby_run): 他のthreadを待っている間にシグナルが来たら,全thread を強制終了させる. * eval.c (rb_fail): メソッド名を`$!'に埋め込む. * eval.c (thread_create): main_threadのコンテクストがセーブされな い場合があった. * process.c (f_sleep): 時間を指定せず,threadがひとつしかない状況 にも対応. * eval.c (thread_create): create後,fnを呼び出す前にcontext switch が起きると違うcontextでfnが実行されてしまうバグ. Mon Jun 3 08:03:17 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * struct.c (struct_s_def): メンバの指定を文字列,シンボル(FIXNUM) 双方で可能にした. * ext/etc/etc.c (Init_etc): 構造体オブジェクトをGCから保護した. * error.c (rb_sys_fail): nil/FALSEを引数として受け付けるように. Thu May 30 16:19:08 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * eval.c (thread_select): EINTRに対応. Wed May 29 11:04:51 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * eval.c (f_catch): catch/throwを実装した. Tue May 28 13:30:52 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * version 0.99-960528 * eval.c (thread_cleanup): main threadが終了すると他のthreadも終了 することの明確化. * signal.c (trap): SIGINTのデフォルトの設定ミス(本当にSIG_DFLでは まずかった).rubyではちゃんとハンドルしないと. * eval.c (thread_interrupt): SIGINTはmain_threadに例外を発生させる ように. Mon May 27 15:13:31 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * eval.c (thread_status): threadの状態を返すメソッド.threadの終了 を待たない. * eval.c (thread_value): 一種のpromiseを実装するためのメソッド. * eval.c (thread_join): 待っているthreadが例外を起こした時には, joinがその例外を発生するように. * eval.c (thread_create): threadでの例外をpropagateしないように. Fri May 24 10:47:53 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * enum.c (Init_Enumerable): `size' as alias to the `length' * eval.c (thread_save_context): `$@', `$!'をスレッド毎にセーブ. * eval.c (superclass): エラー表示をより親切に. Thu May 23 10:38:41 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * version 0.99-960523 * eval.c (superclass): エラー時にスーパークラス名を(分かれば)表示 するように. Wed May 22 19:48:42 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * parse.y (superclass): スーパークラスの指定子を`:'から`<'に変更. Tue May 21 09:27:59 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * lib/thread.rb: threadをサポートするクラス(Mutex, Queue). Mon May 20 09:39:49 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * time.c (time_cmp): 浮動小数点数も扱えるように. (time_minus): Time - Timeが浮動小数点数を返すように. Fri May 17 15:40:10 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * process.c (rb_proc_exec): Thread対応時にexecの直前に ITIMER_VIRTUALをリセットする. Tue May 14 02:12:44 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * signal.c (sighandle): SIGINTに対してデフォルトで例外を発生させる のをやめ,status 130でexitするようにした. * eval.c (thread_schedule): Threadのバグはほとんどとれたようだ. Fri May 10 11:21:08 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * eval.c (thread_schedule): ユーザレベルThread機能.効率はともかく 移植性はある.今後,thread間の通信機能を実装する予定. Thu May 2 21:22:31 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * time.c (time_timeval): struct timevalを直接返すように(static変数 を使わない). Wed May 1 17:27:32 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * process.c (f_sleep): 整数以外のtimeを指定できるように. Thu Apr 25 08:19:15 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * file.c (file_s_dirname): ファイル名が"/"を含まない時,"."を返す ように(GNU dirnameの仕様). * file.c (file_s_basename): まだnilと0を混同しているソースが残って いた. * parse.y (exprs): エラーリカバリを追加. Wed Apr 24 15:51:05 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * string.c (str_chop_bang): CRLFの場合2 bytesをchop!するように. * ext/socket/socket.c (tcp_svr_s_open): まだnilと0を混同しているソー スが残っていた. Tue Apr 23 18:14:25 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * pack.c (pack_pack): "A/a"のバグ.余計なpaddingが入っていた. Thu Apr 18 13:02:11 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * configure.in: アーキテクチャ依存部を別ディレクトリにインストール するように. * parse.y (yyerror): エラー発生時にエラー行とその位置を表示するよ うに. Wed Apr 17 14:22:42 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * defines.h: SAFE_SIGHANDLEを無くし,危険な選択はできないように. * io.c (io_ungetc): 新機能. * ruby.c (load_file): ファイルからの読み込み方式が変わったのに対応. * parse.y (compile_file): ファイルからの入力を一度全部読み込むのを 止めて,getsを使うことにした. Wed Apr 10 17:40:11 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * version 0.98 Tue Apr 9 09:54:30 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * parse.y (iter_block): イテレータブロックの指定をメソッド呼び出し に限定.文法の明確化. * eval.c (rb_eval): 条件式の正規表現の比較をinline化. * eval.c (rb_eval): defined? の 定義情報(種別)を文字列で返す. * node.h: NODE_BEGIN -> NODE_RESCUE, NODE_ENSUREに分離. * eval.c (rb_eval): option -n/-pのトップレベルループのinline展開. * parse.y (cond0): 条件式中の文字列は比較の対象としない Wed Mar 27 12:33:54 1996 Tairo Nomura <tairo@hucom.tp.titech.ac.jp> * defines.h: NeXT対応 Wed Mar 27 10:02:44 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * parse.y: 予約語の変更 continue -> next Mon Mar 25 07:34:37 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * parse.y (parse_regx): o(once)オプションを追加. Fri Mar 22 14:25:35 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * version 0.97d * eval.c (dyna_var_defined): 動的ローカル変数の定義チェック用ルー チン. * parse.y (gettable): eval()の中での動的ローカル変数(既に値を持っ ているもの)の検出に失敗していた. Tue Mar 19 10:46:47 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * version 0.97c * re.c (reg_s_new): compile時にsegmentation fault. * parse.y (str_extend): いつもevalするように. Wed Mar 13 11:00:42 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * parse.y (str_extend): 文字列中の式展開の不備を無くした. * parse.y: 下手なエラーリカバリを外した. Tue Mar 12 12:30:20 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * eval.c (rescue): 間違ってensureでも例外を捕捉していた. Wed Mar 6 12:11:03 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * parse.y (var_extend): 変数展開"#{}"で,任意の式を書けるようにし た,これで「変数」展開では無くなっちゃったなあ. * regex.c (init_syntax_once): `_'をwordに追加. * regex.c (re_compile_pattern): `\w',`\W'の判定をsyntax tableを使 うように. Tue Feb 27 10:15:32 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * object.c (obj_inspect): 表示するインスタンス変数が無い時には, to_sを使う. * configure.in: dlnの検出を自動的に. Mon Feb 26 19:55:33 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * ruby.c (readin): read(2)で一度にファイルが読み込めない場合に対応. Sat Feb 24 14:47:18 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * version 0.97b Fri Feb 23 11:26:02 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * class.c (rb_define_module): C言語で定義されたモジュールのPATHの 設定忘れ.文字列化でcore dump. * eval.c (mod_include): 戻り値をnilに. * version 0.97a Thu Feb 22 21:03:42 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * array.c (ary_times): 「配列*文字列」がjoinと同じ働きをするように. Wed Feb 21 11:18:09 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * configure.in : fileCountをcache. * configure.in : LinuxでELF環境を自動的に検出できるよう. Tue Feb 20 11:18:09 1996 Mitsuhide Satou <mit-sato@aries.bekkoame.or.jp> * FreeBSD dynamic link対応. Fri Feb 16 08:50:01 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * object.c (obj_inspect): インスタンス変数を持たないオブジェクトも 正しく表示されるように. Wed Feb 14 16:56:44 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * eval.c (rb_eval): 条件式の`2..2'など左辺成立直後に右辺が成立する パターンにバグ. Tue Feb 13 18:22:22 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * version 0.97 Fri Feb 9 21:32:55 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * lib/tkscrollbox.rb: スクロールでtclの設定を行い,ruby<->wishの不 要な通信を無くした. Wed Feb 7 10:26:52 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * string.c (str_aref): indexをunsigned intでとっていた. * string.c (str_aref): 範囲外のindexに対してnilを返す. * parse.y (special_local_set): `$_'が宣言無しに使われた場合に対応. 関数をvariable.cから移動. * string.c (str_sub): 置換開始位置が間違っていた. Tue Feb 6 16:17:31 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * sample/ruby-mode.el (ruby-parse-region): コメントの読み飛ばしの バグ. Fri Feb 2 18:35:28 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * variable.c (lastline_get): `$_'を`$~'と同じようにSCOPEローカルな 変数にした. Thu Feb 1 14:14:07 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * file.c: statのcacheをやめた. Wed Jan 31 07:13:08 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * eval.c (proc_s_new): procの中でyieldを呼ばれた時にcore dumpして いた.とりあえず例外を発生させる. * variable.c (rb_class2path): singleton classに対応. * ext/etc/etc.c (Init_etc): struct_defineのターミネータがnilだった (0でなければならない). * ext/marshal/marshal.c: TRUE/FALSEを吐き出せるように. * eval.c (rb_get_method_body): キャッシュのalias対応,いままでは aliasはキャッシュに入っていなかった. Tue Jan 30 09:55:13 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * eval.c (rb_eval): NODE_BLOCK - tail recursive(というほどでもない が). * io.c (io_pipe): pipe(2)を実装した. * eval.c (rb_eval): Qselfをなくした.thread対応への第一歩.先は遠 いが…. * eval.c (proc_call): procの中でのreturnはprocの終了を意味するよう に.ただし,procからのyieldの中でのreturnは例外を発生する. Wed Jan 24 11:33:48 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * version 0.96a * dir.c (dir_each): `$_'の値を変更するのをやめた. * io.c (f_readlines): nilとFALSEの分離のあおりで無限ループに落ちて いた. * ruby.c (ruby_options): $0の設定ミス. Tue Jan 23 15:28:21 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * eval.c (rb_eval): ``は文字列を引数とするメソッド(`)呼び出しのシ ンタックスシュガーであるとした. * ruby.c (addpath): `-I'オプションでディレクトリが「前に」追加され るように変更. Fri Jan 19 11:23:12 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * dln.c (load_1): N_INDR対応(出来たような気がする). Thu Jan 18 18:14:20 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * ruby.texi: FALSEとnilの分離を反映した. Tue Jan 16 17:39:23 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * version 0.96 - とりあえずnilとFALSEを区別する版 Wed Jan 10 15:31:48 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * re.c (reg_match): マッチしなかった時の戻り値はFALSE. * object.c (rb_equal): `0 == nil'がTRUEになるバグ. Tue Jan 9 00:44:58 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * nilとFALSEが分離可能に変更. * nilとFALSEと0の区別を厳密に. * struct.c (struct_new): 引数を0で終る必要が無くなった. * object.c (inspect_i): オブジェクトのチェックのバグ(Fixnumでcore dumpしていた). * range.c (range_to_s): Rangeの表示を改善. * object.c (true_inspect): TRUEの表示を`TRUE'に. Mon Jan 8 15:02:33 1996 Yukihiro Matsumoto <matz@caelum.co.jp> * numeric.c (fix_mul): divide by zero errorが発生した(オーバーフロー 検出のバグ) * texinfo.texをパッケージに含めた. Sun Dec 31 00:08:49 1995 Yukihiro Matsumoto <matz@caelum.co.jp> * eval.c (rb_eval): `::'では,そのクラスで定義された定数を参照する ように変更. * string.c (Init_String): eachをeach_lineに戻した. Thu Dec 28 12:31:55 1995 Yukihiro Matsumoto <matz@caelum.co.jp> * eval.c (rb_eval): caseの演算子を`=~'から`==='に. * variable.c (rb_const_set): クラス定数の再定義を許す(同じクラスで は不可).警告は出す. Wed Dec 27 13:27:52 1995 Yukihiro Matsumoto <matz@caelum.co.jp> * version 0.95c * ext/tkutil/tkutil.c: wishがあってもなくても一応コンパイルだけは するように. * lib/tk.rb: 環境変数PATHから{wish|wish4.0}を探すように. Tue Dec 26 01:03:42 1995 Yukihiro Matsumoto <matz@caelum.co.jp> * sample/ruby-mode.el (ruby-parse-region): 正規表現の検出強化. * numeric.c (fix_mul): 乗算のオーバーフロー検出アルゴリズムのバグ. * ext/extmk.rb.in: ./install-shを使う場合のPATHを調整. * Makefile.in (install): lib/*.rbを一つずつインストール. * io.c (io_each_line): イテレータの戻り値をnilで統一. Fri Dec 22 10:34:32 1995 Yukihiro Matsumoto <matz@caelum.co.jp> * version 0.95b * variable.c (f_untrace_var): 第2引数を指定すると特定のtraceを削除 できるように. * variable.c (f_trace_var): 第2引数がnilの時,traceを削除する. * lib/tk.rb (file_readable/file_writable): 第2引数をnilにすること によるevent handlerの削除. * parse.y (variable): ドキュメントに`__FILE__'と`__LINE__'が残って いた.`caller(0)'で代用したはずだったのに. * eval.c (f_eval): $!のリセット. * error.c (err_sprintf): 勝手に"\n"を付加するのを止めた. * parse.y (f_arglist): 引数リスト直後のif/whileの読み間違い. lex_stateの値が設定されていなかった. Co-authored-by: Jun Kuroda <j_kuro@pluto.ai.kutech.ac.jp> Co-authored-by: Mitsuhide Satou <mit-sato@aries.bekkoame.or.jp> Co-authored-by: SHIROYAMA Takayuki <psi@fortune.nest.or.jp> Co-authored-by: Tairo Nomura <tairo@hucom.tp.titech.ac.jp> Co-authored-by: WATANABE Hirofumi <watanabe@ase.ptg.sony.co.jp> Co-authored-by: Yasuo OHBA <jammy@shljapan.co.jp>
Diffstat (limited to 'ruby.texi')
-rw-r--r--ruby.texi5044
1 files changed, 0 insertions, 5044 deletions
diff --git a/ruby.texi b/ruby.texi
deleted file mode 100644
index 50ffb63a16..0000000000
--- a/ruby.texi
+++ /dev/null
@@ -1,5044 +0,0 @@
-\input texinfo @c -*-texinfo-*- created at: Tue Jun 20 16:58:39 JST 1995
-@setfilename ruby.info
-@settitle Ruby Reference Manual
-
-@titlepage
-@title Ruby Reference Manual
-@subtitle The Object-Oriented Scripting Language
-@author Yukihiro Matsumoto
-@author matz@@caelum.co.jp
-@end titlepage
-
-@node Top, Ϥ, (dir), (dir)
-
-Ruby Reference Manual
-
-@menu
-* Ϥ::
-* ޥɥ饤󥪥ץ::
-* rubyʸˡ::
-* Ȥ߹ߴؿ::
-* Ȥ߹ѿ::
-* Ȥ߹ߥ饹ȥ⥸塼::
-* CȤΥ󥿥ե::
-* ռ::
-* ʸˡ::
-* Variables Index::
-* Concept Index::
-* Function Index::
-@end menu
-
-@node Ϥ, ޥɥ饤󥪥ץ, Top, Top
-@comment node-name, next, previous, up
-@chapter Ϥ
-
-Ruby, ڤʥ֥Ȼظץߥ󥰤¸뤿μεǽ
-ĥ֥ȻظץȸǤ롥ܳŪʥ֥Ȼظ
-ǤSmalltalk, EiffelC++ʤɤǤ礲˻פ褦ΰǤΥ
-֥Ȼظץߥ󥰤ٱ礹뤳ȤŪȤ롥߷פδ
-§, ʲ̤Ǥ.
-
-@itemize @bullet
-@item
-
-
-ñ㳰ξʤʸˡǡ֥Ȼظץߥ󥰤ȥץȥ
-ߥ󥰤Τɬפʵǽʬ.
-
-@item
-
-
-ɬפ˱ưפ˵ǽĥǤ롥饹ͳɲäǤ뤳Ȥ,
-CץΥ󥯤ˤäƥ󥿥ץ꥿ˤ뵡ǽɲäǤ롥
-˥ץåȥեˤäƤ, ưŪ˥֥ȥɤ󥯤뵡
-ǽ󶡤.
-
-@item
-
-
-
-θ§ΤŬѤ褦ʰΤͤġ
-äơ֥ѥγڤפϸΤʤ,Τ
-䤹ˤ뤳ȤϤʤ.
-@end itemize
-
-RubyϡּڡפǤϤ뤬ܳŪʥ֥ȻظǽĤΤǡperl,
-tcl, pythonʤɥץȸ˥֥Ȼظǽɲä褦ʽ
-Ϥ⼫˥֥ȻظǤ롥˥١쥯㳰
-ǽϤŬʥץߥ󥰤ٱ礹롥
-
-RubyϥƥȽطεǽ˭٤(perlƱ餤)OSľ
-褦ʽ⵭ҤǤ롥ޤ, ʥ֥ȻظǤ
-, ɬפǤм³ץߥ󥰤ǽǤ.
-
-RubyshperlΤäƤͤˤȤäƤξQˤǤ¤꽾äΤ,
-θ̤ƤͤˤȤäƤϽ(¿ʬ)ưפץޤ
-RubyΥ֥ȻظǽˤĤƳؤ٤С궯ϤʤȤǤ褦
-
-@node ޥɥ饤󥪥ץ, rubyʸˡ, Ϥ, Top
-@comment node-name, next, previous, up
-@chapter ޥɥ饤󥪥ץ
-
-ruby󥿥ץ꥿ϰʲΰդ.
-
-@table @samp
-
-@item -0
-
-ϥ쥳ɥѥ졼(@code{$/})8ʿǻꤹ롥
-
-ꤷʤϥ̥륭饯ѥ졼ˤʤ롣θ¾Υ
-åäƤ褤
-
--00, ѥ饰ե⡼, -0777(Υɤʸ¸ߤʤΤ)
-ե٤ɤ߹⡼ɤǤ.
-
-@item -a
-@cindex{ȥץåȥ⡼}
-
-@code{-n}@code{-p}ȤȤѤ, ȥץåȥ⡼ɤONˤ롥
-ȥץåȥ⡼ɤǤϳƥ롼פƬ,
-
-@example
-$F = $_.split
-@end example
-
-¹Ԥ롥@code{-n}@code{-p}ץƱ˻ꤵʤ¤,
-Υץϰ̣ʤ.
-
-@item -c
-
-ץȤؤΥѥΤߤԤ, ¹Ԥʤѥ뽪
-λ, ʸˡ顼̵, @samp{"Syntax OK"}ȽϤ.
-
-@item -K c
-
-rubyνɤꤹ롥 rubyϻꤵ줿ʸ @code{E}
-@code{e}ξʸ䥢եƤΥɤEUC
-Ȳꤹ롥Ʊͤ@code{S}ޤ@code{s}ξSJISȤƽ롥
-@code{N}ϴʤǥեȤEUC.
-
-@example
-ruby -CE -e 'print "ƥ"'
-ruby -Cs -e 'print "ƥ"'
-ruby -Cn -e 'print "ƥ"'
-@end example
-
-ΥץϾʸɤμưȽ̵ǽɲä줿ˤѹ
-.
-
-@item -d
-@itemx --debug
-
-ǥХå⡼ɤonˤ롥Υե饰åȤȥƥѿ
-@code{$DEBUG}åȤ.
-
-@item -e @var{script}
-
-ޥɥ饤󤫤饹ץȤꤹ롥-eץդˤϰ
-饹ץȥե̾ʤ.
-
-@item -F @var{ʸ}
-
-ϥեɥѥ졼(@code{$;})ͤʸ˥åȤ롥awkƱ̾
-ΥץƱƯ򤹤.
-
-@item -i @var{extension}
-
-ǻꤵ줿եƤ֤(in-place edit)Ȥꤹ
-롥ΥեϳĥҤĤ¸.
-
-:
-
-@example
-% echo matz > /tmp/junk
-% cat /tmp/junk
-matz
-% ruby -p -i.bak -e '$_.upcase' /tmp/junk
-% cat /tmp/junk
-MATZ
-% cat /tmp/junk.bak
-matz
-@end example
-
-ĥҤʤСХååפϤ줺ѹ줿եĤ롥
-
-@item -I @var{directory}
-
-եɤѥ(ɲ)롥ꤵ줿ǥ쥯ȥruby
-ѿ@code{$:}ɲä.
-
-@item -l
-
-@code{$\}@code{$/}Ʊͤꤷ, @code{print}Ǥνϻ˲Ԥ
-ä롥ޤ, @samp{-n}ޤ@samp{-p}ȤȤѤ, Ϥ줿
-ƹԤκǸʸ@code{chop!}.
-
-@item -n
-
-Υե饰åȤȥץΤ
-
-@example
-while gets
- @dots{}
-end
-@end example
-
-ǰϤޤƤ褦ư.
-@item -p
-
-@code{-n}ե饰Ʊ, ƥ롼פκǸѿ@code{$_}ͤϤ.
-
-:
-
-@example
-% echo matz | ruby -p -e '$_.tr! "a-z", "A-Z"'
-MATZ
-@end example
-
-@item -r ե̾
-
-ץȼ¹˥ե̾ǻꤵե@code{require}롥
-@samp{-n}ץ@samp{-p}ץȤȤ˻ȤäͭǤ롥
-
-@xref{Ȥ߹ߴؿ}
-
-@item -s
-
-ץ̾³, @code{-}ǻϤޤᤷ, Ʊ̾ѿ
-ꤹ롥@code{--}ʤʹߤϲԤʤʤ
-@code{$ARGV}.
-
-:
-@example
-#! /usr/local/bin/ruby -s
-# -xyzץͿ"true"ɽ.
-print "true\n" if $xyz
-@end example
-
-@item -S
-
-ץ̾@code{/}ǻϤޤäƤʤ, Ķѿ@code{PATH}ͤ
-ȤäƥץȤõ ϡ@samp{#!} 򥵥ݡȤƤʤޥ
-ǡ@samp{#!} ˤ¹Ԥ򥨥ߥ졼Ȥ뤿ˡʲΤ褦ˤƻȤ
-ȤǤ:
-
-:
-@example
-#! /usr/local/bin/ruby
-# This line makes the next one a comment in ruby \
- exec /usr/local/bin/ruby -S $0 $*
-@end example
-
-ƥϺǽιԤ̵뤷ץȤ@code{/bin/sh}Ϥ
-@code{/bin/sh}rubyץȤ򥷥륹ץȤȤƼ¹Ԥ褦Ȥ롥
-2ܤ򥳥ȤǤȲᤷ3ܤ̾Υ륳ޥ
-ȤƼ¹Ԥruby󥿥ץ꥿ư롥
-
-ƥˤäƤ@code{$0}ɬեѥޤޤʤΤǡ@code{-S}
-Ѥrubyɬפ˱ƥץȤõ褦˻ؼ롥ruby
-ץȤ򸫤ĤȡιԤβϤϤ뤬ruby2ܤιˤ
-Хååˤꡤ2ܤΥȤ3ܤޤǷ³Ȥߤʤơ
-3ܤ̵뤹롥
-
-ե̾˴ޤޤ륹ڡʤɤˤϡ@code{$*}
-@code{$@{1+"$@@"@}}Τۤ褤csh᤹ˤư
-@cindex{OS#!ᤷʤк}
-
-@item -v
-@itemx --verbose
-
-Ĺ⡼ɡư˥СֹɽԤ, ƥѿ
-@code{$VERBOSE}򥻥åȤ롥ѿåȤƤ, Ĥ
-᥽åɤϼ¹Ի˾ĹʥåϤ롥@samp{-v}ץ󤬻
-ꤵ, ʳΰʤˤϥСɽ, ¹Ԥλ
-(ɸϤΥץȤԤʤ).
-
-@item --version
-
-rubyΥСɽ.
-
-ɽ:
-
-@example
-ruby - version 0.87 (95/09/23)
-@end example
-
-@item -x[directory]
-
-åΥץȤФƼ¹Ԥ롥ץȤɤ߹ˡ
-@code{#!}ǻϤޤ, @code{ruby}ȤʸޤԤޤǤɤФ
-ץȤν@samp{EOF}(եν), @samp{^D}(ȥD),
-@samp{^Z}(ȥZ)ޤͽ@code{__END__}ǻꤹ.
-
-ǥ쥯ȥ̾ꤹȡץȼ¹˻ꤵ줿ǥ쥯ȥ
-ܤ.
-
-@item -X directory
-
-ץȼ¹˻ꤵ줿ǥ쥯ȥ˰ܤ.
-
-@item -y
-@itemx --yydebug
-
-ѥǥХå⡼ɡץȤɽ˥ѥ뤹ιʸ
-Ϥβɽ롥ɽ˾ĹʤΤ, ѥ餽ΤΤ
-ǥХåͰʳɽʤɤȻפ.
-@end table
-
-@node rubyʸˡ, Ȥ߹ߴؿ, ޥɥ饤󥪥ץ, Top
-@comment node-name, next, previous, up
-@chapter rubyʸˡ
-
-@menu
-* Lexical structure::
-* ץ::
-* ::
-@end menu
-
-@node Lexical structure, ץ, rubyʸˡ, rubyʸˡ
-@comment node-name, next, previous, up
-@section Lexical structure
-
-ߤrubyμϥ饯åȤȤASCIIѤ롥rubyʸ
-ʸ̤롥̻ҤǤʤǤդΤȤ˶ʸ򤪤
-Ȥ롥ʸϥڡ(space)(tab)ľ(vertical
-tab) CR(carriage return)(form feed)Ǥ롥(newline)
-˼³ˤ϶ʸȤơʳǤʸζڤȤƲ
-ᤵ롥
-
-̻Ҥϱʸ(@samp{"_"}ޤ)Ϥޤꡤѿ³ΤǤ롥
-rubyμ̻ҤŤϤʤߤμϼ̻ҤȤƥޥХȥ
-(EUC,SJIS)̤ʤ
-
-̻Ҥ
-
-@example
-foobar
-ruby_is_simple
-@end example
-
-@menu
-* ::
-* ͽ::
-* ڤʸ::
-@end menu
-
-@node , ͽ, Lexical structure, Lexical structure
-@comment node-name, next, previous, up
-@subsection
-
-
-
-@example
-# this is a comment line
-@end example
-
-ץȸνˤʤ餤ʸʸɽ(@code{?#})ʳ
-@code{#}ޤǤϥȤȸʤȹΥХåå
-ϼιԤؤΥȤη³̣롥
-
-@node ͽ, ڤʸ, , Lexical structure
-@comment node-name, next, previous, up
-@subsection ͽ
-
-ͽϰʲ̤Ǥ
-
-@display
-alias def for redo undef
-and defined? if rescue when
-begin else in retry while
-break elsif module return yield
-case end nil self __END__
-class ensure not super __FILE__
-continue fail or then __LINE__
-@end display
-
-ͽϥ饹̾᥽å̾ѿ̾ʤɤѤ뤳ȤϤǤʤ
-@samp{$}, @samp{@@}ƬˤĤΤͽȸʤʤΤǡ
-Хѿ󥹥ѿˤĤƤʤ
-
-@node ڤʸ, , ͽ, Lexical structure
-@comment node-name, next, previous, up
-@subsection ڤʸ
-
-ʸʤɤΥƥʳξζʸ(֤ȥڡ)Ӳ
-(@samp{\n})ڤ국Ȥʤ롥˲Ԥ
-
-@example
-a +
-b
-@end example
-
-Τ褦˹ԤǽꡤιԤ³Ȥ(Ǹʸ
-黻Ҥ뤤@code{,}Ǥ)ζڤȤǧ롥
-
-@node ץ, , Lexical structure, rubyʸˡ
-@comment node-name, next, previous, up
-@section ץ
-
-
-
-@example
-print "hello world!\n"
-@end example
-
-ץϼ¤٤ΤǤ롥ȼδ֤ϥߥ(@code{;})ޤ
-ϲԤǶڤ롥
-
-@node , , ץ, rubyʸˡ
-@comment node-name, next, previous, up
-@section
-
-
-
-@example
-TRUE
-(1+2)*3
-foo()
-if test then ok else ng end
-@end example
-
-RubyǤ@code{nil}ʳɾ롥CPerlʤɤȤϰۤ
-ꡤ0@code{""}(ʸ)ϵȤɾʤΤǵĤ뤳ȡ
-
-ϳ̤ˤäƥ롼ԥ󥰤뤳ȤǤ롥
-
-@menu
-* ʸ::
-* ޥɽ::
-* ɽ::
-* ѿŸ::
-* ͥƥ::
-* ѿ::
-* Хѿ::
-* 󥹥ѿ::
-* 饹::
-* ѿ::
-* ѿ::
-* ::
-* Ϣ::
-* ᥽åɸƽм::
-* SUPER::
-* ::
-* 黻Ҽ::
-* 湽¤::
-* 饹::
-* ⥸塼::
-* ᥽å::
-* ðۥ᥽å::
-* ALIAS::
-* UNDEF::
-* DEFINED?::
-@end menu
-
-@node ʸ, ޥɽ, ,
-@comment node-name, next, previous, up
-@subsection ʸ
-@cindex ʸ
-
-
-
-@example
-"this is a string expression\n"
-'ʸ'
-@end example
-
-֥륯(@code{"})dz줿ʸϥХåå³ʸ
-ʲΤ褦˲ᤵ롥
-
-Хåå嵭ˡ
-
-@table @samp
-@item \t
-(0x09)
-@item \n
-ʸ(0x0a)
-@item \r
-ʸ(0x0d)
-@item \f
-ڡʸ(0x0c)
-@item \b
-Хåڡ(0x08)
-@item \a
-٥(0x07)
-@item \e
-(0x1b)
-@item \nnn
-8ʿɽ(n0-7)
-@item \xnn
-16ʿɽ(n0-9,a-f)
-@item \cx
-ȥʸ(xASCIIʸ)
-@item \x
-ʸxΤ
-@end table
-
-ޤ@code{#}ˤѿŸԤ롥
-
-@xref{ѿŸ}
-
-󥰥륯(@code{'})dz줿ʸϡ@code{\\}(Хå
-å夽Τ)@code{\'}(󥰥륯)ơʸȤ
-Ԥʤ
-
-ʸ󼰤󿷤ʸ󥪥֥ȤΤǡʸƤ
-Ƥ⡤ȤȤʸѤʤ
-
-@node ޥɽ, ɽ, ʸ,
-@comment node-name, next, previous, up
-@subsection ޥɽ
-@cindex ޥɽ
-
-
-
-@example
-`date`
-@end example
-
-RubyǤshΤ褦˥ޥɤμ¹Է̤ʸƥΤ褦˻ȤȤ
-Ǥ롥@code{``}ǰϤޤ줿ʸϡ֥륯ȤǰϤޤ줿ʸ
-Ʊͤ˥Хåå嵭ˡβѿŸԤʤ줿塤ޥɤȤ
-Ƽ¹Ԥ졤μ¹Է̤ʸȤͿ롥ޥɤɾ
-Ӥ˼¹Ԥ롥
-
-@node ɽ, ѿŸ, ޥɽ,
-@comment node-name, next, previous, up
-@subsection ɽ
-@cindex ɽ
-
-
-
-@example
-/^ruby the OOPL/
-/ruby/i
-@end example
-
-@code{/}ǰϤޤ줿ʸɽɽ@code{/}θʸ
-@code{i}Ϳ줿ˤϡɽϥޥåʸʸζ
-̤򤷤ʤ
-
-@table @code
-@item ^
-@item $
-
-@item .
-Ǥդ1ʸ
-@item \w
-ѿ[0-9A-Za-z_]Ʊ
-@item \W
-ѿ
-@item \s
-ʸ[ \t\n\r\f]Ʊ
-@item \S
-@item \d
-[0-9] Ʊ
-@item \D
-
-@item \b
-춭ʸ(ʸ饹)
-@item \B
-춭ʸ
-@item \b
-(0x08)(ʸ饹)
-@item [ ]
-ʸ饹
-@item *
-ľɽ0ʾη֤
-@item +
-ľɽ1ʾη֤
-@item {m,n}
-m󤫤nη֤
-@item ?
-0ޤ1
-@item |
-
-@item ( )
-ɽޤȤ
-@end table
-
-¾ʸƱХåå嵭ˡѿŸͭǤ롥
-
-@node ѿŸ, ͥƥ, ɽ,
-@comment node-name, next, previous, up
-@subsection ѿŸ
-@cindex ѿŸ
-
-
-
-@example
-"my name is #@{$ruby@}"
-@end example
-
-֥륯(@code{"})ǰϤޤ줿ʸ󼰡ޥʸɽ
-ӥ磻ɥɼǤ@code{#{ѿ̾}}ȤѿƤ
-Ÿ뤳ȤǤ롥ѿѿ(@code{$},@code{@@})ǻϤޤ
-@code{#ѿ̾}ȤǤŸǤ롥ʸ@code{#}³ʸ
-@code{@{},@code{$},@code{@@}ǤʤСΤޤʸ@code{#}ȤƲ
-롥
-
-@node ͥƥ, ѿ, ѿŸ,
-@comment node-name, next, previous, up
-@subsection ͥƥ
-
-@table @samp
-@item 123
-
-@item -123
-(Ĥ)
-@item 1_234
-(10ʿ@code{_}ޤळȤǤ)
-@item 123.45
-@item 1.2e-3
-@item 0xffff
-16
-@item 0377
-8
-@item ?a
-ʸ@code{a}Υ(97)
-@item ?\C-a
-ȥaΥ(1)
-@item ?\M-a
-᥿aΥ(225)
-@item ?\M-\C-a
-᥿-ȥaΥ(129)
-@item :ܥ
-̻/ѿ̾/黻ҤȰабsendʤɤǥ᥽åɤꤹ
-ʤɤ˻Ȥ
-@end table
-
-?ɽǤƤΥХåå嵭ˡͭǤ롥
-
-@node ѿ, , ͥƥ,
-@comment node-name, next, previous, up
-@subsection ѿ
-
-Rubyѿϥ(ͭϰ)ȼ̿(ͭ)ˤä4ʬव졤
-μѿ̾κǽΰʸǷꤵ롥̾ѿ2ʸܰʹߤ
-ѿޤ@code{_}Ǥ뤬ƥѿΰϡ@code{$}+1ʸε
-פȤѿ롥ѿ̾Ĺ˴ؤ̤¤Ϥʤ
-
-@menu
-* Хѿ::
-* 󥹥ѿ::
-* 饹::
-* ѿ::
-* ѿ::
-@end menu
-
-@node Хѿ, 󥹥ѿ, ѿ, ѿ
-@comment node-name, next, previous, up
-@subsection Хѿ
-
-
-
-@example
-$foobar
-$/
-@end example
-
-@code{$}ǻϤޤѿΥפϥХǤꡤץΤɤ
-Ǥ⻲ȤǤ롥μ̿ϥץμ̿Хѿˤ
-ɬפʤƤʤХѿ򻲾Ȥͤ
-@code{nil}Ǥ롥
-
-@node 󥹥ѿ, 饹, Хѿ, ѿ
-@comment node-name, next, previous, up
-@subsection 󥹥ѿ
-
-
-
-@example
-@@foobar
-@end example
-
-@code{@@}ǻϤޤѿϥ󥹥ѿǤꡤΥ饹ޤϥ֥
-饹Υ᥽åɤ黲ȤǤ롥פϥ᥽åǤꡤμ̿ϥ
-֥Ȥμ̿󥹥ѿˤɬפʤ
-Ƥʤ󥹥ѿ򻲾Ȥͤ@code{nil}Ǥ롥
-
-@node 饹, ѿ, 󥹥ѿ, ѿ
-@comment node-name, next, previous, up
-@subsection 饹
-
-
-
-@example
-FOOBAR
-@end example
-
-ʸǻϤޤ뼱̻ҤؤΥǤꡤǽ줿饹
-ƤΥ֥饹ΥǻȤǤ롥
-Ƥ⥸塼򥤥󥯥롼ɤ뤳ȤˤäƹԤʤ롥ؤ
-ϥȥåץ٥롤ʤ᥽åɤǤ٥ǤΤ߲ǽǤ롥
-ϥ饹֤ͤͭ졤ͤѹ뤳ȤǤʤ
-(㳰ȯ)饹μ̿ϥ饹μ̿
-Ƥʤ饹򻲾Ȥͤ@code{nil}Ǥ롥
-
-饹ϼưŪΤǡ饹̾Ǥ롥
-
-륯饹ޤϥ⥸塼°黲Ȥ뤿ˤ
-@code{::}黻ҤѤ롥
-
-
-@example
-Foo::Bar
-@end example
-
-@code{::}黻ҤѤϤǤʤ
-
-@node ѿ, ѿ, 饹, ѿ
-@comment node-name, next, previous, up
-@subsection ѿ
-
-
-
-@example
-foobar
-@end example
-
-ʸޤ@code{_}ǻϤޤ뼱̻Ҥϥѿޤϥ᥽åɸƽФ
-롥ѿפˤ뾮ʸǻϤޤ뼱̻Ҥؤκǽ
-Υפ°ѿˤʤ롥Ƥʤ̻Ҥ
-Ȥϰ̵᥽åɸƤӽФȤߤʤ롥
-
-ѿΥפϡѿ줿ƥ졼֥å᥽
-ޤϥ饹/⥸塼֥åνޤǤǤ롥̿⤽
-Υ֥åνޤ(ȥåץ٥Υѿϥץνλޤ)
-Ǥ뤬㳰Ȥƥƥ졼֥å³֥Ȳ줿
-ϡΥ֥ȤǤޤ¸ߤ롥Ʊפ򻲾Ȥ³
-֥ȴ֤Ǥϥѿ϶ͭ롥
-
-@node ѿ, ѿ, ѿ, ѿ
-@comment node-name, next, previous, up
-@subsection ѿ
-
-̾ѿʳ˵ѿȸƤФüѿ4Ĥ롥
-
-@table @code
-@item self
-ߤΥ᥽åɤμ¹Լ
-@item nil
-Nil饹ͣΥ󥹥(ɽ)
-@item __FILE__
-ץȤΥե̾(ʸ)
-@item __LINE__
-ߤιֹ()
-@end table
-
-εѿˤäƤͤѹ뤳ȤϤǤʤ
-ѿؤ㳰ȯ롥
-
-@node , Ϣ, ѿ,
-@comment node-name, next, previous, up
-@subsection
-
-
-
-@example
-[1, 2, 3]
-@end example
-
-Array饹Υ󥹥󥹤Ǥ롥뼰ϰʲη
-롥
-
-@example
-@code{[} ,@dots{}@code{]}
-@end example
-
-줾μɾ̤ޤ֤ǿ0ζ
-뤿ˤ϶
-
-@example
-@code{[} @code{]}
-@end example
-
-Ѥ롥
-
-@node Ϣ, ᥽åɸƽм, ,
-@comment node-name, next, previous, up
-@subsection Ϣ
-
-
-
-@example
-@{1=>2, 2=>4, 3=>6@}
-@end example
-
-ϢȤǤդΥ֥Ȥ򥭡(ź)ȤƻǤ롥Ruby
-ϢHash(Ϣ)饹Υ󥹥󥹤Ǥ롥ܺ٤ϥ饹
-@code{Hash}ι򻲾Ȥ줿@xref{Hash}
-
-ϢϢ󼰤ϰʲηǤ롥
-
-@example
-@code{@{} @code{=>} @dots{}@code{@}}
-@end example
-
-줾μɾ̤򥭡ͤȤϢ󥪥֥Ȥ֤
-ǿ0Ϣ뤿ˤ϶Ϣ
-
-@example
-@code{@{} @code{@}}
-@end example
-
-Ѥ롥Ǥ1İʾ夢硤ۣǤʤ@code{@{}, @code{@}}
-άǤ롥
-
-@node ᥽åɸƽм, SUPER, Ϣ,
-@comment node-name, next, previous, up
-@subsection ᥽åɸƽм
-
-
-
-@example
-foo.bar()
-foo.bar
-bar()
-print "hello world\n"
-print
-@end example
-
-֥Ȥ˥åŪʹʸåǤꡤδ
-ܷϰʲ̤Ǥ롥
-
-@display
-1 `.' ᥽å̾ [`(' @dots{}[`*' ] `)']
-@end display
-
-1ɾ륪֥ȤΡ̻Ҥǻꤵ᥽åɤƤ
-
-᥽å̾ˤ̾μ̻Ҥ¾̻Ҥ@code{?}ޤ@code{!}³
-Τ롥ȤơҸ(֤ͤ᥽å)ˤ@code{?}
-Ʊ̾Υ᥽åɤ٤Ƥ˲ŪʺѤĥ᥽å(:@code{tr}
-@code{tr!})ˤ@code{!}Ĥ롥
-
-åǡ쥷Ф@code{self}ξ硤쥷Фά̾
-ץߥ󥰸ˤؿΤ褦ʷǥ᥽åɤƤӽФȤ
-롥
-
-@display
-᥽å̾ `(' @dots{}[`*' ]`)'
-@end display
-
-᥽åɸƤӽФΰμγ̤άǤ뤬Ȥʤ뼰
-ʸޤͽǻϤޤϡۣ롥
-
-@example
-(, [, @{, /, +, -, if, while, *
-@end example
-
-ruby1Τ褦˸ʬ򡤿ʹ֤ˤȤäƼȻפ褦
-黻Ҥζ򸫤ʤ顤㴳ʣʥ롼Dz᤹롥ͽ̤η
-̤ʤäꡤɤΤ褦ɾ뤫ʬʤϾά
-̤Ĥ
-
-
-
-@example
-foo bar+baz # ᥽åɸƤӽФfoo(bar+baz)
-foo(1+2)*5 # ᥽åɸƤӽФ(foo(1+2)) * 5
-foo (1+2)*5 # ᥽åɸƤӽФfoo((1+2) * 5)
-foo 1 # ᥽åɸƤӽФfoo(1)
-foo -1 # ᥽åɸƤӽФfoo(-1)
-foo - 1 # ѿfoo - 1
-@end example
-
-᥽åɸƤӽФǤϰ1Ĥʤˤ̤άǤ롥
-Фꤷʤ᥽åɸƤӽФξϥѿλȤȲᤵ
-롥
-
-᥽å̾ȤƤǤդμ̻ҤѤ뤳ȤǤ롥ǽʸʸ
-Ǥ⾮ʸǤ⹽ʤѿ̾Ȥϼ̻Ҥ֤̾㤦ΤǽʣƤ
-
-饹ModuleƤ᥽å(@code{public},@code{private})ǥ
-åɤθƤӽФ椹뤳Ȥ롥@code{private}ǻꤵ줿
-¤줿᥽åɤϴؿǤƤӽФȤʤ
-
-@node SUPER, ,᥽åɸƽм, Ϣ,
-@comment node-name, next, previous, up
-@subsection SUPER
-
-
-
-@example
-super
-super(1,2,3)
-@end example
-
-åüʥȤƥѡ饹Υ᥽åɤθƤӽФ
-롥ηϥ᥽åɤ˥ѡ饹Ѥ뤿
-˻Ȥ
-
-@display
-super
-@end display
-
-
-ߤΥ᥽åɤͿ줿Τޤޥѥ饹Ʊ̾Υ᥽åɤƤ
-ФȤͿ줿ѿͤѹƤ⡤ϤΤϸΰ
-ͤǤ롥
-
-@display
-super`(' @dots{}`)'
-@end display
-
-ȤȤ˥ѡ饹Ʊ̾Υ᥽åɤƤӽФֺǸΰ
-@code{*}³̾Υ᥽åɸƤӽФƱͤŸϤ롥
-
-@node , 黻Ҽ, SUPER,
-@comment node-name, next, previous, up
-@subsection
-
-
-
-@example
-foo = bar
-foo[0] = bar
-foo.bar = baz
-@end example
-
-ѿʤɤͤꤹ뤿Ѥ롥ϱ黻ҷȤ
-Ƥ뤬᥽åɤǤϤʤΤǺ뤳ȤϤǤʤդˤʤ뤳
-Τϰʲ3μǤ롥
-
-ѿ(`$'̻ | `@@'̻ | ̻)
-
-@display
-ѿ `='
-@end display
-
-ѿؤϱդμɾ줿ͤդǻꤵ줿ѿ
-롥
-
-󻲾([@dots{}])
-
-@display
-1`[' 2@dots{}`]' `=' n
-@end display
-
-󻲾ȼؤϡ1ɾ륪֥Ȥˡ2鼰n
-ޤǤȤơ@code{[]=} Ȥ᥽åɤƤӽФ
-
-°(`.'̻)
-
-@display
-1 `.' ̻ `=' 2
-@end display
-
-°(ʤΥ᥽åɸƤӽФ)ؤϡ1ɾ
-֥(쥷Фά줿@code{self})Фơ
-@code{̻=}Ȥ᥽åɤ򡤼2ȤƸƤӽФ
-
-@menu
-* ::
-* ¿::
-@end menu
-
-@node , ¿, ,
-@comment node-name, next, previous, up
-@subsubsection
-
-
-
-@example
-foo += 12
-@end example
-
-ͤΤΤ˱黻ä뤿˼롥
-
-@display
-1 op= 2 # 1ǽǤʤФʤʤ
-@end display
-
-ηŪ@code{1 = 1 op 2}Ʊͤɾ롥
-11󤷤ɾʤΤǡ1Ѥϡ
-@code{1 = 1 op 2}Ȥưۤʤ̤Ȥʤ롥
-opȤƻȤ黻Ҥ
-
-@display
- +, -, *, /, %, **, &, |, ^, <<, >>
-@end display
-
-11Ǥ롥黻Ҥ@code{=}δ֤˥ڡƤϤʤ
-
-@node ¿, , ,
-@comment node-name, next, previous, up
-@subsubsection ¿
-
-
-
-@example
-foo, bar, baz = 1, 2, 3
-foo, = list()
-foo, *rest = list2()
-@end example
-
-ƱʣѿԤʤȤǤ롥ηϰʲ̤Ǥ롥
-
-@display
- `,' [ `,'@dots{}] [`*' ]= [, @dots{}]
-@end display
-
-դˤ3μ롥դμĤʤϡ
-Ȥ(ɬפʤ@code{to_a}᥽åɤѴ)Ǥ
-줾캸դ롥ʳξˤϡ줾μͤդ
-롥դοȱդǤοʤˤ­ʤѿˤ
-@code{nil}졤;äǤ̵뤵롥¿κǸǤ
-@code{*}硤ĤưȤ롥
-
-
-
-@example
-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]
-@end example
-
-¿ͤ(Ѵ줿)դǤ롥
-
-@node 黻Ҽ, 湽¤, ,
-@comment node-name, next, previous, up
-@subsection 黻Ҽ
-
-
-
-@example
-1+2*3/4
-@end example
-
-ץߥ󥰤ؤΤ˰Υ᥽åɸƤӽФ湽¤ϱ黻ҷ
-Ȥ롥Rubyˤϰʲˤ黻Ҥ롥ΤΤۤɷ̤
-Ʊα黻Ҥη̤ƱǤ롥
-@cindex{絬§}
-
-@display
- ::
- [](󻲾), []=()
- **
- -(unary) +(unary) ! ~
- * / %
- + -
- << >>
- &
- | ^
- > >= < <=
- <=> == != =~ !~
- &&
- ||
- .. ...
- =() (+=, -=@dots{})
- and or
- not
- if while
-@end display
-
-ۤȤɤα黻ˤϥ᥽åɸƤӽФȤƲᤵ(饹˺
-Ǥ)ǤʤüʤΤ롥Ǥʤü黻
-
-@display
- =, .., ..., !, not, &&, and, |, or, if, while
-@end display
-
-γƱ黻ҤȡȤȤ߹碌ˤʤ !=, !~ Ӽ黻Ҥ
-롥
-
-Ǥü黻Ұʳα黻ҷϰʲΤ褦ʥ᥽åɸƤӽФȸ
-ʤ롥
-
-ñ黻(+, -, ~)
-
-@display
-1. 黻 ()
-@end display
-
-(Ϣޤ)Ǥλ(1 `[' 2@dots{}`]')
-
-@display
-1. `[]' (2@dots{})
-@end display
-
-Ǥ( 1 `[' 2@dots{}`]' `=' n)
-
-@display
-1. `[]=' (2@dots{}, n)
-@end display
-
-ʳ2黻(1 黻 2)
-
-@display
-1. 黻 (2)
-@end display
-
-ϤޤǤ⤽Υ᥽åɸƤӽФȤƲᤵȤ
-ǡrubyץǤҤȤ櫓ǤϤʤ
-
-@node 湽¤, 饹, 黻Ҽ,
-@comment node-name, next, previous, up
-@subsection 湽¤
-
-RubyǤ(CʤɤȤϰۤʤ)湽¤ϼǤꡤ餫ͤġ
-lispʤɤ˻ƤȤ롥RubyCPerlѤ湽¤
-ĤħŪ湽¤Ȥƥƥ졼ġƥ졼Ϸ֤Ϥ
-Ȥ桼ΤǤ.
-@xref{ƥ졼(֤)}
-
-@menu
-* IF::
-* IF::
-* CASE::
-* AND::
-* OR::
-* ϰϻ꼰::
-* NOT::
-* WHILE::
-* WHILE::
-* ƥ졼(֤)::
-* FOR::
-* YIELD::
-* FAIL::
-* BEGIN::
-* RETRY::
-* RETURN::
-* BREAK::
-* CONTINUE::
-* REDO::
-@end menu
-
-@node IF, IF, 湽¤, 湽¤
-@comment node-name, next, previous, up
-@subsubsection IF
-
-
-
-@example
-if age >= 12 then print "adult fee\n" else print "child fee\n" end
-gender = if foo.gender == "male" then "male" else "female" end
-@end example
-
-
-@display
-if 1 [then]
- @dots{}
-[elsif 2 [then]
- @dots{}]@dots{}
-[else
- @dots{}]
-end
-@end display
-
-ȽǼRuby@code{if}@code{else if}Ǥ@code{elif}Ǥʤ
-@code{elsif}@code{if}Ϣ³ԤʤȤդ뤳ȡ郎Ω
-Ƽ¹Ԥ֤ͤ¹Ԥʤäͤ@code{nil}
-
-@code{if}ξȽμǤʸɽƥϼ
-@example
-$_=~ ƥ
-@end example
-ξάǤȤߤʤ롥
-
-@node IF, CASE, IF, 湽¤
-@comment node-name, next, previous, up
-@subsubsection IF
-
-
-
-@example
-print "debug\n" if $debug
-@end example
-
-
-@display
- if
-@end display
-
-、(@code{if})μԤ뼰äɾ롥ưб
-@code{if}ƱͤǤ롥@code{if}ҤΤĤͤϾ郎Ω
-ˤϼ͡Ωξˤ@code{nil}Ǥ롥
-
-@node CASE, AND, IF, 湽¤
-@comment node-name, next, previous, up
-@subsubsection CASE
-
-
-
-@example
-case $age
-when 0 .. 2
- "baby"
-when 3 .. 6
- "little child"
-when 7 .. 12
- "child"
-when 12 .. 18
- "youth"
-else
- "adult"
-end
-@end example
-
-
-@display
-case 0
-[when 1 [, 2]@dots{}[then]
- @dots{}]@dots{}
-[else
- @dots{}]
-end
-@end display
-
-ʬC@code{switch}Pascal@code{case}˻Ƥ롥
-@code{break}æФ뤳Ȥμ˷³뤳ȤʤΤա
-
-ΰפ@code{n =~ 0}ǹԤʤ롥Ĥޤꡤ
-
-@example
-case expr0
-when expr1, expr2
- stmt1
-when expr3, expr4
- stmt2
-else
- stmt3
-end
-@end example
-
-ϰʲ@code{if}ȤۤǤ롥
-
-@example
-_tmp = expr0
-if expr1 =~ _tmp || expr2 =~ _tmp
- stmt1
-elsif expr3 =~ _tmp || expr4 =~ _tmp
- stmt2
-else
- stmt3
-end
-@end example
-
-@node AND, OR, CASE, 湽¤
-@comment node-name, next, previous, up
-@subsubsection AND
-
-
-
-@example
-test && set
-test and set
-@end example
-
-
-@display
-1 `&&' 2
-1 `and' 2
-@end display
-
-1ɾͤ(@code{nil}ʳ)ǤС2ɾ롥
-@code{and}̤ͥ㤤̾Ǥ롥
-
-@code{and}ξդμǤʸɽƥϼ
-@code{$_ =~ ƥ} ξάǤȤߤʤ롥
-
-@node OR, ϰϻ꼰, AND, 湽¤
-@comment node-name, next, previous, up
-@subsubsection OR
-
-
-
-@example
-demo || die
-demo or die
-@end example
-
-
-@display
-1 `||' 2
-1 'or 2
-@end display
-
-1ɾͤǤС2ɾ롥@code{or}̤ͥ
-㤤̾Ǥ롥
-
-@code{or}ξդμǤʸɽƥϼ
-@code{$_ =~ ƥ}ξά
-ǤȤߤʤ롥
-
-@node ϰϻ꼰, NOT, OR, 湽¤
-@comment node-name, next, previous, up
-@subsubsection ϰϻ꼰
-
-
-
-@example
-1 .. 20
-/first/ ... /second/
-@end example
-
-
-@display
-1 `..' 2
-1 `...' 2
-@end display
-
-PʳξǤϼ1鼰2ޤǤϰϥ֥Ȥ֤
-
-PȤϰϻ꼰Ѥ줿ϡ1ˤʤޤǤϵ֤
-θϼ2֤ޤǤϿ֤2ˤʤо֤ϵ롥
-@code{..}ϼ1ˤʤä˼2ɾ(awkΤ褦)@code{...}ϼ
-ɾޤǼ2ɾʤ(sedΤ褦)
-
-Pϰϻ꼰ξդȤʤ뼰Ǥϡʸɽƥϼ
-@code{$_ =~ ƥ}ξά@code{$. == }ξάȲᤵ
-롥
-
-@node NOT, WHILE, ϰϻ꼰, 湽¤
-@comment node-name, next, previous, up
-@subsubsection NOT
-
-
-
-@example
-! me
-not me
-i != you
-@end example
-
-
-@display
-`!'
-not
-@end display
-
-ǤеǤп֤
-
-@code{!}Ǥʸɽƥϼ@code{$_ =~ ƥ}ξά
-ǤȤߤʤ롥
-
-@display
-1 `!=' 2
-@end display
-
-@code{!(1 == 2)}ξά
-
-@display
-1 `!~' 2
-@end display
-
-@code{!(1 ~= 2)}ξά
-
-@node WHILE, WHILE, NOT, 湽¤
-@comment node-name, next, previous, up
-@subsubsection WHILE
-
-
-
-@example
-while sunshine()
- work()
-end
-@end example
-
-
-@display
-while
- @dots{}
-end
-@end display
-
-ɾͤδ֡Τ򷫤֤¹Ԥ롥@code{while}ͤ
-@code{nil}Ǥ롥
-
-whileξȽμǤʸɽƥϼ
-@code{$_ =~ ƥ} ξάǤȤߤʤ롥
-
-@node WHILE, ƥ졼(֤), WHILE, 湽¤
-@comment node-name, next, previous, up
-@subsubsection WHILE
-
-
-
-@example
-sleep while idle
-@end example
-
-
-@display
-ñ㼰 while
-@end display
-
-μɾͤδ֡ñ㼰򷫤֤¹Ԥ롥ñ㼰
-@code{begin}ǤϤޤ@code{begin}ɾƤPɾ
-(٤begin¹Ԥ)@code{while}ҤΤĤͤ
-@code{nil}Ǥ롥
-
-@node ƥ졼(֤), FOR, WHILE, 湽¤
-@comment node-name, next, previous, up
-@subsubsection ƥ졼(֤)
-
-
-
-@example
-[1,2,3].each@{|i| print i*2, "\n"@}
-@end example
-
-ƥ졼Ȥ湽¤(ä˥롼)ݲΤѤ᥽åɤ
-Ǥ롥ɤ(֥åȸƤФ)ꤷƥƥ졼Ƥ
-Фȡƥ졼Ŭͤ򥻥åȤƥ֥åɾ(餯
-ʣ)ƥ졼Υ֥åθƤӽФ@code{yield}Ѥ(
-)
-
-ƥ졼θƤӽФϰʲιʸǹԤʤ롥
-
-@display
- `@{' [`|' ռ@dots{}`|'] @dots{}`@}'
-@end display
-
-ּפ֥åȤꤷּפΥ᥽åɤ򥤥ƥ졼Ȥɾ
-롥ּפΥȥåץ٥Υ᥽åɤƥ졼ȤƸƤӽФ졤
-쥷Фɽ䡤μϥƥ졼ȤƤϸƤӽФʤּ
-ʣμޤơƥ졼Ȥƽ˸ƤФ롥
-
-ƥ졼@code{yield}¹Ԥȡǻꤵ줿ͤռ
-ǻꤵ줿ѿ졤֥å¹Ԥ롥֥åμ¹Ԥλ
-Ȥͤ @code{yield}ͤȤ֤롥᥽åɤƥ졼
-ȤƸƤӽФ줿ɤϥ᥽å@code{iterator?}ͤΤ뤳
-ȤǤ롥ˤ@code{Enumerable:grep}᥽åɤΤ褦˥ƥ졼Ȥ
-ƸƤФ줿̤Υ᥽åɤȤƸƤФ줿Ȥưۤʤ᥽åɤ
-롥
-
-@node FOR, YIELD, ƥ졼(֤), 湽¤
-@comment node-name, next, previous, up
-@subsubsection FOR
-
-
-
-@example
-for i in [1, 2, 3]
- print i*2, "\n"
-end
-@end example
-
-֥ȤγǤФԤʤη󶡤Ƥ롥
-ϰʲ̤ꡥ
-
-@display
-for ռ@dots{} in
-
-end
-@end display
-
-γǤФ¹Ԥ롥ϰʲμȤۤǤ롥֤ۤܡ
-ȤΤϡƥ졼֥åϿѿͭϰϤƳ
-ΤФ@code{for}ʸϥѿΥפ˱ƶڤܤʤ
-ʤ뤫Ǥ
-
-@display
-().each `@{' `|' ռ@dots{}`|' `@}'
-@end display
-
-äƼͤΥ֥Ȥ᥽å@code{each}ʤ硤
-@code{for}¹Ԥ㳰ȯ롥
-
-@node YIELD, FAIL, FOR, 湽¤
-@comment node-name, next, previous, up
-@subsubsection YIELD
-
-
-
-@example
-yield data
-@end example
-
-
-@display
-yield `(' [ [`,' @dots{}]])
-@end display
-
-ƥ졼ǥ֥åθƤӽФԤʤ@code{yield}¹Ԥ᥽
-ɤƥ졼ȤƸƤӽФƤʤˤ㳰ȯ롥
-@code{yield} ͤϥ֥åͤǤ롥
-
-@code{yield}ΰγ̤ۣǤʤ¤άǤ롥
-
-@node FAIL, BEGIN, YIELD, 湽¤
-@comment node-name, next, previous, up
-@subsubsection FAIL
-
-
-
-@example
-fail
-fail "you lose"
-@end example
-
-
-@display
-fail `(' [å] `)'
-@end display
-
-㳰ȯ롥åͿ줿ˤȯե
-ֹ̾򥷥ƥѿ@code{$@@}ˡå@code{$!}˥åȤ롥
-
-@code{fail}ΰγ̤ϾάǤ롥
-
-@node BEGIN, RETRY, FAIL, 湽¤
-@comment node-name, next, previous, up
-@subsubsection BEGIN
-
-
-
-@example
-begin
- do_something()
-rescue
- recover()
-ensure
- must_to_do()
-end
-@end example
-
-ʣμޤȤ뤿㳰Τ@code{begin}롥
-@code{begin}ηϰʲ̤Ǥ롥
-
-@display
-begin
- @dots{}
-[rescue
- @dots{}]
-[ensure
- @dots{}]
-end
-@end display
-
-@code{begin}ͤϰֺǸɾ줿ͤǤ롥@code{begin}
-ȯ㳰@code{rescue}ͤ뤳Ȥ롥
-@code{begin}ͤϤ@code{rescue}ǺǸɾͤ
-롥@code{ensure}᤬¸ߤ@code{begin}λɬ
-(ェλǤʤ㳰, @code{return}, @code{break},
-@code{continue}, @code{redo}ʤɤˤæФǤ)@code{ensure}μɾ
-롥
-
-@node RETRY, RETURN, BEGIN, 湽¤
-@comment node-name, next, previous, up
-@subsubsection RETRY
-
-
-
-@example
-retry
-@end example
-
-
-@display
-retry
-@end display
-
-Ƽ¹ԡ@code{begin}@code{rescue}ǻȤ줿硤@code{begin}
-Ϥᤫ⤦ټ¹Ԥ롥㳰ԤʤäƤƻԤΤ˻Ȥ
-
-@example
-begin
- 餫ν(㳰ȯ)
-rescue
- 㳰
- retry # 㳰бƺƼ¹
-end
-@end example
-
-ƥ졼ƥ졼֥åޤforʸǻȤ줿ˤϡ
-ƥ졼ɾΤǽ餫¹Ԥ롥ƥ졼ΰɾ롥
-
-@example
-for i in 1..5
- retry if some_condition # i == 1 ľ
-end
-@end example
-
-@example
-# 桼until loop
-def until(cond)
- yield
- retry if not cond
-end
-@end example
-
-@code{rescue}䥤ƥ졼ʳretryѤ줿㳰ȯ롥
-
-@node RETURN, BREAK, RETRY, 湽¤
-@comment node-name, next, previous, up
-@subsubsection RETURN
-
-
-
-@example
-return
-return 12
-return 1,2,3
-@end example
-
-
-@display
-return [[`,' @dots{}]]
-@end display
-
-ͤͤȤƥ᥽åɤμ¹Ԥλ롥2İʾͿ줿
-ˤϡǤȤ᥽åɤͤȤ롥Ĥʤ
-ˤ @code{nil} ͤȤʤ롥
-
-@node BREAK, CONTINUE, RETURN, 湽¤
-@comment node-name, next, previous, up
-@subsubsection BREAK
-
-
-
-@example
-break
-@end example
-
-
-@display
-break
-@end display
-
-@code{break} ϥ롼פæФ롥CȰ㤤@code{break}ϤäȤ¦
-롼פæФѤ@code{case} ȴѤϻʤ
-
-@node CONTINUE, REDO, BREAK, 湽¤
-@comment node-name, next, previous, up
-@subsubsection CONTINUE
-
-
-
-@example
-continue
-@end example
-
-
-@display
-continue
-@end display
-
-@code{continue}ϤäȤ¦Υ롼פμη֤Ϥ롥
-
-@node REDO, 湽¤, CONTINUE, 湽¤
-@comment node-name, next, previous, up
-@subsubsection REDO
-
-
-
-@example
-redo
-@end example
-
-
-@display
-redo
-@end display
-
-@findex redo
-@code{redo}ϥ롼׾ΥåԤʤ鷺ߤη֤ľ
-
-@node 饹, ⥸塼, 湽¤,
-@comment node-name, next, previous, up
-@subsection 饹
-@cindex 饹
-
-
-
-@example
-class Foo:Super
- def test
- :
- end
- :
-end
-@end example
-
-
-@display
-class 饹̾ [`:' ѡ饹̾ ]
-
-end
-@end display
-
-@findex class
-饹̾ʸǻϤޤ뼱̻ҤǤ롥
-
-@node ⥸塼, ᥽å, 饹,
-@comment node-name, next, previous, up
-@subsection ⥸塼
-@cindex ⥸塼
-
-
-
-@example
-module Foo
- def test
- :
- end
- :
-end
-@end example
-
-
-@display
-module 饹̾
-
-end
-@end display
-
-@findex module
-⥸塼̾ʸǻϤޤ뼱̻ҤǤ롥
-
-@node ᥽å, ðۥ᥽å, ⥸塼,
-@comment node-name, next, previous, up
-@subsection ᥽å
-@cindex ᥽åɤ
-
-
-
-@example
-def fact(n)
- if n == 1 then
- 1
- else
- n * fact(n-1)
- end
-end
-@end example
-
-
-@display
-def ᥽å̾ [`(' [ [= ǥե]]@dots{}[`,' `*' ]`)']
-
-end
-@end display
-@findex def
-
-˥ǥեȼͿ줿硤᥽åɸƤӽФ˰Ϳ
-ʤäˤϥǥեȼɾ̤ǽ(ǥեȼ
-ɾϸƤӽФ˹Ԥ)ֺǸΰ@code{*}³(ñ)
-Ǥ硤μɾ(ǤʤѴ)Ÿơ
-Ȥɲä롥
-
-̾᥽åϥͥȤǤʤΤǡ᥽åǤϥ᥽å
-ƤӸƤӽФʤ
-
-᥽å̾ϼ̻ҤޤʸǤ롥黻Ҥκ򤹤ˤʸ
-ǻꤹ롥¤ӤκǸ@code{*}硤¿Ϳ
-줿°ϡǸΰȤͿ(­ʤˤϥ顼)
-
-᥽åɤˤϸƤӽФ¤ä뤳ȤǤ¤ä줿᥽åɤϡ
-ؿǤƤӽФʤ(private᥽å)
-
-˥᥽åɤ硤饹γˤdefϥǥե
-Ǥprivate᥽åɤ饹ˤdefpublic᥽
-ɤ롥ѡ饹Υ᥽åɤˤ
-åɤβĻϥѡ饹Υ᥽åɤΤΤѤ
-
-᥽åɤβĻѹˤ@code{Module}饹Ƥ
-@code{public}, @code{private}γƥ᥽åɤѤ롥
-
-@node ðۥ᥽å, ALIAS, ᥽å,
-@comment node-name, next, previous, up
-@subsection ðۥ᥽å
-
-
-
-@example
-def foo.test()
- print "this is foo\n"
-end
-@end example
-
-
-@display
-def `.' ᥽å̾ [`(' [ [= ǥե]]@dots{}[`,' `*' ]`)']
-
-end
-@end display
-
-ðۥ᥽åɤȤϤΥ֥Ȥ˸ͭΥ᥽åɤǤ롥
-
-ηϼͤǤ륪֥Ȥðۥ᥽åɤ롥ͤ
-(ӥȥ󥯥饹Ǥʤ)̾索֥Ȥ饹ޤϥ⥸塼Ǥ
-ɬפ롥̾᥽åȤϰۤʤꡤðۥ᥽åɤϥ᥽å
-ǤͥȤ뤳ȤǤ롥
-
-ðۥ᥽åɤ̾ϷѾʤ㳰Ȥƥ饹ðۥ᥽åɤϤ
-֥饹ˤѾ롥ؤХ饹ðۥ᥽åɤ¾Υ֥
-Ȼظƥˤ륯饹᥽åɤƯ򤹤롥
-
-: 󥯥롼ɤ⥸塼ðۥ᥽åɤϷѾʤ
-
-@node ALIAS, UNDEF, ðۥ᥽å,
-@comment node-name, next, previous, up
-@subsection ALIAS
-@cindex ᥽åɤ̾Ĥ
-
-
-
-@example
-alias foo bar
-@end example
-
-
-@display
-alias ᥽å̾1 ᥽å̾2
-@end display
-
-@findex alias
-@code{alias}ʸǥ᥽åɤ̾Ĥ뤳ȤǤ롥̾դ줿
-åɤϡλǤΥ᥽åѤΥ᥽åɤ
-Ƥ⡤θŤ᥽åɤƤӽФ줿ΤƱƯ򤹤롥
-
-@node UNDEF, DEFINED?, ALIAS,
-@comment node-name, next, previous, up
-@subsection UNDEF
-@cindex ᥽åɤä
-
-
-
-@example
-undef bar
-@end example
-
-
-@display
-undef ᥽å̾
-@end display
-
-@findex undef
-᥽åɤäˤundefѤ롥
-
-defˤ̾@code{undef}ˤäˤäƥ饹Υ
-ե򥹡ѡ饹Ωѹ뤳ȤǤ롥᥽
-ɤself˥åäƤ⤢Τǡ褯դʤȴ¸
-᥽åɤưʤʤǽ롥
-
-@node DEFINED?, , UNDEF,
-@comment node-name, next, previous, up
-@subsection DEFINED?
-@cindex ᥽åɤƤ뤫ɤ
-@cindex ѿƤ뤫ɤ
-@cindex Ƥ뤫ɤ
-
-
-
-@example
-defined? print
-defined? File.print
-defined?(foobar)
-defined?($foobar)
-defined?(@@foobar)
-defined?(Foobar)
-@end example
-
-
-@display
-defined?
-@end display
-
-@findex defined?
-᥽åɸƤӽФξ硤Υ᥽åɤƤ˿֤
-ѿλȤǤϡѿƤ
-˿֤ʳμξϼɾơ㳰ȯʤп
-
-@node Ȥ߹ߴؿ, Ȥ߹ѿ, rubyʸˡ, Top
-@comment node-name, next, previous, up
-@chapter Ȥ߹ߴؿ
-
-Rubyˤϸ̩ʰ̣ǤϴؿϤʤ@code{Kernel}饹δؿ᥽åɤ
-(Ƥ̾說饹ؿǸƤӽФΤ)ؿŪѤ롥
-ŪѤ᥽åɤʲˤ롥Υ᥽åɤ
-ˤϸߴͤƹԤʤ٤Ǥ롥
-
-@ftable @code
-@item autoload(@var{module}, @var{file})
-
-@var{module}˺ǽ˥@var{file}@code{require}褦
-ꤹ롥@var{module}ʸޤϥܥǻꤹ롥
-
-@item caller([@var{level}])
-
-@var{level}ʾθƽФξ@code{$@@}η롥ȥåץ٥
-Ǥ@code{nil}֤callerͤ@code{$@@}뤳Ȥ㳰
-ȯ֤Ǥ롥ޤʲΤ褦ʥɤǸƽФطΥХåȥ졼
-ɽǤ롥
-
-@example
-n = 0
-while c = caller(n)
- print c, "\n"
-end
-@end example
-
-@item eof
-@itemx eof?
-
-ޥɥ饤󤫤Ϥ@code{EOF}ãƤ硤֤
-
-@item eval(@var{expr})
-
-@var{expr}ȤͿ줿ʸrubyץȤƲᡤ¹Ԥ롥
-
-@item exec(@var{command})
-
-ץμ¹Ԥλ롥@var{status}ȤͿ줿硤
-ͤrubyޥɤνλơȤ롥ǥեȤ0
-
-@item exit!(@var{status})
-
-ץμ¹Ԥλ롥@var{status}λơȤ롥
-@code{exit}Ȥϰäơ㳰ʤɤϰڹԤʤʤ@code{fork}θ塤
-ҥץλʤɤѤ롥
-
-@item fork
-
-@samp{fork}ƥॳ¹Ԥҥץ롥ܺ٤
-@samp{fork(2)}򻲾ȤΤȡƥץ¦ǤϻҥץΥץid
-ҥץ¦Ǥ@code{nil}֤餫θǻҥץ
-Ԥˤ㳰ȯ롥ƥ졼ȤƸƤФ줿ϡ
-ץͿ줿֥åɾ֥åɾλǻ
-ץェλ롥
-
-@item format(@var{format}@dots{})
-
-եޥåȤȤͿ줿ʸC@samp{sprintf}Ʊ褦
-ᤷŸʸ֤᥽å@code{sprintf}̾
-
-Rubyˤ@samp{format}ҤγĥˤĤƤ@code{sprintf}ι
-ȤΤȡ
-
-@item getc
-
-ɸϤʸФͤɤ߹ʸʸ(ASCII)
-ɽ@code{Fixnum}Ǥ롥
-
-@item gets
-
-ȤͿ줿ե(ʤɸ)ǹ벾
-Ūʥե(ƥѿ@code{$<}ǥǤ)ɤ߹
-ǡɤ߹ߤˤϤʸ֤եν
-ãˤ@code{nil}֤Ԥζڤϥƥѿ@code{$/}ˤä
-ѹǤ롥ɤ߹ʸϥƥѿ@code{$_}ˤ⥻åȤ롥
-
-@item gsub(@var{pattern}[, @var{replace}])
-@itemx gsub!(@var{pattern}[, @var{replace}])
-
-ƥѿ@code{$_}λؤʸ @var{pattern}˥ޥåʬ
-@var{replace}֤롥@code{String}饹@code{gsub}᥽
-ɤβ򻲾ȤΤȡ@var{replace}ά줿ˤϥƥ졼
-ư֥åɾִ̤롥@code{gsub}᥽åɤ
-@code{$_}ͤ򥳥ԡơԡ򹹿@code{$_}롥
-
-@code{gsub!}@code{$_}λؤƤʸ󤽤ΤΤ񤭴롥
-
-@item iterator?
-
-᥽åɤƥ졼ȤƸƤӽФ줿ˤϿǤʤ˵֤
-Ҹ졥
-
-@item kill(@var{signal}, @var{pid}@dots{})
-
-@var{pid}ǻꤵ줿ץ˥ʥ롥@var{signal}ϥʥ
-ֹ椫̾ǻꤹ롥ͤĥʥ(뤤ϥʥ̾
-@code{-})ͿȥץǤϤʤץ롼פ˥ʥ롥
-
-@item load(@var{file})
-
-@var{file}ɤ롥@var{file}ɤѥϥƥѿ
-@code{$:}Ƿꤵ롥
-
-@item loop
-
-̵¥롼פ륤ƥ졼(Ǥʤ¤)ʵפ˥ƥ졼֥å
-ɾ³롥
-
-@item open(@var{file}[, @var{mode}])
-
-@var{file}򥪡ץ󤷤ơ@code{File}֥Ȥ֤ե̾
-ץ󤹤ե򼨤ե̾@code{|}ǻϤޤˤ³ʸ
-򥳥ޥɤȤƵưѥץ饤롥
-
-ޥ̾@samp{"-"}Ǥ@code{open}rubyλҥץ
-λҥץȤΥѥפ֤
-
-@var{mode}ϥեΥ⡼ɤꤹ롥ϰʲΤΤ
-줫ʸǤ롥
-
-@table @samp
-@item r
-ɤ߹ѡ@code{open}եϤ餫¸ߤƤɬפ
-롥
-
-@item r+
-ɤ߽ξѡ@code{open}եϤ餫¸ߤƤɬפ
-롥
-
-@item w
-񤭹ѡե뤬¸ߤƤ硤Ĺ0ˤ롥¸ߤƤ
-п˥ե롥
-
-@item w+
-ɤ߽ξѡɤ߹ߤԤʤ뤳Ȱʳ@samp{"w"}ƱƯ򤹤롥
-
-@item a
-ɲý񤭹ѡեϤ餫¸ߤƤɬפ롥񤭹
-ϥեκǸɲä롥
-
-@item a+
-ɤ߽ξѡե뤬¸ߤƤʤп˺롥
-ϥեκǸ˽롥
-@end table
-
-⡼ɤά줿ΥǥեȤ@samp{"r"}Ǥ롥
-
-@item print(@var{arg}1@dots{})
-
-˽Ϥ롥Ϳʤˤ@code{$_}ͤϤ롥
-ʸʳΥ֥ȤȤͿ줿ˤϡ֥
-Ȥ@code{to_s}᥽åɤˤäʸѴƤϤ롥
-ѿ@code{$;}(ϥեɥѥ졼)@code{nil}Ǥʤͤå
-Ƥˤϡưδ֤ˤʸϤ롥ƥѿ
-@code{$\}(ϥեɥѥ졼)@code{nil}ǤʤͤåȤƤ
-ˤϡǸˤϤ롥
-
-@item printf([@var{port}, ]@var{format}, @var{arg}@dots{})
-
-CprintfƱ褦@var{format}˽ʸѴ
-롥1IOΥ֥饹Υ󥹥󥹤ǤäϤΥ֥
-ȤФƽϤԤʤǥեȤ@code{$stdout}˽Ϥ롥
-
-RubyˤformatҤγĥˤĤƤsprintfι򻲾ȤΤȡ
-
-@item proc
-@itemx lambda
-
-Ϳ줿ƥ졼֥å³֥(饹@code{Proc}Υ
-󥹥)Ȥ֤
-
-@item rand(@var{max})
-
-0@var{max}ۤʤϰϤȯ롥ͤ
-@code{Fixnum}
-
-@item require(@var{feature})
-
-@var{feature}ǻꤵfileɤ롥@var{feature}ϥɤե
-ꤹʸǡĥ@code{.rb}ꤵƤruby
-ץȡĥ@code{.o}ꤵƤϡХʥ⥸塼
-롥ĤΥƥǤϥХʥ⥸塼Υɤ
-󶡤ʤХʥ⥸塼μºݤΥեγĥҤϥƥ
-˰ۤʤ뤬@var{feature}̾γĥҤϤĤ@code{.o}Ѥ롥
-
-ĥҤꤵʤϡޤ@code{.rb}@code{.o}äơե
-򸡺롥
-
-requireϼºݤ˥ɤˤ @code{TRUE}˥ɤƤ
-@code{FALSE}֤ޤɤ@var{feature}̾(ĥҤޤ
-)ѿ@code{$"}ɲä롥
-
-@item select(@var{reads}[, @var{writes}[, @var{execpts}[, @var{timeout}]]])
-
-@samp{select(2)}¹Ԥ롥@var{reads}/@var{writes}/@var{execpts}ˤ
-IO(ޤϤΥ֥饹)Υ󥹥󥹤Ϳ롥@var{timeout}
-Fixnum/Float/TimeΤ줫ǻꤹ롥ͤ@var{timeout}Ω
-ˤ@code{nil}ǤʤȤ3Ǥ֤γǤ
-//㳰ԤΥ֥ȤǤ(ꤷΥ֥åȡ
-Ԥ֥Ȥꤷʤä@code{nil})ƥॳ
-¹˳ߤäˤϳ϶ˤʤ롥
-
-@item sleep([@var{sec}])
-
-@var{sec}äץμ¹Ԥߤ롥@var{sec}ά줿硤
-ץ@code{SIGALRM}ʤ¤ꡤʵפ˥꡼פ롥ºݤ˥
-꡼פÿ֤
-
-@item sprintf(@var{format}@dots{})
-
-@var{format}ʸC@samp{sprintf}Ʊ褦˲ᤷŸ
-ʸ֤᥽å@code{format}̾
-
-@var{format}ҤC@samp{sprintf}()դ(
-Rubyˤ unsignedʤΤǡ%uϽ)˲ä, %b, %B, %O, %XȤ
-ȤǤ롥%bϿͤ2ɽ%B, %O, %XϤ줾2ʡ8ʡ16ʿ
-ɽԤʤονκݤ2ɽǤϤʤɽ
-Ƭ@code{-}ĤΤɽ롥
-
-@item srand([@var{seed}])
-
-@var{seed}ꤷŤ֤ͤͤά줿ˤ
-@samp{time(3)}֤ͤǥեȤȤ롥
-
-@item sub(@var{pattern}[, @var{replace}])
-@itemx sub!(@var{pattern}[, @var{replace}])
-
-ƥѿ@code{$_}λؤʸǺǽ@var{pattern}˥ޥåʬ
-@var{replace}֤롥@var{replace} ά줿ˤϥ
-졼Ȥư֥åɾִ̤롥sub᥽åɤ
-@code{$_}ͤ򥳥ԡơԡ򹹿@code{$_}롥
-¾ξܺ٤˴ؤƤ@code{String}饹@code{sub}᥽åɤβ
-ȤΤȡ
-
-@code{sub!}@code{$_}λؤƤʸ󤽤ΤΤ񤭴롥
-
-@item syscall(@var{num}, @var{arg}@dots{})
-
-@var{num}ǻꤵ줿ֹΥƥॳ¹Ԥ롥2ʹߤ򥷥
-ƥॳΰȤϤʸޤǤʤФʤʤ
-
-@item system(@var{command})
-
-@var{command}¹Ԥ(֥ץstatus 0ǽλ)
-ˤϿ򡤼Ԥˤϵ֤λơѿ@code{$?} ǻ
-ȤǤ롥
-
-@item test(@var{cmd}, @var{file} [, @var{file}])
-
-եƥȤԤ@var{cmd}ϰʲ˼ʸƥǤ롥ե
-̾Ȥ@code{"&"}ꤹȡľΥեؤ@samp{stat(2)}η
-̤Ѥ롥
-
-
-1Ĥΰ
-
-@display
-?r ե¸ uid ɤळȤǤ
-?w ե˼¸ uid ǽ񤯤ȤǤ
-?x ե¸ uid Ǽ¹Ԥ뤳ȤǤ
-?o եνͭԤ¸ uid Ǥ
-
-?R ե uid ɤळȤǤ
-?W ե˼ uid ǽ񤯤ȤǤ
-?X ե uid Ǽ¹Ԥ뤳ȤǤ
-?O եνͭԤ uid Ǥ
-
-?e ե뤬¸ߤ
-
-?z ե륵 0 Ǥ
-?s ե륵 0 Ǥʤ(ե륵֤)
-
-?f եϥץ졼եǤ
-?d եϥǥ쥯ȥǤ
-?l եϥܥå󥯤Ǥ
-?p ե̾Ĥѥ(FIFO)Ǥ
-?S եϥåȤǤ
-?b եϥ֥åüեǤ
-?c եϥ饯üեǤ
-
-?u ե setuid ӥåȤåȤƤ
-?g ե setgid ӥåȤåȤƤ
-?k ե sticky ӥåȤåȤƤ
-
-?M ץȤμ¹Ԥ򳫻ϤǤΥեθŤ
-?A ץȤμ¹Ԥ򳫻ϤǤΥեΥ
-?C ץȤμ¹Ԥ򳫻ϤǤΥե inode ѹ
-@end display
-
-2Ĥΰ
-
-@display
-?= ե1ȥե2Υॹפ
-?> ե1ե2깹֤
-?< ե1ե2깹֤Ť
-?- ե1ե2˥ϡɥ󥯤Ƥ
-@end display
-
-@item trace_var(@var{var}, @var{command})
-
-@var{var}ǻꤵ줿ѿͤѹ줿ɾ
-@var{command}ꤹ롥@var{command}ʸ󡤤ޤϥ֥åǻꤹ
-롥trace뤿ˤ@code{untrace_var}Ѥ롥
-
-@item trap(@var{signal}, @var{command})
-@itemx trap(@var{signal}) @{@dots{}@}
-
-@var{signal}γߤä@var{command}¹Ԥ롥
-@var{signal}ϥʥ̾ʥֹ桥@var{command}ʸ󡤤ޤ
-ϥ֥åǻꤹ롥commandȤ@samp{"SIG_IGN"}ޤ
-@samp{"IGNORE"}ꤷˤϤΥʥ̵뤹(ǽʤ)
-@samp{"SIG_DFL"}ޤ@samp{"DEFAULT"}ꤷϥǥեȤư
-Ԥʤ@samp{"EXIT"}ꤷϥʥ(λԤ
-)exit status 1ǽλ롥
-
-@item untrace_var(@var{var})
-
-@var{var}ФƤtrace롥traceȤƻꤵƤ륪
-Ȥˤ֤
-
-@item wait
-
-ҥץλΤԤλҥץpid֤ҥץ
-Ĥʤ@code{nil}֤
-
-@item waitpid(@var{pid}, @var{flags})
-
-@var{pid}ǻꤵλҥץνλԤΥץλ
-˿֤ҥץ¸ߤʤΥ֥å󥰥⡼ɤǻ
-ץޤλƤʤˤ@code{nil}֤@samp{waitpid(2)}
-@samp{wait4(2)}μƤʤޥǤ@var{flags}ϤĤ@code{nil}ޤ
-0ǤʤФʤʤ
-@end ftable
-
-@node Ȥ߹ѿ, Ȥ߹ߥ饹ȥ⥸塼, Ȥ߹ߴؿ, Top
-@comment node-name, next, previous, up
-@chapter Ȥ߹ѿ
-@cindex{ȹѿ}
-
-@table @samp
-
-@item $!
-顼åfailꤹ롥
-
-@item $@@
-顼ȯΥե̾ȹֹ椬
-@example
-"ե:ֹ[:᥽å̾()]"
-@end display
-ηdzǼ롥
-
-@item $&
-Ǹѥޥå
-
-@item $`
-ǸΥѥޥåǥޥåʸʸ
-
-@item $'
-ǸΥѥޥåǥޥåʸθ³ʸ
-
-@item $+
-ǸθѥǥޥåǸγ
-
-@item $1@dots{}$9
-Ǹѥޥånܤγ̤˥ޥåͤǼ롥
-̤ʤ@code{nil}äƤ롥
-
-@item $~
-ǸΥޥå˴ؤ󡥤򥻥åȤ@code{$&}
-@samp{$1@dots{}$9}ͤѲ롥
-
-@item $=
-ѿͤ@code{nil}ǤʤѥޥåʸӤǥե٥
-Ȥʸʸ̤ʤǥեȤ@code{nil}(̤)
-
-@item $/
-ϥ쥳ɥѥ졼եʸФ@code{each}Ԥʤ
-ʬʸꤹ롥$/˶ʸ(@code{""})ꤹñ̤
-ϤԤʤ@code{nil}ꤹΤ٤ɤ߹ࡥ@code{$/}ˤ
-ɽϻȤʤǥեȤ@samp{"\n"}
-
-@item $\
-ϥ쥳ɥѥ졼ѿʸꤹ@code{write}
-@code{print}٤˺ǸˤʸղäƽϤ롥ǥեȤ
-@code{nil} (ʤˤɲäʤ)
-
-@item $,
-@code{Array:join}ΥǥեȤζڤʸ@code{print}γưδ
-˽Ϥʸ
-
-@item $;
-@code{String:split}ΥǥեȤζڤʸ
-
-@item $.
-Ǹɤϥեιֹ桥
-
-@item $<
-(ʤɸ)ǹ벾ۥե롥Ĥޤ@code{gets}
-@code{$<.gets}Ʊ̣Ǥ롥@code{$<.file}Ǹɤ߹Υե
-륪֥Ȥ@code{$<.filename}ǤΥե̾롥(Ф
-: @code{<}ϥϸ)
-
-@item $>
-@code{print}@code{printf}ΥǥեȤν补ͤ
-@code{$stdout}@samp{-i}ץꤷˤɤ߹߸Ʊ
-̾Υե롥(Ф: @code{>}ϥν)
-
-@item $_
-Ǹ@code{gets}ʤɤɤ߹ʸ
-
-@item $0
-rubyץȤ̾ѿ@samp{ps(1)}νϤѲ롥
-
-@item $*
-rubyץȤͿ줿rubyȤФϼƤ롥
-
-@item $$
-߼¹rubyץpid
-
-@item $?
-Ǹ˼¹Ԥҥץstatus
-
-@item $:
-եɤ˸ǥ쥯ȥؤΥѥޤ󡥵ư
-ˤϥǥե(ѥ˻ꤹ)˲äơĶѿ
-@var{RUBYLIB}ͤrubyư@samp{-I}ץǻꤵ줿ͤɲ
-롥(Ф: ϴĶѿ@var{PATH}ζڤʸǤ)
-
-@item $"
-@code{require}ǥɤ줿ե̾ޤ@code{require}Ʊ
-ե2ɤʤѤ롥(Ф: prevent files to
-be doubly quoted(loaded))
-
-@item $ARGF
-@code{$<}̾
-
-@item $ARGV
-@code{$*}̾
-
-@item $DEBUG
-@code{-d}ե饰ξ()
-
-@item $FILENAME
-ۥե@code{$<}Ǹɤ߹(᥽ågetsɤǤ)ե
-̾@code{$<.filename}Ʊ
-
-@item $KCODE
-߽оݤȤƤɤɽʸ@samp{"EUC"}
-@samp{"SJIS"}ޤ@samp{"NONE"}ѿͤѹɽΥޥ
-ľɽκƥѥ뤬Ԥ롥
-
-@item $LOAD_PATH
-@code{$:}̾
-
-@item $stdin
-
-@item $stdout
-
-@item $stderr
-ɸ२顼
-
-@item $VERBOSE
-@code{-v}ե饰ξ()
-
-@item TRUE
-@itemx FALSE
-줾쿿ͤɽ(@code{TRUE}ͤt@code{FALSE}ͤ@code{nil})
-ȽǤ@code{nil}򵶡ʳƤͤ򿿤ȤȽǤ뤿ᡤ
-@code{TRUE}ͤɽŪʿͤȤʾΰ̣ʤäơ
-᥽åɤͤǤȤȤȡ줬@code{TRUE}֤Ȥ
-Ȥϸ̩ˤƱǤϤʤ(ҸŪѤ᥽åɤ񿿤ͤȤ
-@code{TRUE}֤褦ˤϤʤäƤ뤬)Ĥޤ
-
-@example
-if some.method() then @dots{} else @dots{} end
-@end example
-
-
-
-@example
-if some.method() == TRUE then @dots{} else @dots{} end
-@end example
-
-ϴˤƱǤϤʤ@code{FALSE}˴ؤƤϡΤ褦
-
-@item STDIN
-ɸ($stdinν)
-@item STDOUT
-ɸ($stdoutν)
-@item STDERR
-ɸ२顼($stderrν)
-
-@item ENV
-Ķѿ˥Ϣʸ򥭡ȤͿбĶ
-ѿͤ롥Ķѿ¸ߤʤ@code{nil}֤롥
-
-@item VERSION
-rubyΥС򼨤ʸ
-@end table
-
-@node Ȥ߹ߥ饹ȥ⥸塼, CȤΥ󥿥ե, Ȥ߹ѿ, Top
-@comment node-name, next, previous, up
-@chapter Ȥ߹ߥ饹ȥ⥸塼
-
-@menu
-饹
-* Array::
-* Bignum::
-* Class::
-* Dir::
-* File::
-* Fixnum::
-* Float::
-* Hash::
-* Integer::
-* IO::
-* Kernel::
-* Module::
-* Nil::
-* Numeric::
-* Object::
-* Proc::
-* Range::
-* Regexp::
-* String::
-* Struct::
-* Time::
-
-⥸塼
-
-* Comparable::
-* Enumerable::
-* Etc::
-* FileTest::
-* GC::
-* Math::
-* Process::
-@end menu
-
-@node Array, Bignum, Ȥ߹ߥ饹ȥ⥸塼, Ȥ߹ߥ饹ȥ⥸塼
-@comment node-name, next, previous, up
-@section Array
-
-źȤΥ饹Ǥ롥ϰŪˤ``[@dots{}]''
-Ԥʤ롥
-
-SuperClass: Object
-
-Included Modules: Enumerable
-
-Methods:
-
-@ftable @code
-@item self[@var{nth}]
-@itemx self[@var{start}..@var{end}]
-@itemx self[@var{start}, @var{length}]
-
-Ǥ˥롥ǽηǤ@var{nth}ܤǤ
-2ܤηǤ@var{start}ܤǤ@var{end}ܤǤޤ
-ʬ֤3ܤηǤ@var{start}ܤ@var{length}Ĥ
-ޤʬ֤
-
-@item self[@var{nth}] = @var{val}
-@itemx self[@var{start}..@var{end}] = @var{val}
-@itemx self[@var{start}, @var{length}] = @var{val}
-
-Ǥѹ롥ǽηǤ@var{nth}ܤǤ
-@var{val}ѹ롥2ܤη@var{start}ܤǤ@var{end}
-ܤǤޤǤ@var{val}ѹ롥3ܤηǤ@var{start}ܤ
-@var{length}ĤǤ@var{val}ѹ롥
-
-2ܡ3ܤηǤ@var{val}ǤʤФʤʤ
-
-
-
-@example
-ary = [1, 2, 3, 4, 5]
-ary[0..2] = [0, 0] # Ƥ [0, 0, 4, 5]
-ary[1, 0] = [7] # Ƥ [0, 7, 0, 6, 5]
-@end example
-
-@item self + @var{other}
-
-Ϣ롥@code{self}@var{other}ξƤҤ
-
-@item self * @var{times}
-
-η֤
-
-@item self - @var{other}
-
-κ黻@code{self}@var{other}ǤƤο
-֤ʣǤ1٤롥
-
-@item self * @var{other}
-
-ѱ黻ξ˴ޤޤǤʤ뿷֤
-ʣǤ1٤롥
-
-@item self | @var{other}
-
-±黻ξˤ줫˴ޤޤǤƴޤ࿷
-֤ʣǤ1٤롥
-
-@item self << @var{obj}
-
-objɲä롥@code{self}֤Τ@code{C++}ŪϢǤ
-롥
-
-@item assoc(@var{key})
-
-Ϣۥꥹ(2ǤǤȤ)򸡺1Ǥ@var{key}
- (@code{==}Ӥ)֤
-
-@item clear
-
-礭0ˤ롥
-
-@item delete(@var{val})
-
-@var{val}ȰפǤ롥
-
-@item delete_if @{@dots{}@}
-
-Ǥ륤ƥ졼֥åɾͤλбǤ
-󤫤롥
-
-@item each @{@dots{}@}
-
-γǤͿ륤ƥ졼
-
-@item fill(@var{val})
-@itemx fill(@var{val}, @var{start}[, @var{length}])
-@itemx fill(@var{val}, @var{start}..@var{end})
-
-(λꤵ줿ʬ)Ǥͤ@var{val}ꤹ롥2֤η
-@var{length}ά줿νޤǤĹȤ롥ꤵ줿ʬ
-󤬸ϰϤۤϼưŪ˳ĥ롥
-
-@item index(@var{val})
-
-@var{val}ǽǤΥǥå֤Ǥ¸ߤ
-ʤ@code{nil}֤
-
-@item indexes(@var{ary})
-@itemx indexes(@var{index_}1,@dots{}, @var{index_n})
-
-1ܤηǤȤƼơǤ򥤥ǥå
-Ǥޤ֤2ܤηǤϳưͤ򥤥ǥåȤ
-Ǥޤ֤
-
-@item join([@var{sep}])
-
-ǤϢ뤷ʸ֤ǤʸѴ졤֤
-@var{sep}򶴤Ϣ뤵롥@var{sep}ά줿ˤϥƥѿ
-@code{$,}ͤѤ롥
-
-@item length
-@itemx size
-
-Ĺ(ǿ)֤
-
-@item pack(@var{template})
-
-Ƥ@var{template}ʸˤäơ1Ĥʸ˥ѥå롥
-ѥåʸ֤ƥץ졼ȤϷʸȤĹ(ά
-1)¤٤ΤǤ롥ĹȤ@code{*}ꤵ줿ϡֻĤΥǡ
-ơפĹɽ
-
-ʸϰʲΤΤ롥
-
-@display
-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Хȸ
-@@ а֤ؤΰư
-@end display
-
-@item pop
-
-Ǥơ֤
-
-@item push(@var{obj})
-
-@var{obj}ɲä롥
-
-@item rassoc(@var{value})
-
-Ϣۥꥹ(2ǤǤȤ)򸡺2Ǥ@var{value}
-(@code{==}Ӥ)֤
-
-@item shift
-
-ƬǤơ֤
-
-@item sort
-@itemx sort @{|@var{a}, @var{b}|@dots{}@}
-
-Ƥ򥽡Ȥ롥ƥ졼ȤƸƤӽФ줿ϥ֥åɾ
-ͤǤ羮ꤹ롥礭0
-顥̾Υ᥽åɤȤƸƤӽФ줿ϳǤ@code{<=>}Ӥ롥
-
-@item to_a
-
-ʬȤ֤оΤѰդƤ᥽åɤǤޤ򤯤ʤ
-
-@item unshift(@var{obj})
-
-@var{obj}Ƭɲä롥
-@end ftable
-
-Single Methods:
-
-@ftable @code
-@item Array[@var{item}@dots{}]
-
-ǤȤ롥
-@end ftable
-
-@xref{Object}
-@xref{Enumerable}
-
-@node Bignum, Class, Array, Ȥ߹ߥ饹ȥ⥸塼
-@comment node-name, next, previous, up
-@section Bignum
-
-̵¿ĹΥ饹黻η̤@code{Fixnum}ϰǤ
-ˤϼưŪ˥饹@code{Fixnum}Ѵ롥Ūrubyץ
-Ǥ@code{Fixnum}@code{Bignum}ѴϰۤΤ˹ԤΤǡ
-ɬפ̵@code{Float}Ȥκ˴ؤƤϡ@code{Bignum}
-@code{Float}genericity⤤Τˤؤ餺@code{Bignum}
-礭ͤɽǤΤǡѴ˷ǽ롥
-
-SuperClass: Integer
-
-Methods:
-
-@ftable @code
-@item self + @var{other}
-@itemx self - @var{other}
-@itemx self * @var{other}
-@itemx self / @var{other}
-@itemx self % @var{other}
-@itemx self ** @var{other}
-
-ѱ黻줾¡ѡ;Ѿ֤
-
-@item ~ self
-@itemx self | @var{other}
-@itemx self & @var{other}
-@itemx self ^ @var{other}
-
-ӥåȱ黻줾ӥåȿž¡ѡ¾Ū¤֤
-
-@item self << @var{bits}
-@itemx self >> @var{bits}
-
-եȱ黻줾@var{bits}ӥåȤ˥ӥåȥեȤԤʤ
-
-@item divmod(@var{other})
-
-Ⱦ;ʤ֤
-@end ftable
-
-@xref{Integer}
-
-@node Class, Comparable, Bignum, Ȥ߹ߥ饹ȥ⥸塼
-@comment node-name, next, previous, up
-@section Class
-
-饹Υ饹긷̩ȥ饹ðۥ᥽åɤѾ뤿
-ˡ줾᥿饹ȸƤФ̾Τʤ饹򥯥饹Ȥƻ
-@code{Class}ϤΥ᥿饹Υ饹Ǥ(ʬä?)β
-⤬ǤʤƤ⡤rubyȤȤ˲λپʤ饹ˤðۥ
-åɤǤȡѡ饹줿ðۥ᥽åɤϤΥ
-֥饹ǤͭǤΤнʬǤ롥
-
-SuperClass: Module
-
-Private Methods:
-
-@ftable @code
-@item attr(@var{name}[, @var{public}])
-
-Υ饹Υ󥹥󥹤Ф@var{name}ǻꤵ°롥
-ܤ@code{Module}@code{attr}᥽åɤι򻲾ȤΤȡ
-@end ftable
-
-Methods:
-
-@ftable @code
-@item new(@dots{})
-
-饹Υ󥹥󥹤롥¿ξ礳Υ᥽åɤϥ֥饹
-ۥ᥽åɤˤäƥС饤ɤ졤饹ˤäưۤʤ롥
-@end ftable
-
-@xref{Module}
-
-@node Comparable, Dir, Class, Ȥ߹ߥ饹ȥ⥸塼
-@comment node-name, next, previous, up
-@section Comparable
-
-ӱ黻饹Τ@code{Mixin}Υ⥸塼򥤥󥯥롼
-뤳Ȥˤäơ@code{<=>}黻Ҥ¾α黻ҤϤ
-ѤǤ롥
-
-Methods:
-
-@ftable @code
-@item self == @var{other}
-
-@code{self}@var{other}֤
-
-@item self > other
-
-@code{self}@var{other}礭֤
-
-@item self >= @var{other}
-
-@code{self}@var{other}礭֤
-
-@item self < @var{other}
-
-@code{self}@var{other}꾮֤
-
-@item self <= @var{other}
-
-@code{self}@var{other}꾮֤
-
-@item between?(min, max)
-
-@code{self}@var{min}@var{max}ϰˤ֤
-@end ftable
-
-@node Dir, Enumerable, Comparable, Ȥ߹ߥ饹ȥ⥸塼
-@comment node-name, next, previous, up
-@section Dir
-
-ǥ쥯ȥǤ֤ǥ쥯ȥꥹȥ꡼ΤΥ饹
-
-SuperClass: Object
-
-Included Modules: Enumerable
-
-Methods:
-
-@ftable @code
-
-@item close
-
-ǥ쥯ȥꥹȥ꡼򥯥롥ʸ㳰ȯ롥
-
-@item each @{|@var{item}|@dots{}@}
-
-ǥ쥯ȥγǤͿ륤ƥ졼
-
-@item getwd
-@itemx pwd
-
-ȥǥ쥯ȥ֤
-
-@item rewind
-
-ǥ쥯ȥꥹȥ꡼Ƭ˥ꥻåȤ롥
-
-@item seek(@var{pos})
-
-ǥ쥯ȥꥹȥ꡼ΰ֤@var{pos}ꤹ롥
-
-@item tell
-
-ǥ쥯ȥꥹȥ꡼θߤΰ֤֤
-
-Single Methods:
-
-@item self[@var{pat}]
-@itemx glob(@var{pat})
-
-ʸ@var{pat}@samp{sh}Υ磻ɥɤȤŸ̤ʸ
-Ȥ֤񼰤ϰʲ̤Ǥ롥
-
-@ftable @samp
-@item *
-Ǥդʸ(ʸޤ)Ȱ
-@item ?
-Ǥդ1ʸȰ
-@item [ ]
-[]Τ줫1ʸȰ
-@item {@dots{}}
-{}(ޤǶڤ줿)줫ʸȰ
-@end ftable
-
-@item chdir(@var{path})
-
-ȥǥ쥯ȥ@var{path}ѹ롥
-
-@item chroot(@var{path})
-
-ץΥ롼ȥǥ쥯ȥѹ롤Ʊ̾ΥƥॳƱƯ
-򤹤롥ϼ¸uidѥ桼Ǥ¤Ƥ롥
-롼ȥǥ쥯ȥ򸵤᤹(롼ȥǥ쥯ȥѹ)ˡ
-󶡤Ƥʤ
-
-@item mkdir(@var{path}[, @var{mode}])
-
-@var{mode}ǻꤵ줿⡼ɤĥǥ쥯ȥ@var{path}롥⡼
-ɤ@code{umask}ˤäƽ롥@var{mode}Υǥեͤ0777
-
-@item open(@var{path})
-
-@var{path}Фǥ쥯ȥꥹȥ꡼򥪡ץ󤹤롥
-
-@item rmdir(@var{path})
-
-@var{path}ǻꤵ줿ǥ쥯ȥ롥ǥ쥯ȥ϶Ǥɬ
-פ롥
-@end ftable
-
-@xref{Object}
-@xref{Enumerable}
-
-@node Enumerable, File, Dir, Ȥ߹ߥ饹ȥ⥸塼
-@comment node-name, next, previous, up
-@section Enumerable
-
-ǤФ뷫֤Ԥʤ饹Τ@code{Mixin}Υ⥸塼
-򥤥󥯥롼ɤ뤿ˤϡ᥽å@code{each}ɬפ롥
-
-Methods:
-
-@ftable @code
-
-@item collect @{|@var{item}|@dots{}@}
-
-ǤФƥ֥åɾ̤ƴޤ֤
-
-@item find @{|@var{item}|@dots{}@}
-
-ǤФƥ֥åɾͤˤʤäǽǤ֤
-
-@item find_all @{|@var{item}|@dots{}@}
-
-ǤФƥ֥åɾͤǤäǤƴޤ֤
-
-@item grep(pattern)
-@itemx grep(pattern) @{|@var{item}|@dots{}@}
-
-@code{ =~ @var{pattern}}ΩƤǤޤ֤
-졼ȤѤ줿Ͼ嵭ξΩǤФƥ֥å
-Ԥ롥
-
-@item member?(@var{val})
-
-@var{val}@code{==}δطˤǤĻ֤
-
-@item index(@var{val})
-
-@var{val}@code{==}δطˤ륪֥Ȥܤ˸줿֤
-ֺǽǤ0ˤʤ롥Ǥ¸ߤʤˤ@code{nil}֤
-Τʤ饹ФƤϤޤ̣ʤ
-
-@item length
-
-Ǥο֤
-
-@item min
-
-ǾǤ֤ƤǤߤ@code{<=>}᥽åɤӤǤ뤳
-ȤꤷƤ롥
-
-@item max
-
-Ǥ֤Ǥ@code{<=>}᥽åɤӤǤ뤳Ȥꤷ
-롥
-
-@item reverse
-
-ƤǤս¤٤֤
-
-@item sort
-@itemx sort @{|@var{a}, @var{b}|@dots{}@}
-
-ƤǤ򥽡Ȥ֤
-@end ftable
-
-@node File, FileTest, Enumerable, Ȥ߹ߥ饹ȥ⥸塼
-@comment node-name, next, previous, up
-@section File
-
-ե륢ΤΥ饹᥽å@code{open}롥ޤ
-Υ饹ðۥ᥽åɤȤ@code{test}Υեƥȱ黻
-᥽åɤƤ(@code{FileTest}⥸塼Υ᥽åɷ)
-
-SuperClass: IO
-
-Methods:
-
-@ftable @code
-
-@item atime
-
-եκǽ֤
-
-@item ctime
-
-եκǽơѹ֤
-
-@item chmod(@var{mode})
-
-եΥѡߥåѹ(cf @samp{chmod(2)})
-
-@item chown(@var{owner}, @var{group})
-
-եνͭԤȥ롼פѹ(cf @samp{chown(2)})@code{nil}
-@code{-1}ꤹ뤳ȤˤäƽͭԤ䥰롼פ򸽺ߤΤޤѤʤ
-ȤǤ롥
-
-@item eof
-@itemx eof?
-
-եνüã˿֤
-
-@item lstat
-
-ե˴ؤ@code{Stat}¤Τ֤@code{lstat}ϥե뤬
-ܥå󥯤ǤХ󥯤ΤΤ˴ؤ@code{Stat}¤Τ֤
-¤ΤƤˤĤƤ@code{stat}򻲾ȤΤȡ
-
-@item mtime
-
-եκǽ֤
-
-@item rewind
-
-եΥեݥ󥿤ΰ֤Ƭ˰ư롥
-
-@item path
-
-եΥѥ֤̾
-
-@item seek(@var{offset}, @var{ptrname})
-
-եΥեݥ󥿤ΰ֤@var{offset}˰ư롥
-@var{ptrname}012Τ줫Ǥäơ줾եƬ
-֡եνüФ򼨤
-
-@item stat
-
-ե˴ؤ@code{Stat}¤Τ֤(@xref{Struct})
-
-@display
-struct stat
- dev # ե¸ߤǥХ
- ino # եi-nodeֹ
- mode # ⡼
- nlink # ϡɥ󥯤ο
- uid # ͭԤΥ桼ID
- gid # ͭԤΥ롼ID
- rdev # ǥХID(ڥեΤ)
- size # ե륵(byte)
- blksize # ե륷ƥˤŬڤʥ֥å
- blocks # ֥å
- atime # ǽ
- mtime # ǽ
- ctime # ǽѹ
-end
-@end display
-
-ܺ٤@samp{stat(2)}򻲾ȤΤȡƥƤ
-@code{Stat}¤Τ˳Фʤ0ꤵƤ롥
-
-@item tell
-
-եθߤΥեݥ󥿤ΰ֤֤
-
-@item truncate(@var{length})
-
-եڤΤƤƺ@var{length}ХȤˤ롥ե
-@code{write}⡼ɤǥץ󤵤ƤʤФʤʤ
-
-Single Methods:
-
-@item atime(@var{filename})
-
-@var{filename}κǽ֤
-
-@item basename(@var{filename}[, @var{suffix}])
-
-@var{filename}κǸǤ֤@var{suffix}Ϳ줿ϡ
-ĥҤ
-
-@example
-basename("ruby/ruby.c")
- @result{} "ruby.c"
-basename("ruby/ruby.c", ".c")
- @result{} "ruby"
-@end example
-
-@item ctime(@var{filename})
-
-@var{filename}κǽơѹ֤
-
-@item chmod(@var{mode}, @var{path}, @var{file}@dots{})
-
-եΥѡߥåѹ(cf @samp{chmod(2)})ѹե
-
-@item chown(@var{owner}, @var{group}, @var{file}@dots{})
-
-եνͭԤȥ롼פѹ(cf @samp{chown(2)})@code{nil}
-@code{-1}ꤹ뤳ȤˤäƽͭԤ䥰롼פ򸽺ߤΤޤѤʤ
-ȤǤ롥ѹե֤
-
-@item dirname(@var{fname})
-
-ե̾κǸǰʳ֤
-
-@item expand_path(@var{path})
-
-ե̾ХѥŸ롥@samp{~}ϥۡǥ쥯ȥŸ
-롥
-
-@example
-expand_file_name("..")
- @result{} "/home/matz/work"
-expand_file_name("~")
- @result{} "/home/matz"
-expand_file_name("~matz")
- @result{} "/home/matz"
-@end example
-
-@item link(@var{old}, @var{new})
-
-@var{old}ؤΥϡɥ@var{new}롥@samp{link(2)}Ʊ
-롥
-
-@item mtime(@var{filename})
-
-@var{filename}κǽ֤
-
-@item readlink(@var{path})
-
-ܥå@var{path}ƤʸȤ֤
-
-@item rename(@var{from}, @var{to})
-
-ե̾@var{from}@var{to}ѹ롥@samp{rename(2)}ȡ
-@var{to}Ȥ̾Υե뤬¸ߤˤϤޤΥե뤬
-롥
-
-@item stat(@var{filename})
-
-@var{filename}Υե@code{Stat}¤Τ֤
-
-@item symlink(@var{old}, @var{new})
-
-@var{old}ؤΥܥå@var{new}롥
-
-@item truncate(@var{path}, @var{length})
-
-@var{path}ǻꤵ줿եڤΤƤƺ@var{length}ХȤˤ롥
-
-@item type(@var{filename})
-
-@var{filename}ΥեΥפɽʸ֤ʸ
-@code{"file"}@code{"directory"}@code{"characterSpecial"}
-@code{"blockSpecial"}@code{"fifo"}@code{"link"}@code{"socket"}
-Τ줫ĤǤ롥
-
-@item unlink(@var{file}@dots{})
-
-ե롥ǥ쥯ȥκˤ@code{Dir.rmdir}Ȥȡ
-
-@item utime(@var{atime}, @var{mtime}, @var{file}@dots{})
-
-եΥ@var{atime}ˡ@var{mtime}ꤹ롥
-@var{atime}@var{mtime}Ͽޤ@code{Time}饹Υ󥹥󥹤Ǥ
-Фʤʤ
-@end ftable
-
-ʳ@code{FileTest}⥸塼Υ᥽åɤðۥ᥽åɤȤƻġ
-
-@xref{IO}
-
-@node FileTest, Fixnum, File, Ȥ߹ߥ饹ȥ⥸塼
-@comment node-name, next, previous, up
-@section FileTest
-
-եƥѥ᥽åɤ򽸤᤿⥸塼롥󥯥롼ɤѤ뤳
-Ǥ롥Υ⥸塼Υ᥽åɤ˥ե̾Ȥ@code{"&"}ꤹ
-ȡľΥեؤ@samp{stat(2)}η̤Ѥ롥
-
-Methods:
-Single Methods:
-
-@ftable @code
-@item blockdev?(@var{filename})
-
-@var{filename}Υե뤬֥åڥեǤ֤
-
-@item chardev?(@var{filename})
-
-@var{filename}Υե뤬饯ڥեǤ
-
-
-@item executable?(@var{filename})
-
-@var{filename}Υե뤬¹Բǽλ֤
-
-@item executable_real?(@var{filename})
-
-@var{filename}Υե뤬uid/gidǼ¹Բǽλ֤
-
-@item exists?(@var{filename})
-
-@var{filename}Υե뤬¸ߤ֤
-
-@item grpowned?(@var{filename})
-
-@var{filename}Υեgid¸롼פgidƱ֤
-
-@item directory?(@var{filename})
-
-@var{filename}ǥ쥯ȥλ֤
-
-@item file?(@var{filename})
-
-@var{filename}Υե뤬̾եλ֤
-
-@item link?(@var{filename})
-
-@var{filename}Υե뤬ܥå󥯤Ǥ֤
-
-@item pipe?(@var{filename})
-
-@var{filename}Υե뤬̾Ĥѥ(@code{FIFO})Ǥ
-
-
-@item socket?(@var{filename})
-
-@var{filename}Υե뤬åȤǤ֤
-
-@item owned?(@var{filename})
-
-@var{filename}Υե¸桼ͭƤ֤
-
-@item readable?(@var{filename})
-
-@var{filename}ΥեɤߤȤǽλ֤
-
-@item readable_real?(@var{filename})
-
-@var{filename}Υեuid/gidɤߤȤǽλ֤
-
-@item setuid?(@var{filename})
-
-@var{filename}ΥեsetuidӥåȤåȤƤ֤
-
-@item setgid?(@var{filename})
-
-@var{filename}ΥեsetgidӥåȤåȤƤ֤
-
-@item size(@var{filename})
-
-@var{filename}Υե뤬¸ߤե礭֤¸ߤ
-@code{nil}֤
-
-@item sticky?(@var{filename})
-
-@var{filename}ΥեstickyӥåȤåȤƤ֤
-
-@item symlink?(@var{filename})
-
-@var{filename}ܥå󥯤Ǥ֤
-
-@item writable?(@var{filename})
-
-@var{filename}Υե뤬uid/gidǽ񤭹߲ǽλ֤
-
-@item writable_real?(@var{filename})
-
-@var{filename}Υե뤬񤭹߲ǽλ֤
-
-@item zero?(@var{filename})
-
-@var{filename}Υե뤬¸ߤ礭0Ǥ֤
-@end ftable
-
-@node Fixnum, Float, FileTest, Ȥ߹ߥ饹ȥ⥸塼
-@comment node-name, next, previous, up
-@section Fixnum
-
-31bit(ޥlongĹ-1 bit)Υ饹builtin classǤ롥
-饹pointer¨ͤǤ뤿call by valueǸƤӽФħŪ
-Ǥ(¾Υ饹call by reference)黻η̤31bitۤ
-ϼưŪ@code{Bignum}(̵¿Ĺ)˳ĥ롥
-
-ƥ졼@code{upto}@code{downto}@code{step}Ϸ֤Τ
-졤̤@code{Range}饹Ѥ®Ǥ롥
-
-SuperClass: Integer
-
-Methods:
-
-@ftable @code
-@item self + @var{other}
-@itemx self - @var{other}
-@itemx self * @var{other}
-@itemx self / @var{other}
-@itemx self % @var{other}
-@itemx self ** @var{other}
-
-ѱ黻줾¡ѡ;Ѿ֤
-
-@item ~ self
-@itemx self | @var{other}
-@itemx self & @var{other}
-@itemx self ^ @var{other}
-
-ӥåȱ黻줾ӥåȿž¡ѡ¾Ū¤֤
-
-@item self << @var{bits}
-@itemx self >> @var{bits}
-
-եȱ黻줾@var{bits}ӥåȤ˥ӥåȥեȤԤʤ
-
-@item downto(@var{min}) @{@dots{}@}
-
-ƥ졼@code{self}@var{min}ޤDz˷֤
-
-@item id2name
-
-ͤIDȤߤʤơʸ֤ʸ¸ߤ
-@code{nil}֤
-
-@item step(@var{max}, @var{step}) @{@dots{}@}
-
-ƥ졼@code{self}@var{max}ޤ@var{step}Ѳʤ顤
-
-@item to_f
-
-@code{self}@code{Float}ѴΤ֤
-
-@item to_i
-
-@code{self}򤽤Τޤ֤
-
-@item upto(@var{max}) @{@dots{}@}
-
-ƥ졼@code{self}@var{max}ޤǷ֤
-@end ftable
-
-@xref{Integer}
-
-@node Float, GC, Fixnum, Ȥ߹ߥ饹ȥ⥸塼
-@comment node-name, next, previous, up
-@section Float
-
-ưΥ饹
-
-SuperClass: Numeric
-
-Methods:
-
-@ftable @code
-@item self + @var{other}
-@itemx self - @var{other}
-@itemx self * @var{other}
-@itemx self / @var{other}
-@itemx self % @var{other}
-@itemx self ** @var{other}
-
-ѱ黻줾¡ѡ;Ѿ֤
-
-@item self == @var{other}
-@itemx self > @var{other}
-
-ӱ黻
-
-@item coerce(@var{num})
-
-@var{num}@code{Float}Ѵ롥@code{Float}
-¾ο@code{Fixnum}@code{Bignum}Ǥ롥
-
-@item to_f
-
-@code{self}򤽤Τޤ֤
-
-@item to_i
-
-@code{self}Ѵ̤֤
-@end ftable
-
-Single Methods:
-
-@ftable @code
-@item new(@var{float})
-
-@var{float}ƱͤĿ@code{Float}֥Ȥ֤
-@end ftable
-
-@xref{Numeric}
-
-@node GC, Hash, Float, Ȥ߹ߥ饹ȥ⥸塼
-@comment node-name, next, previous, up
-@section GC
-
-RubyȤ߹ߤgarbage collectorԤʤΥ⥸塼롥Υ
-塼Υ᥽åɤѤ뤳ȤˤäơŪGCߤ᤿ꡤGCε
-륿ߥ󥰤椷Ǥ롥
-
-Methods:
-
-@ftable @code
-@item garbage_collect
-
-GC򳫻Ϥ롥@code{GC.start}Ʊ
-@end ftable
-
-Single Methods:
-
-@ftable @code
-@item disable
-
-GCػߤ롥
-
-@item enable
-
-GCĤ롥
-
-@item start
-
-GC򳫻Ϥ롥
-@end ftable
-
-@node Hash, Integer, GC, Ȥ߹ߥ饹ȥ⥸塼
-@comment node-name, next, previous, up
-@section Hash
-
-Ϣ󤢤뤤ϥϥåɽǤդΥ֥ȤźȤǤΥ
-Ǥ롥Ϣ󥪥֥ȤϰŪˤϢ
-
-@display
-{a=>b,@dots{}}
-@end display
-
-ǹԤʤ롥
-
-ȤͿ֥ȤƤѲ᥽å@code{hash}֤
-ͤѤ@code{Hash}ưʤ(ͤФʤʤ)
-ˤä@code{hash}ͤѲ륯饹(Ȥ@code{Array},
-@code{Hash}ʤ)Υ󥹥󥹤ϥ˸ʤƤ
-@code{hash}ͤ˱ƶ륪֥ȤΤʸ̤˰
-롥ʸ򥭡ȤͿȡʸ򥳥ԡԡ򹹿ԲĤ
-ꤷǡȤƻѤ롥äơʸ򹹿Ƥ⥭ʸ
-Ѳʤ@code{each}, @code{each_key}, @code{keys}ʤɤΥ᥽
-ɤȤʸ֤ʸϹǤʤ(㳰ȯ)
-
-SuperClass: Object
-
-Included Modules: Enumerable
-
-Methods:
-
-@ftable @code
-@item self [@var{key}]
-
-@var{key}򥭡Ȥ֤ͤ
-
-@item self [@var{key}]= @var{value}
-
-@var{key}򥭡Ȥơ@var{value}Ǽ롥@var{value}Ȥ
-@code{nil}ꤹȤ@var{key}ФܤκȤʤ롥Ĥޤꡤ
-@code{Hash}ͤȤ@code{nil}ĤȤϤǤʤ
-
-@item clear
-
-Ϣˤ롥
-
-@item delete(@var{key})
-
-@var{key}򥭡ȤȤ롥
-
-@item delete_if @{|@var{item}|@dots{}@}
-
-Ǥ륤ƥ졼@code{[key,value]}ȤͿơ֥
-ɾͤλܤ롥
-
-@item each @{|@var{key}, @var{value}|@dots{}@}
-@itemx each_pair @{|@var{key}, @var{value}|@dots{}@}
-
-@code{[key,value]}ʤ2ǤͿ륤ƥ졼
-
-@item each_key @{|@var{key}|@dots{}@}
-
-ƤkeyФƷ֤ƥ졼
-
-@item each_value @{|@var{value}|@dots{}@}
-
-ƤvalueФƷ֤ƥ졼
-
-@item has_key?(@var{key})
-
-@var{key}򥭡ȤȤϢ¸ߤ֤
-
-@item has_value?(@var{value})
-
-@var{value}ͤȤȤϢ¸ߤ֤
-
-@item indexes(@var{ary})
-@itemx indexes(@var{key_}1,@dots{}, @var{key_n})
-
-1ܤηǤȤƼơǤ򥭡ȤǤޤ
-֤2ܤηǤϳưͤ򥭡ȤǤޤ֤
-
-@item keys
-
-Ϣ¸ߤ륭Ƥޤ֤
-@item length
-@itemx size
-
-ϢǤο֤
-
-@item shift
-
-ϢǤļФ()@code{[key,value]}ʤ2
-
-@item to_a
-
-Ϣ@code{key-value}2ǤǤȤ֤
-
-@item values
-
-Ϣ¸ߤƤޤ֤
-@end ftable
-
-Single Methods:
-
-@ftable @code
-@item Hash[@var{key}, @var{value}@dots{}]
-
-ܤΰ@var{key}ܤΰ@var{value}ȤϢ
-롥
-
-@item new
-
-()Ϣ󥪥֥Ȥ֤
-@end ftable
-
-@xref{Object}
-@xref{Enumerable}
-
-@node Integer, IO, Hash, Ȥ߹ߥ饹ȥ⥸塼
-@comment node-name, next, previous, up
-@section Integer
-
-饹ºݤϤ礭ˤä@code{Fixnum}@code{Bignum}
-ĤΥ֥饹Ǽ¸Ƥ롥@code{Integer}ϤΥѡ饹
-Ȥʤݥ饹Ǥ롥RubyǤϤۤȤɤξ硤@code{Fixnum}
-@code{Bignum}ζ̤ɬפʤߤѴϼưŪ˹Ԥʤ롥
-ӥåȤߤʤˤϡ̵¤Ĺĥӥåȹͤƹʤ
-
-SuperClass: Numeric
-
-Methods:
-
-@ftable @code
-@item self[@var{idx}]
-
-@var{idx}ӥåܤåȤƤ1åȤƤʤ0
-
-@item chr
-
-ο򥳡ɤȤʸޤ1ʸʸ֤̤Ĺ1ʾ
-ʸˤĤơδطΩ롥
-
-@example
-str[0].chr == str[0,1]
-@end example
-
-ʸϰ(0@dots{}255)ˤʤ㳰ȯ롥
-
-@item integer?
-
-Ĥ⿿֤
-@end ftable
-
-@xref{Numeric}
-
-@node IO, Kernel, Integer, Ȥ߹ߥ饹ȥ⥸塼
-@comment node-name, next, previous, up
-@section IO
-
-ϤΤδܥ饹
-
-SuperClass: Object
-
-Included Modules: Enumerable
-
-Methods:
-
-@ftable @code
-@item self << @var{object}
-
-@var{object}Ϥ롥@var{object}ʸǤʤˤϥ᥽å
-@code{to_s}ѤʸѴ롥@code{self}ͤȤΤǡ
-@code{C++}Τ褦@code{<<}ϢȤ롥
-
-
-
-@example
-$stdout << 1 << " is a " << Fixnum << "\n"
-@end example
-
-@item close
-
-ϥݡȤ򥯥롥ʸΤΥ֥ȤФ
-顼ˤʤ롥
-
-@item closed?
-
-ݡȤƤ֤
-
-@item each @{|@var{line}|@dots{}@}
-@item each_line @{|@var{line}|@dots{}@}
-
-Ԥɤ߹Ǥ뤿Υƥ졼Ԥζڤϥƥѿ
-@code{$/}ˤäѹǤ롥ɤ߹ʸϥƥѿ@code{$_}
-⥻åȤ롥
-
-@itemx each_byte @{|@var{ch}|@dots{}@}
-
-ʸɤ߹Ǥ뤿Υƥ졼ʸʸɤɽ
-@code{Fixnum}Ǥ롥
-
-@item fileno
-@itemx to_i
-
-@code{IO}֥ȤȤäƤեǥץ(@code{Fixnum})
-
-@item flush
-
-Хåեեå夹롥
-
-@item getc
-
-ɤ߹ǡɤ߹ߤˤϤʸ֤եν
-ãˤ@code{nil}֤ͥ᥽å@code{getc}
-@code{$stdin.getc}Ʊ̣Ǥ롥
-
-@item gets
-
-ɤ߹ǡɤ߹ߤˤϤʸ֤եν
-ãˤ@code{nil}֤
-
-@item isatty
-@itemx tty?
-
-ϥݡȤttyǤ֤
-
-@item print(@var{arg}@dots{})
-
-˽Ϥ롥褬@code{$>}Ǥʤ쥷ФǤʳ
-@code{Kernel}饹@code{print}᥽åɤƱư򤹤롥
-
-@item printf(@var{format}, @var{arg}@dots{})
-
-@code{C}@code{printf()}Ʊ@var{format}˽ʸ
-쥷Ф˽Ϥ롥
-
-@item puts(@var{obj})
-
-@var{obj}Ϥ롥@code{self << obj}Ʊ̣Ǥ롥
-
-@item read([@var{length}])
-
-@var{length}Хɤ߹ǡʸ֤@var{length}ά
-ˤϡ@code{EOF}ޤǤƤΥǡɤ߹ࡥ
-
-@item readlines
-
-եɤ߹dzƹԤǤȤƤ֤
-
-@item sync
-
-ߤνƱ⡼ɤ򿿵֤ͤƱ⡼ɤλϽϴؿθƽ
-˥Хåեեå夵롥
-
-@item sync= @var{newstate}
-
-Ʊ⡼ɤꤹ롥
-
-@item sysread(@var{length})
-
-@samp{stdio}ͳ@samp{read(2)}ѤϤԤʤϤ줿
-ǡޤʸ֤եνãˤ@code{nil}
-@samp{read(2)}ˤɬ@var{length}ХȤʸɤ߹
-櫓ǤϤʤ@code{gets}@code{getc}ʤ@samp{stdio}ͳ
-åɤȺѤ뤳ȤϥХåե󥰤ʤɤǻפư򤹤뤳
-롥
-
-@item syswrite(@var{str})
-
-@samp{stdio}ͳˡ@samp{write(2)}ѤƽϤԤʤΥ
-åɤϥХåե󥰤ʤ@samp{stdio}Ƥ뤳ȤϰڹԤʤʤ
-@code{syswrite}ϼºݤ˽񤭹Хȿ֤@code{print}
-@code{printf}@code{syswrite}ѤΤϿ侩Ǥʤ
-
-@item write(@var{str})
-
-@var{str}Ϥ롥ϤХȿ֤
-@end ftable
-
-@xref{Object}
-@xref{Enumerable}
-
-@node Kernel, Math, IO, Ȥ߹ߥ饹ȥ⥸塼
-@comment node-name, next, previous, up
-@section Kernel
-
-ƤΥ饹δ쥯饹RubyȤ߹ߤƤδؿ᥽åɤϤΥ饹
-Ƥ롥ؿ᥽åɤˤĤƤϡִؿפιܤ򻲾ȤΤȡ
-
-SuperClass: ʤ
-
-Methods:
-
-@ftable @code
-@item self == @var{other}
-@itemx equal?(@var{other})
-
-֥ȤΰȽꡥ쥷ФȰΰפ֤
-@code{Kernel}饹ǤΥ֥ȤƱλ֤
-@code{==}᥽åɤϳƥ֥Ȥ˱ƺɬפ롥
-@code{==}᥽åɤˤϡ@code{hash}᥽åɤ⤽˹碌
-ƺɬפ롥
-
-equal?᥽åɤ@code{==}᥽åɤ̾ǡ@code{==}Ǥ
-֥ȤƱȽԤʤѤ롥ä@code{equal?}
-᥽åɤϥ֥饹Ǻ٤ǤϤʤ
-
-@item self =~ @var{other}
-
-ޥåǥեȤư@code{==}ƱǤ롥@code{=~}
-@code{case}ʸǤӤˤѤ롥
-
-@item hash
-
-֥ȤΥϥå(@code{Fixnum})֤@code{Hash}饹ǥ
-Ȥʤ륪֥ȤǼΤѤƤ.@code{A == B}Ω
-ɬ@code{A.hash == B.hash}ΩɬפΤǡ@code{==}
-ˤɬ⤽˹碌ƺ뤳ȡ
-
-@item id
-
-ƥ֥ȤФưդ@code{Fixnum}֤@code{Fixnum}ϼ
-ʬȤ֤Τǡ@code{id}פƤƱ֥ȤǤ뤳Ȥ
-ڤʤĤޤꡤ@code{obj1.id == obj2.id}ΩƤ⡤ɤ餫
-@code{Fixnum}ǤС@code{obj1}@code{obj2}ƱǤȤϸ¤
-ξ@code{Fixnum}ǤʤȤݾڤǤС2ĤΥ֥
-ȤƱǤ뤳Ȥϳμ¤Ǥ롥
-
-@item inspect
-
-֥Ȥʹ֤ɤʸѴ롥
-
-@item nil?
-
-֥Ȥ@code{nil}Ǥ뤫ɤ@code{Kernel}饹Ǥ
-֤@code{Nil}饹ǵ֤褦Ƥ롥
-
-
-@item type
-
-֥ȤưŪʷ(饹)֤
-
-@example
-obj.is_kind_of?(obj.type)
-@end example
-
-ϾΩ롥
-
-@item send(@var{symbol}[, @var{args}@dots{}])
-
-@var{symbol}ǻꤵ᥽åɤ@var{args}ȤȤ˸ƤӽФ
-
-@end ftable
-
-@node Math, Module, Kernel, Ȥ߹ߥ饹ȥ⥸塼
-@comment node-name, next, previous, up
-@section Math
-
-ư黻򥵥ݡȤ륯饹Math⥸塼ƱΥ᥽å
-ðۥ᥽åɤȤξƤΤǡðۥ᥽åɤƤӽФƻ
-Ȥȡ饹˥󥯥롼ɤƻȤȤȤξǤ롥
-
-
-
-@example
-pi = Math.atan2(1, 1) * 4;
-include Math
-pi2 = atan2(1, 1)
-@end example
-
-Methods:
-Single Methods:
-
-@ftable @code
-@item atan2(@var{x}, @var{y})
-
-С-ФϰϤ@var{x}/@var{y}Υ󥸥Ȥ֤
-
-@item cos(@var{x})
-@itemx sin(@var{x})
-@itemx tan(@var{x})
-
-饸ɽ줿@var{x}λѴؿ֤ͤ
-
-@item exp(@var{x})
-
-@var{x}λؿؿ֤ͤ
-
-@item log(@var{x})
-
-@var{x}μп֤
-
-@item log10(@var{x})
-
-@var{x}ξп֤
-
-@item sqrt(@var{x})
-
-@var{x}ʿ֤@var{x}ͤǤˤ㳰ȯ롥
-
-@item cbrt(@var{x})
-
-@var{x}Ω֤
-@end ftable
-
-@node Module, Nil, Math, Ȥ߹ߥ饹ȥ⥸塼
-@comment node-name, next, previous, up
-@section Module
-
-⥸塼Υ饹
-
-SuperClass: Object
-
-Private Methods:
-
-@ftable @code
-@item attr(@var{name}[, @var{public}])
-
-Υ⥸塼򥤥󥯥롼ɤ饹Υ󥹥󥹤Ф@var{name}
-ǻꤵ°ղä°Ф륢᥽åɤ롥
-@code{attr("attr")}ϥ饹˰ʲ˼ɤɲäΤȤۤƱ
-Ǥ롥
-
-@example
-def attr; @@attr; end
-@end example
-
-άǽ2@var{public}ͿơĤͤ@code{nil}Ǥ
-ˤϤ°ˤ°᥽åɤѰդ졤ǽˤʤ롥
-
-@code{attr("attr", TRUE)}ϥ饹˰ʲΥɤɲäΤȤۤ
-ƱǤ롥
-
-@example
-def attr; @@attr; end
-def attr=(val); @@attr = val; end
-@end example
-
-°᥽åɤ뤳Ȥˤäơưѹ
-Ǥ롥㤨
-
-@example
-attr("test", TRUE)
-def test=(val)
- print("test was ", @@test, "\n")
- print("and now is ", @@test = val, "\n")
-end
-@end example
-
-Τ褦°ͤɽ褦ʤȤǽǤ롥@var{attr}
-᥽åɤǤƤϡǥեȤΥ᥽
-ɤʤ
-@end ftable
-
-Methods:
-
-@ftable @code
-@item include(@var{module}@dots{})
-
-ǻꤷ⥸塼򥤥󥯥롼ɤơ᥽åɡɲä롥
-饹⥸塼̤Υ⥸塼򥤥󥯥롼ɤ뤳Ȥˤäơ
-줿¿ŷѾ(@code{Mixin})¸Ǥ롥
-
-@item module_function(@var{name}@dots{})
-
-@var{name}ǻꤵ줿᥽åɤ@samp{module function}˻ꤹ롥
-@samp{Module function}Ȥϥ⥸塼ðۥ᥽åɤǤꡤĤΥ⥸塼
-򥤥󥯥롼ɤ饹private᥽åɤˤʤ褦ʥ᥽åɤλ
-Ǥ롥㤨СMath⥸塼δؿ@samp{module function}Ǥ롥
-
-@item private(@var{name}@dots{})
-
-@var{name}ǻꤵ줿᥽åɤؿǤƤӽФǽˤ롥
-private᥽åɤǤˤϲ⤷ʤ
-
-@item public(@var{name}@dots{})
-
-@var{name}ǻꤵ줿᥽åɤ̾ǸƤӽФǽˤ롥Ǥ
-public᥽åɤǤˤϲ⤷ʤ
-
-@example
-def foo() 1 end
-foo
- @result{} 1
-self.foo
- @result{} 1
-
-def bar() 2 end
-private :bar
-bar
- @result{} 2
-self.bar
- @error{} method `bar' not available for "main"(Object)
-
-Module Baz
- def baz() 3 end
- module_function :baz
-end
-Baz.baz
- @result{} 3
-include Baz
-baz
- @result{} 3
-self.baz
- @error{} method `baz' not available for "main"(Object)
-@end example
-
-@item to_s
-
-⥸塼ʸɽǤ⥸塼֤̾
-@end ftable
-
-@xref{Object}
-
-@node Nil, Numeric, Module, Ȥ߹ߥ饹ȥ⥸塼
-@comment node-name, next, previous, up
-@section Nil
-
-ɽ֥@code{nil}Υ饹ѿ()@code{nil}
-@code{Nil}饹ͣΥ󥹥󥹤Ǥ롥
-
-SuperClass: Kernel
-
-Methods:
-
-@ftable @code
-@item self + @var{other}
-
-@var{other}ưʸǤ@var{other}
-
-
-@item nil?
-
-˿֤
-@end ftable
-
-@xref{Kernel}
-
-@node Numeric, Object, Nil, Ȥ߹ߥ饹ȥ⥸塼
-@comment node-name, next, previous, up
-@section Numeric
-
-̤ɽݥ饹
-
-SuperClass: Object
-
-Included Modules: Comparable
-
-Methods:
-
-@ftable @code
-@item + self
-
-֥@code{self}ΤΤ֤
-
-@item - self
-
-@code{0 - self}֤֥ͤ饹ǤΨŪ˺뤳Ȥ
-Ԥ롥
-
-@item abs
-
-֤ͤ
-
-@item divmod(@var{other})
-
-Ⱦ;2Ǥ֤
-
-@item next
-
-ο֤οȤϤοۤǾǤ롥
-@end ftable
-
-@xref{Object}
-@xref{Comparable}
-
-@node Object, Proc, Numeric, Ȥ߹ߥ饹ȥ⥸塼
-@comment node-name, next, previous, up
-@section Object
-
-Ƥ̾說饹Υѥ饹̾說饹Υ󥹥󥹤ΰŪʿ
-Ƥ롥Υ饹Υ֥饹Ǥʤ饹@code{Kernel}
-@code{Nil}Ǥ롥
-
-SuperClass: Kernel
-
-Methods:
-
-@ftable @code
-@item extened(module@dots{})
-
-ǻꤷ⥸塼@code{self}˥󥯥롼ɤ롥⥸塼
-Ƥ᥽åɤðۥ᥽åɤȤɲä롥
-
-@item initialize(@dots{})
-
-@code{Class:new}饪֥Ȥ˼ưŪ˸ƤӽФ롥ǥե
-Ȥϲ⤷ʤ֥饹ɬפ˱ƺ뤳Ȥ
-Ƥ롥@code{Class:new}Ϳ줿ΤޤϤ롥
-
-@item is_instance_of?(@var{class})
-
-֥@code{self}饹@var{class}Υ󥹥󥹤Ǥ
-֤@code{obj.is_instance_of?(c)}ΩĤ
-@code{obj.is_kind_of?(c)}Ω롥
-
-@item is_kind_of?(@var{class})
-
-֥@code{self}饹@var{class}Υ֥饹Υ󥹥
-Ǥ֤
-
-@item clone
-@item dup
-
-֥Ȥʣ롥󥹥󥹤¨ͤǤFixnum饹ʳΥ
-饹ξ硤@code{obj.equal?(obj.clone)}ϵǤ뤬¿ξ
-@code{obj == obj.clone}ϿǤ롥
-
-String饹ʳǤ(ä˺ʤ¤)dupclone̾Ǥ롥
-
-@item to_s
-
-֥Ȥʸɽ֤Υ᥽åɤŪprintformat
-åɤѤƤ롥
-
-@item to_a
-
-֥ȤѴ롥@code{Kernel}饹Ƥǥե
-ȤϡΥ֥ȼȤޤ1Ǥ֤
-@end ftable
-
-@xref{Kernel}
-
-@node Proc, Process, Object, Ȥ߹ߥ饹ȥ⥸塼
-@comment node-name, next, previous, up
-@section Proc
-
-ƥ졼Ϥ줿ƥ졼֥å³Ȥƥ֥Ȳ
-Ρ¹Ԥ륳ɤǤʤƥ(ѿ)ʤɤ¸롥
-֥å֥Ȥϡ@code{call}᥽åɤˤäơ줿ΤƱ
-Ķɾ뤳ȤǤ롥æ(@code{return},
-@code{break}, @code{continue}, @code{redo}, @code{retry})δĶ¸
-ʤΤǡ֥å֥ȤæФμ¹Ԥ㳰ȯ
-뤳Ȥˤʤ롥
-
-SuperClass: Object
-
-Methods:
-
-@ftable @code
-@item call(@var{arg}[,@dots{}])
-
-֥å¹Ԥ롥
-@end ftable
-
-Single Methods:
-
-@ftable @code
-@item new
-
-֥å롥@code{yield}¹ԤǤǤΥ᥽åɤ
-ƤФȡλǼ¹Ԥ٤ɤ򥳥ƥȤȤȤ߹
-֥(@code{Proc})롥
-@end ftable
-
-@xref{Object}
-
-@node Process, Range, Proc, Ȥ߹ߥ饹ȥ⥸塼
-@comment node-name, next, previous, up
-@section Process
-
-ץ˴ؤԤʤΥ⥸塼롥@code{Math}⥸塼
-ƱͤƤΥ᥽åɤðۥ᥽åɤȤƤ̾Υ᥽åɤȤƤȤ롥
-@code{Process}ϥץ֥ȤΥ饹ǤϤʤơץ
-᥽åɤޤȤ᤿ΤǤ뤳Ȥդ뤳ȡ
-
-Methods:
-Single Methods:
-
-@ftable @code
-@item egid
-
-ץθߤμ¸GID֤
-
-@item egid= @var{gid}
-
-ץθߤμ¸GID@var{gid}˥åȤ롥
-
-@item euid
-
-ץθߤμ¸UID֤
-
-@item euid= @var{uid}
-
-ץθߤμ¸UID@var{uid}˥åȤ롥
-
-@item getpgrp([@var{pid}])
-
-@var{pid}ǻꤵ줿ץ߽°Ƥץ롼פid
-֤@var{pid}ά@var{pid}0Ϳϸ߼¹ԤƤ
-ץоݤˤ롥
-
-@item getpriority(@var{which}, @var{who})
-
-@var{which}@var{who}ǻꤵץץ롼ס桼
-ߤ̤֤ͥܺ٤@samp{getpriority(2)}򻲾ȡProcess⥸塼
-ǤwhichȤƻǤ@var{PRIO_PROCESS}@var{PRIO_PGRP}
-@var{PRIO_USER}Ƥ롥
-
-@item gid
-
-ץθߤμGID֤
-
-@item gid= @var{gid}
-
-ץθߤμGIDgid˥åȤ.
-
-@item pid
-
-ץΥץID֤ϥƥѿ@code{$$}ͤƱǤ
-롥
-
-@item ppid
-
-ƥץΥץΥץID֤UNIXǤľܤοƥץλ
-硤ƥץpid1(initpid)ˤʤ롥
-
-@item setpgrp(@var{pid}, @var{pgrp})
-
-@var{pid}ǻꤵ줿ץΥץ롼פ@var{pgrp}ˤ롥
-@var{pid}0Ϳȸ߼¹Υץоݤˤ롥
-
-@item setpriority(@var{which}, @var{who}, @var{prio})
-
-@var{which}@var{who}ǻꤵץץ롼ס桼
-ߤ̤ͥ@var{prio}ꤹ롥ܺ٤@samp{setpriority(2)}
-ȤΤȡ
-
-@item uid
-
-ץθߤμUID֤
-
-@item uid= @var{uid}
-
-ץθߤμUID@var{uid}˥åȤ.
-@end ftable
-
-@node Range, Regexp, Process, Ȥ߹ߥ饹ȥ⥸塼
-@comment node-name, next, previous, up
-@section Range
-
-ϰϥ֥ȤΥ饹ϰϥ֥Ȥ@code{..}黻Ҥˤä
-졤ŪˤϰʲΤ褦ʻȤ򤹤
-
-@example
-for i in 1..5
- @dots{}
-end
-@end example
-
-ξϰʲ®.
-
-@example
-1.upto(5) {
- @dots{}
-}
-@end example
-
-ϰϥ֥Ȥ@code{..}黻Ҥξդ@code{Comparable}
-९饹Υ󥹥󥹤ǤвǤ⹽ʤϰϤϻȽޤळ
-Ȥդ뤳.
-
-SuperClass: Object
-
-Included Modules: Enumerable
-
-Methods:
-
-@ftable @code
-@item self =~ @var{other}
-
-@code{self}@var{other}Ʊ饹Фϰϥ֥Ȥǡ
-@var{other}(@code{start <= @var{other} <= end})
-@code{case}ϰϻꤹǤ롥㤨
-
-@example
-case i
-when 1, 3..5
- @dots{}
-end case
-@end example
-
-Τ褦ʥɤ񤯤ȤǤ롥
-
-@item each
-
-ϰ¸ߤ륪֥ȤͿ륤ƥ졼@code{for}Τ
-Ѥ롥
-
-@item end
-
-ϰϤν֤
-
-@item start
-
-ϰϤλ֤
-@end ftable
-
-@xref{Object}
-@xref{Enumerable}
-
-@node Regexp, String, Range, Ȥ߹ߥ饹ȥ⥸塼
-@comment node-name, next, previous, up
-@section Regexp
-
-ɽΥ饹ɽΥƥ@code{/@dots{}/}Ȥɽ
-ưŪ뤿ˤ
-
-@example
-Regexp.new(ʸ)
-@end example
-
-Ȥ롥String饹@code{=~}ϤȤ¿Υ᥽åɤ
-ɽؤʸͿ줿ˤŪɽΤǡ
-Ȥ󤷤Ȼפ䡤ɽʸʸζ̤Ū
-˻ꤷʤɰʳŪȻפȤϾʤϤ
-
-SuperClass: Object
-
-Methods:
-
-@ftable @code
-@item self =~ @var{string}
-
-ɽʸ˥ޥå硤ޥå֤֤ޥåʤ
-@code{nil}֤
-
-@item ~ self
-
-@code{$_ =~ self}Ʊ
-@end ftable
-
-Single Methods:
-
-@ftable @code
-@item compile(@var{string}[, @var{casefold}])
-@itemx new(@var{string}[, @var{casefold}])
-
-ʸɽѴ֥Ȥ֤άǽ2Ϳ
-졤ͤ@code{nil}Ǥʤˤϡ줿ɽ֥Ȥ
-ƥѿ@code{$=}ͤ˴ؤ餺ޥåʸʸΰ㤤
-̵뤹롥
-
-@item quote(@var{str})
-
-ʸɽǰ̣ʸ򥨥פ롥ʸ
-
-@end ftable
-
-@xref{Object}
-
-@node String, Struct, Regexp, Ȥ߹ߥ饹ȥ⥸塼
-@comment node-name, next, previous, up
-@section String
-
-ʸ󥯥饹Rubyʸϥ̥륿ߥ͡ȤǤϤʤΤǡХʥǡ
-ⰷ롥äƤɤ餫ȤñʤʸȤХǤ롥
-λۤ˴Ťơɽ˴ؤ᥽åɰʳ2byteϤʸռ
-ƤʤϺԤμȴǤϤʤտŪˤƤΤǤ(
-Ƥ)
-
-String饹Υ᥽åɤΤ@code{!}ǽΤϥ쥷Ф񤭴롥
-Ʊ̾@code{!}̵Τϥ쥷ФΥԡäƤ顤
-롥@code{!}ΤΤ®ͽ̷̤򾷤䤹
-ǡ̵ΤǤ롥
-
-@example
-f = "string"
-print f, sub("str", "ski"), f
- @result{} string, skiing, string
-print f, sub!("str", "ski"), f
- @result{} skiing, skiing, skiing
-@end example
-
-SuperClass: Object
-
-Included Modules: Comparable, Enumerable
-
-Methods:
-
-@ftable @code
-@item self + @var{other}
-
-ʸϢ롥Ϣ뤵줿ʸ֤
-
-@item self * @var{times}
-
-ʸη֤㤨@code{x" * 4 == "xxxx"}Ǥ롥
-
-@item self == @var{other}
-@item self > @var{other}
-
-ʸӡƥѿ@code{$=}@code{nil}Ǥʤˤʸʸ
-̤ӤԤʤ
-
-@item self =~ @var{other}
-
-ʸΥޥå@var{other}ɽʸ@var{other}ʸξ
-ˤưŪɽѴ롥ޥåϥޥå֡
-ä@code{nil}֤롥
-
-@item ~ self
-
-@code{$_ =~ self}Ʊ
-
-@item self[@var{nth}]
-@item self[@var{beg}..@var{end}]
-@item self[@var{beg}, @var{len}]
-
-ƤμФ1ܤηǤ@var{nth}ХܤΥǡFixnumȤ
-֤2ܤηǤ@var{beg}Хܤ@var{end}ХܤޤǤʬ
-ʸ֤(ξüޤ)3ܤηǤ@var{beg}Хܤ
-@var{len}Хʬʬʸ֤
-
-@item self[@var{nth}] = @var{val}
-@item self[@var{beg}..@var{end}] = @var{val}
-@item self[@var{beg}, @var{len}] = @var{val}
-
-Ƥι1ܤηǤ@var{nth}ХܤΥǡ@var{val}()
-ѹ롥2ܤη@var{beg}Хܤ@var{end}ХܤޤǤ
-ʬʸ@var{val}ȤͿ줿ʸ֤롥3ܤη
-@var{beg}Хܤ@var{len}Хʬʬʸ@var{val}ȤͿ
-줿ʸ֤롥
-
-@item capitalize
-@itemx capitalize!
-
-ʸκǽʸ(줬ե٥åȤǤ)ʸѴ
-ĤʸΥե٥åȤʸ֤롥
-
-@item chop
-@itemx chop!
-
-ʸκǸΥХȤڤȤʸѹ뤳Ȥդ뤳
-ȡ@code{chop!}ϸʸ򹹿롥
-
-@item crypt(@var{salt})
-
-@samp{crypt(3)}ѤưŹ沽ʸ֤@var{salt}2ХȰʾ
-ĹǤդʸǤ롥
-
-@item delete(@var{str})
-@itemx delete!(@var{str})
-
-ʸΤ@var{str}˴ޤޤʸ롥ʸλ
-@code{tr}ƱͤǤꡤ@code{a-b}@code{a}@code{b}ޤǤϰϤ
-Ƭ@code{^}ʸ(ޤޤƤʤΤ)̣롥
-
-@item dup
-
-@code{self}ƱƤʸ롥@code{clone}
-@code{freeze}֤⥳ԡ뤬@code{dup}Ƥʸ
-롥
-
-@item downcase
-@itemx downcase!
-
-ʸΥե٥åȤƾʸ֤ʸ֤
-@code{tr("A-Z", "a-z")}꾯®
-
-@item each @{|@var{char}|@dots{}@}
-@itemx each_byte @{|@var{char}|@dots{}@}
-
-ʸΤ줾ΥХȤˤĤƷ֤ƥ졼
-
-@item each_line @{|@var{line}|@dots{}@}
-
-ʸ󤫤1Ԥɤ߹Ǥ륤ƥ졼
-
-@item freeze
-
-ʸ򹹿ԲĤˤ롥ٹԲĤꤵ줿ʸƤѹ
-Ȥ㳰ȯ롥
-
-@item gsub(@var{pattern}, @var{replace})
-@itemx gsub(@var{pattern}) @{@dots{}@}
-@itemx gsub!(@var{pattern}, @var{replace})
-@itemx gsub!(@var{pattern}) @{@dots{}@}
-
-ʸ@var{pattern}˥ޥåʬ@var{replace}֤롥
-ִʸ@var{replace}@samp{&}@samp{\0}ϥޥåʸˡ
-@samp{\1@dots{}\9}nܤγ̤Ƥ֤롥
-@var{replace}ά줿ˤϥƥ졼Ȥư֥åɾ
-ִ̤롥
-
-@code{gsub}ִ줿ʸ֤(ִԤʤʤäϸʸ
-֤)@code{gsub!}ִԤʤ줿ˤоݤȤʤʸ
-Ԥʤʤäˤ@code{nil}֤
-
-@item hex
-
-ʸ16ʿɽʸȲᤷơѴ롥
-
-@item index(@var{substr}[, @var{pos}])
-
-@var{substr}ǽ˽и֤֤@var{pos}ͿȤΰ֤
-鸡򳫻Ϥ롥Ĥʤˤ@code{nil}֤
-
-@item intern
-
-ʸ˰դб֤ʸϥʥʸޤǤϤʤʤ
-
-@item length
-@itemx size
-
-ʸĹ(Хȿ)֤
-
-@item ljust(@var{width})
-@itemx rjust(@var{width})
-@itemx center(@var{width})
-
-ʸ򤽤줾졤ͤᡤͤᡤ󤻤@var{width}ʸ
-֤ʸĹ@var{width}Ĺϸʸ֤ڤͤ
-
-
-@item next
-
-@code{self}ΡּΡʸ֤ʸȤϿϿȤơ
-ʸϱʸȤä夬νԤʤ줿ΤǤ롥
-
-@example
-"aa".next @result{} "ab"
-"99".next @result{} "100"
-"a9".next @result{} "b0"
-@end example
-
-@item oct
-
-ʸ8ʿɽʸȲᤷơѴ롥8ʿ
-@code{/[0-7]+/}ǤꡤʸƬ餳Υѥ˥ޥåʬ
-Ѵ롥ƤϤޤʤʸФƤ0֤
-perlȤϰäʸ0xϤޤäƤ뤫Ȥä 16ʿȸʤ
-Ƥ줿ϤʤƬ08ʿǧ졤0֤
-
-@item reverse
-@itemx reverse!
-
-ʸγƥХȤս¤٤ʸ֤ʸ2ХȤǹ
-ʸޤǤƤ⤪ʤ˥Хñ̤ȿž롥@code{split}2
-Хʸ򤹤Τǡ2Хʸޤʸʸñ̤ȿž
-
-@example
-"ʸ".split(//).reverse.join("")
-@end example
-
-ȤФ褤
-
-@item rindex(@var{substr}[, @var{pos}])
-
-ʸ@var{substr}Ǹ˽и֤֤@var{pos}ͿȤ
-֤Ǹλ롥Ĥʤˤ@code{nil}֤@code{index}
-
-@itemize
-@item
-ʸ鸡롥
-@item
-substrȤɽդʤ
-@end itemize
-
-2Ǥ롥
-
-@item split([@var{sep}[, @var{limit}]])
-
-ʸ@var{sep}ǻꤵ줿ѥˤäơեɤʬ䤹롥
-@var{sep}ά줿ΥǥեȤϥƥѿ@code{$;}ͤѤ
-롥@var{limit}ꤵ줿ˤϺ@var{limit}ĤΥեɤʬ
-롥s@code{plit}ʬ䤵줿ʸޤ֤@var{sep}ǻ
-줿ѥ󤬶ʸȥޥåʸ1ʸĤʬ䤵
-롥
-
-@item squeeze([@var{str}])
-@itemx squeeze!([@var{str}])
-
-ʸΤ@var{str}˴ޤޤʸϢ³Ƥ硤ʸ˰
-롥@var{str}ά줿硤٤ƤʸоݤȤ롥ʸλ
-trƱͤǤꡤ@code{a-b}@code{a}@code{b}ޤǤϰϤƬ
-@code{^}ʸ(ޤޤƤʤΤ)̣롥
-
-@item strip
-@itemx strip!
-
-ʸζ
-
-@item sub(@var{pattern}, @var{replace})
-@itemx sub(@var{pattern}) @{@dots{}@}
-@itemx sub!(@var{pattern}, @var{replace})
-@itemx sub!(@var{pattern}) @{@dots{}@}
-
-ʸ@var{pattern}˥ޥåǽʬ@var{replace}֤롥
-ִʸ@var{replace}@samp{&}@samp{\0}ϥޥåʸˡ
-@samp{\1@dots{}\9} nܤγ̤Ƥ֤롥
-@var{replace}Τʤλˤϥƥ졼Ȥư֥åɾ
-ִ̤롥
-
-@code{sub}ִ줿ʸ֤(ִԤʤʤäϸʸ
-֤)@code{sub!}ִԤʤ줿ˤоݤȤʤʸ򡤹
-ʤʤäˤ@code{nil}֤
-
-@item sum([@var{bits}])
-
-ʸ@var{bits}ӥåȤΥå롥άͤ16Ǥ롥ruby
-ϰʲΥɤSystem V@code{sum}ץƱͤ롥
-
-@example
-while gets()
- sum += $_.sum
-end
-sum %= 65536
-@end example
-
-@item swapcase
-@itemx swapcase!
-
-ʸΥե٥åȤΤʸʸˡʸʸ֤
-롥
-
-@item to_f
-
-ʸFloatѴ롥
-
-@item to_i
-
-ʸ10ʿɽʸȲᤷơѴ롥
-
-@item tr(@var{search}, @var{replace})
-@itemx tr!(@var{search}, @var{replace})
-
-ʸ@var{search}ʸ˴ޤޤʸ¸ߤС
-@var{replace}ʸбʸ֤롥@var{replace}ʸ󤬾
-ά줿϶ʸͿ줿ȸʤ@var{replace}ʸ
-@var{search}ʸû@var{replace}ʸκǸʸ
-֤Ƥȸʤ@var{search}ʸûˤбʸ
-ʤ@var{replace}ñ̵뤵(BSD@samp{tr}ư)
-
-@var{search}ʸ@var{replace}ʸ@code{a-b}Ȥ
-硤@code{a}@code{b}ޤǤϰϤʸASCIIξǻꤷ
-Ȥˤʤ롥ޤ@var{search}ʸκǽʸ@code{^}Ǥ硤
-³ʸ*ޤޤʤ*ʸִоݤˤʤ롥
-
-@samp{tr(1)}εǽΤʸ뵡ǽϢ³ʸ򰵽̤뵡
-ǽ̤Υ᥽åɤʬ䤵Ƥ롥εǽˤĤƤ@code{delete}
-@code{squeeze}򻲾ȤΤȡ
-
-ؤΤᡤ@code{str.tr(src,repl).squeeze(repl)}᥽å
-@code{tr_s(src,repl)}󶡤Ƥ롥
-
-@item unpack(@var{template})
-
-ʸ@var{template}ʸˤäƥѥåǤ
-֤@var{template}ʸArray饹pack᥽åɤȤۤƱ
-ͤǤ롥
-
-@display
-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Хȸ
-@@ а֤ؤΰư
-@end display
-
-ruby@code{unpack}perlȰäƥåη׻ǽʤȤ
-դ뤳ȡ
-
-
-@item upcase
-@itemx upcase!
-
-ʸΥե٥åȤʸ֤ʸ֤
-@code{tr("a-z", "A-Z")}꾯®
-
-@item upto(@var{end}) @{@dots{}@}
-
-@code{self}Ϥޤäơ@var{end}ޤǡּΡʸͿ륤ƥ졼
-ʸȤ@code{str.next}ͿʸǤ롥
-
-Υ᥽åɤ@code{Range:each}ѤƤΤǡʲΤ褦ʽ
-ǽǤ롥
-
-@example
-for i in "a" .. "ba"
- print(i, "\n");
-end
-@end example
-
-@samp{a, b, c,@dots{}aa,@dots{}az, ba}ޤǤƹԤ˽Ϥ롥
-@end ftable
-
-Single Methods:
-
-@ftable @code
-@item new(@var{string})
-
-@var{string}ƱƤĿʸ֤
-@end ftable
-
-@xref{Object}
-@xref{Enumerable}
-@xref{Comparable}
-
-@node Struct, Time, String, Ȥ߹ߥ饹ȥ⥸塼
-@comment node-name, next, previous, up
-@section Struct
-
-¤Υ饹Υ饹Υ֥饹ʣΥǡޤȤѤ
-(: @code{Time:times})ǡޤȤˤ󥯥饹Ѥ
-뤳Ȥ⤢뤬(: @code{select})¤ΤȤ٤ϰʲΤ褦
-Ǥ롥@code{Struct:new}@code{Struct}Υ֥饹򿷤
-ơ֤¤ΤϤΥ֥饹Υ󥹥󥹤Ȥʤ롥
-
-@enumerate
-@item
-Ǥο
-
-ǤοưΤϹ¤ΤȤΤˤϸʤ
-
-@item
-Ǥο¿
-
-ʹ֤٤ưפ˰복ǰο7ĤޤǤǤȤ⤬롥
-˽СǤ4İʾ夢ǡξѤ硤ǿ
-2(ĤޤꥪեåȤȤΰ̣)7ۤ롥äơΤ褦
-ˤϹ¤ΤȤä򤷤䤹Ȼפ롥
-
-@item
-Ʊ̤ʤ
-
-¤Τ㴳Ȥ⤤Τǡ®٤ˤʤ (㤨
-Ʊ̤ʤ)Ϲ¤ΤλѤŬڤǤʤǽ
-롥
-@end enumerate
-
-ƹ¤Τˤϥ̾Ʊ̾ΰΤʤ᥽åɤ롥
-
-ܥɥǡ¤Τɽ뤿ˤϰʲηȤ
-
-@display
-struct ¤̾
- @dots{}
-end
-@end display
-
-ץǤηǹ¤Τ櫓ǤϤʤ
-
-SuperClass: Object
-
-Included Modules: Enumerable
-
-Methods:
-
-@ftable @code
-@item self[@var{idx}]
-
-@var{idx}λ@var{idx}ܤǤ֤
-
-@item values
-@itemx to_a
-
-¤ΤΥФͤǤ˻֤㤨аʲΥɤǼʬ
-passwdȥϤ뤳ȤǤ롥
-
-@example
-print(Etc.getpwuid().values.join(":"), "\n")
-@end example
-
-νϤ@samp{grep "$USER" /etc/passwd}νϤ;ʬʥեɤ
-Ĥ(ƥˤäưۤʤ)ʳƱǤ롥
-@end ftable
-
-Single Methods:
-
-@ftable @code
-@item new(@var{name}, @var{member}@dots{})
-
-@var{name}Ȥ̾ŤΤΥ饹롥@var{member_value}
-Ϲ¤ΤΥФɽʸǤ롥줿¤Υ饹ˤϥФ
-ꤵ줿̾Υ᥽åɤƤơΥ᥽åɤˤäƥФ
-Ƥ뤳ȤǤ롥
-@end ftable
-
-Single Methods for subclasses:
-
-@ftable @code
-@item new(@var{value}@dots{})
-
-¤Υ饹Υ󥹥󥹤롥@var{value}Ϲ¤ΤΥФ
-Ǥ롥Фο¤Υ饹줿Ȱۤʤˤ㳰ȯ
-롥
-@end ftable
-
-@xref{Object}
-@xref{Enumerable}
-
-@node Time, , Struct, Ȥ߹ߥ饹ȥ⥸塼
-@comment node-name, next, previous, up
-@section Time
-
-֤ɽ饹羮ӤʤɤǤ롥@code{Time.now}Ǹߤλ֤
-뤳ȤǤ롥ޤեΥॹפ᥽åɤͤ
-Υ饹Υ󥹥󥹤Ǥ롥
-
-SuperClass: Object
-
-Included Modules: Comparable
-
-Methods:
-
-@ftable @code
-@item self <=> @var{other}
-
-@var{other}TimeΥ󥹥󥹤Ϳ줿ˤ
-@samp{1970ǯ1 1 00:00:00 GMT}ÿǤȤƻȤӤ
-Ԥʤ
-
-@item asctime
-@itemx ctime
-@itemx to_s
-
-@samp{date(1)}ʸѴ롥
-
-@item gmtime
-
-ॾνԤʤʤGMTǤλ롥Υ᥽åɤȤ
-Time饹Υ󥹥󥹤ϡʸλѴGMTǹԤʤ
-@code{gmtime}ϼʬȤ֤
-
-ɥλɽˤ@code{print(Time.now.gmtime, "\n")}Ȥ
-Ф褤
-
-@item localtime
-
-ॾνԤʤä(ǥե)@code{localtime}
-ʬȤ֤
-
-@item to_i
-@itemx tv_sec
-
-@samp{1970ǯ 1 1 00:00:00 GMT}ޤǤÿ֤
-secondʬǤ⤢롥
-
-@item sec
-@itemx min
-@itemx hour
-@itemx mday
-@itemx year
-@itemx wday
-@itemx yday
-@itemx zone
-@itemx isdst
-
-ŪݻƤ@code{tm}¤ΤƤ֤@code{zone}ʳ
-֤@code{zone}ϥॾɽʸ֤(cf
-@samp{localtime(3)})
-
-@item strftime(@var{format})
-
-@var{format}ʸ˽äʸѴ̤֤
-@var{format}ʸȤƻǤΤ ʲ̤Ǥ롥
-
-@display
-%A ̾(Sunday, Monday@dots{})
-%a ξά̾(Sun, Mon@dots{})
-%B ̾(January, February@dots{})
-%b ξά̾(Jan, Feb@dots{})
-%c ɽ(cf @samp{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 ॾ
-%% %
-@end display
-
-@item usec
-@itemx tv_usec
-
-micro secondʬ֤
-@end ftable
-
-Single Methods:
-
-@ftable @code
-@item now
-
-ߤλɽ@code{Time}饹Υ󥹥󥹤롥
-
-@item at(@var{time})
-
-@var{time}Ʊɽ@code{Time}饹Υ󥹥󥹤롥
-@var{time}@code{Time}饹Υ󥹥󥹤뤤Ͽ(/ư
-)Ǥꡤξ@samp{1970ǯ 1 1 00:00:00 GMT}ÿ
-Ȥƻ׻롥
-
-@item times
-
-ߤΥץȤλҥץ񤷤桼/ƥCPUѻ
-¤ΤȤ֤(@xref{Struct})
-
-@display
-struct tms
- utime # ץΥ桼
- stime # ץΥƥ
- cutime # ҥץΥ桼
- cstime # ҥץΥƥ
-end
-@end display
-
-֤ñ̤äǤꡤưͿ롥ܺ٤@samp{times(3)}
-򻲾ȤΤȡ
-@end ftable
-
-@xref{Object}
-@xref{Comparable}
-
-@node CȤΥ󥿥ե, ռ, Ȥ߹ߥ饹ȥ⥸塼, Top
-@comment node-name, next, previous, up
-@chapter CȤΥ󥿥ե
-
-rubyCȤΥ󥿡ե󶡤C줫Υ饹⥸塼
-CǵҤ᥽åɤrubyΥ᥽åɤθƤӽФ
-졼θƤӽФ㳰ʤɤԤʤȤ롥ޤOSм
-ԻCǽ񤫤줿⥸塼ɤ뤳Ȥ롥
-
-Ūʥ󥿥ե˴ؤƤϡ̥ɥ(źեե C-IF)
-ȤΤȡ
-
-@node ռ, ʸˡ, CȤΥ󥿥ե, Top
-@comment node-name, next, previous, up
-@chapter ռ
-
-RubyθͤϿ¿θαƶƤ롥ʲˤΤϤμ
-ʸǤ롥
-
- C, Perl, CLU, Sather, CLOS, Eiffel, Icon, tcl, AWK, bourne shell,
- Smalltalk, Emacs Lisp.
-
-ޤrubyθͤꤹ뤿˶ϤƲäʲˤ롥
-
- ͷƣϺ¼Σţáغܣģţá
- ʤֺ.ٻ(ɾά)
-
-@node ʸˡ, Variables Index, ռ, Top
-@comment node-name, next, previous, up
-@chapter ʸˡ
-
-ʲϵBNFǵҤrubyʸˡǤ롥ΤʵҤparse.y򻲾
-줿
-
-@example
-PROGRAM : COMPEXPR
-
-COMPEXPR : EXPR (TERM EXPR)* [TERM]
-
-EXPR : MLHS `=' ARGS
- | return ARGS
- | fail ARGS
- | yield ARGS
- | defined? ARG
- | identifier CALL_ARGS0
- | PRIMARY `.' identifier CALL_ARGS0
- | super CALL_ARGS
- | undef FNAME
- | alias FNAME FNAME
- | include identifier (`,' identifier)*
- | EXPR if EXPR
- | EXPR while EXPR
- | EXPR and EXPR
- | EXPR or EXPR
- | ASSOCS
- | 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 `::' identifier
- | PRIMARY
-
-PRIMARY : `(' COMPEXPR `)'
- | LITERAL
- | VARIABLE
- | super `(' [CALL_ARGS] `)'
- | super
- | PRIMARY `[' [ARGS] `]'
- | `[' [ARGS [`,']] `]'
- | `@{' [ (ARGS|ASSOCS) [`,'] ] `@}'
- | redo
- | break
- | continue
- | retry
- | return
- | fail [`(' [ARGS] `)']
- | yield [`(' [ARGS] `)']
- | defined? `(' ARG `)'
- | PRIMARY `@{' [`|' [ITER_VAR] `|'] COMPEXPR `@}'
- | OPERATION `(' [CALL_ARGS] `)'
- | PRIMARY `.' OPERATION `(' [CALL_ARGS] `)'
- | PRIMARY `.' OPERATION
- | 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
- [rescue 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] [`,' `*' ARG]
- | `*' ARG
-
-ARGS : ARG (`,' ARG)*
-
-ARGLIST : `('[identifier(`,'identifier)*][`*'identifier]`)'
- | TERM
-
-SINGLETON : VARIABLE
- | `(' EXPR `)'
-
-ASSOCS : ASSOC (`,' ASSOC)*
-
-ASSOC : ARG `=>' ARG
-
-VARIABLE : VARNAME
- | nil
- | self
- | `__FILE__'
- | `__LINE__'
-
-LITERAL : numeric
- | SYMBOL
- | STRING
- | REGEXP
-
-TERM : `;'
- | `\n'
-
-@end example
-
-겼ϻǧ롥
-
-@example
-
-SYMBOL : `:'FNAME
- | `:'VARNAME
-
-FNAME : identifier | `..' | `|' | `^' | `&'
- | `<=>' | `==' | `=~' | `>' | `>=' | `<' | `<='
- | `<<' | `>>' | `+' | `-' | `*' | `/' | `%' | `**'
- | `~' | `+@@' | `-@@' | `[]' | `[]='
-
-OPERATION : identifier
- | identifier'!'
- | identifier'?'
-
-VARNAME : GLOBAL
- | `@@'identifier
- | identifier
-
-GLOBAL : `$'identifier
- | `$'any_char
-
-STRING : `"' any_char* `"'
- | `'' any_char* `''
- | ``' any_char* ``'
-
-REGEXP : `/' any_char* `/'[i]
-
-@end example
-
-@node Variables Index, Concept Index, Function Index, Top
-@comment node-name, next, previous, up
-@unnumbered Variable Index
-
-@printindex vr
-
-@node Concept Index, Function Index , Variables Index, Top
-@comment node-name, next, previous, up
-@unnumbered Concept Index
-
-@printindex cp
-
-@node Function Index, Top , Concept Index, Top
-@comment node-name, next, previous, up
-@unnumbered Function Index
-
-@printindex fn
-
-@summarycontents
-@contents
-@bye
-
-Local variables:
-fill-column: 70
-end: