diff options
author | Yukihiro Matsumoto <matz@ruby-lang.org> | 1995-02-01 19:48:24 +0900 |
---|---|---|
committer | Takashi Kokubun <takashikkbn@gmail.com> | 2019-08-17 22:09:31 +0900 |
commit | 897cf066952978ccbae1d57bbc14a03c7b98a1e1 (patch) | |
tree | bc83424954929dc9574e40a0aee874f45965a8ae /C-IF | |
parent | 5d828b25d4ae30a000c054a724ac248dadbb97b3 (diff) |
version 0.65v0_65
https://cache.ruby-lang.org/pub/ruby/1.0/ruby-0.65.tar.gz
Wed Feb 1 19:48:24 1995 Yukihiro Matsumoto (matz@ix-02)
* string.c(str_replace): 置き換える文字列の長さが等しい時メモリコ
ピーをしない.
* string.c(rindex): バグ修正.
Mon Jan 30 11:23:05 1995 Yukihiro Matsumoto (matz@ix-02)
* parse.y(value_expr): ifのチェックを追加.
* gc.c(gc_mark): free cellの扱いにバグ.
* parse.y: 文法の変更(よりシンプルに).例外を減らした.
Thu Jan 26 00:52:55 1995 Yukihiro Matsumoto (matz@dyna)
* parse.y: 引数として連想配列を置くことができるように.この場合,
連想配列リテラルが最終引数となる.
* parse.y: 配列参照の`[]'内が空でもよいことにした.
Tue Jan 24 14:45:15 1995 Yukihiro Matsumoto (matz@ix-02)
* class.c(rb_include_module): `-v'を指定した時にはincludeしたモジュー
ルとクラス定数が衝突していないかチェックする.
Mon Jan 23 10:42:09 1995 Yukihiro Matsumoto (matz@ix-02)
* parse.y(rb_class2name): メタクラスに関するbug fix.
* dict.c: Dict[..]で辞書の生成が出来るように.
* array.c: Array[..]で配列の生成が出来るように.
* parse.y: 辞書の表現として{a,b,..}という形式も許すように.
Fri Jan 20 10:28:38 1995 Yukihiro Matsumoto (matz@ix-02)
* re.c(Regexp.quote): 正規表現をエスケープするメソッド.
* 無駄なrb_intern()を減らした.
* parse.y: `!', `!=', `!~'を特殊演算子にする.よってこれらは再定義
できなくなった.
Wed Jan 18 13:20:41 1995 Yukihiro Matsumoto (matz@ix-02)
* parse.y: 文法の整理(unless,untilをなくした).
Tue Jan 17 11:11:27 1995 Yukihiro Matsumoto (matz@ix-02)
* eval.c: defでメソッド再定義時にはスーパークラスのメソッドの可視
性を継承する.最初の定義の時は今までと同じデフォルト(トップレベ
ルで関数的,クラス定義内で通常メソッド).
* object.c(Class::new): オブジェクトの生成時に関数的メ
ソッドinit_objectが必ず呼ばれるように変更.
* eval.c: 未定義のメソッドに対してunknownメソッドが呼ばれるように
なった.エラー表示が今までと同じになるようにenvを調節している.
Fri Jan 13 14:40:30 1995 Yukihiro Matsumoto (matz@ix-02)
* gc.c: gcを若干書き換えて整理した.が,あまり変化はなかったようだ.
* parse.y(yylex): symbolを\symから:symに変更した.
Thu Jan 12 01:39:28 1995 Yukihiro Matsumoto (matz@dyna)
* eval.c: 新規関数 rb_eval_string().
* gc.c: gc_mark()を一部非再帰化.
* variable.c(rb_ivar_{get,set}): インスタンス変数のアクセス周りで
チェックが足りなかった.
* variable.c: クラス定数とインスタンス変数でハッシュテーブルを共有
するようにした.
* ruby.h: iv_tblをRBasicからRObjectとRClassへ移動した.これにより,
ObjectとClass,Moduleしかインスタンス変数を持てなくなる.が,メモ
リ効率は若干向上する.
Diffstat (limited to 'C-IF')
-rw-r--r-- | C-IF | 35 |
1 files changed, 17 insertions, 18 deletions
@@ -24,9 +24,6 @@ Ruby-C ե ѹϰʸselfͤΤΤѤäƤޤΤ, ̤ʻ ʤ¤ƤϤʤʤ. - : إåե"env.h"롼ɤƤʤեǤ, - QselfǤ, ʸˡ顼Ȥʤ. - TRUE : t֥(Υǥե) @@ -43,7 +40,7 @@ Ruby-C ե VALUE rb_define_module(char *name) - Ruby⥸塼. + Ruby⥸塼. void rb_include_module(VALUE class, VALUE module) @@ -67,8 +64,8 @@ Ruby-C ե void rb_global_variable(VALUE *var) - GCΤRubyϥʤ, Ruby֥Ȥޤ - ޡ. + GCΤᡤRubyץफϥʤ, Ruby֥ + ޤѿޡ. void rb_read_only_hook() @@ -87,20 +84,21 @@ Ruby-C ե åɤ. argcselfο. argc-1λ, ؿ ϰο(selfޤޤʤ)1, 2Ȥ - Ϳ. argc-2λ, self, args(argsϰޤruby - )ȤͿ. + Ϳ(3self). argc-2λ, self, args(args + ޤruby)ȤͿ. rb_define_single_method(VALUE class, char *name, VALUE (*func)(), int argc) ðۥåɤ. rb_define_method()Ʊ. - rb_scan_args(VALUE args, char *fmt, ...) + rb_scan_args(int atgc, VALUE *argv, char *fmt, ...) - argsͿ줿ʬ. fmtɬܰο, ղðο, - Ĥΰ뤫ꤹʸ, "*"ȤǤ. - 2 ܤο"*"Ϥ줾άǽǤ. 3ʹߤѿؤΥ - , Ǥѿ˳Ǽ. ղðб - ͿƤʤѿQnil. + argc,argvͿ줿ʬ. fmtɬܰο, ղð + ο, Ĥΰ뤫ꤹʸ, "*"Ȥ + Ǥ. 2 ܤο"*"Ϥ줾άǽǤ. ɬܰ + ʤ0ꤹ롥3ʹߤѿؤΥݥ, + Ǥѿ˳Ǽ. ղðбͿƤ + ѿQnil. RubyåɸƤӽФ @@ -108,12 +106,13 @@ RubyåɸƤӽФ åɸƤӽФ. ʸmid뤿ˤrb_intern()Ȥ. - rb_call_super(VALUE args) + VALUE rb_funcall2(VALUE recv, ID mid, int argc, VALUE *argv) + + åɸƤӽФ. argc,argvϤ - ѡ饹ΥåɤƤӽФ. argsϰꥹȤȤʤ. - args QnilλϸߤΥåɤΰΤޤްѤ. + VALUE rb_eval_string(char *str) -ʸ <-> IDѴ + ʸrubyȥץȤƥѥ롦¹Ԥ롥 ID rb_intern(char *name) |