[#20127] protected_instance_methods(true) — Shin-ichiro HARA <sinara@...>
原です。
4 messages
2003/05/01
[#20163] Numeric#step — Koji Arai <JCA02266@...>
新井です。
13 messages
2003/05/05
[#20165] Re: Numeric#step
— Minero Aoki <aamine@...>
2003/05/05
青木です。
[#20167] Re: Numeric#step
— Koji Arai <JCA02266@...>
2003/05/05
新井です。
[#20169] Re: Numeric#step
— Minero Aoki <aamine@...>
2003/05/05
青木です。
[#20171] Re: Numeric#step
— Koji Arai <JCA02266@...>
2003/05/05
新井です。
[#20172] Re: Numeric#step
— Masahiro TANAKA <masa@...>
2003/05/06
At Tue, 6 May 2003 02:55:54 +0900,
[#20197] ARGF.filename — Koji Arai <JCA02266@...>
新井です。
6 messages
2003/05/17
[#20209] /()*\1/ =~ "" — Tanaka Akira <akr@...17n.org>
元ネタは BTS および Matzにっきなのですが、Matzにっきの調子が悪くてつっ
5 messages
2003/05/19
[#20227] dyna_vars problem? — Tanaka Akira <akr@...17n.org>
しばらく前から、稀に Ruby が core を吐くという問題を追いかけているので
15 messages
2003/05/19
[#20234] Re: dyna_vars problem?
— matz@... (Yukihiro Matsumoto)
2003/05/19
まつもと ゆきひろです
[#20236] Re: dyna_vars problem?
— Tanaka Akira <akr@...17n.org>
2003/05/19
In article <1053363181.529491.30320.nullmailer@picachu.netlab.jp>,
[#20245] Re: dyna_vars problem?
— matz@... (Yukihiro Matsumoto)
2003/05/20
まつもと ゆきひろです
[#20248] Re: dyna_vars problem?
— Tanaka Akira <akr@...17n.org>
2003/05/20
In article <1053422521.786672.22712.nullmailer@picachu.netlab.jp>,
[#20250] Re: dyna_vars problem?
— matz@... (Yukihiro Matsumoto)
2003/05/20
まつもと ゆきひろです
[#20251] Re: dyna_vars problem?
— Tanaka Akira <akr@...17n.org>
2003/05/20
In article <1053424909.383731.24667.nullmailer@picachu.netlab.jp>,
[#20255] Re: dyna_vars problem?
— matz@... (Yukihiro Matsumoto)
2003/05/20
まつもと ゆきひろです
[#20268] splat restary — nobu.nakada@...
なかだです。
5 messages
2003/05/21
[#20303] [Oniguruma] possessive quantifier — kkosako@...
強欲な繰り返し演算子を実装してみたんですが、
1 message
2003/05/28
[#20307] [Oniguruma] intersection of char class — kkosako@...
Javaの正規表現で実現されている
4 messages
2003/05/30
[ruby-dev:20241] Re: Exception#initialize
From:
nobu.nakada@...
Date:
2003-05-20 07:24:01 UTC
List:
ruby-dev #20241
なかだです。
At Tue, 20 May 2003 10:09:09 +0900,
Yukihiro Matsumoto wrote:
> |Exceptionのサブクラスで、いくつかRubyレベルで触れないインスタン
> |ス変数があるので、initializeを通して初期化するようにしてみまし
> |た。
> |
> |すべての引数は省略可能です。
> |
> |NameError#initialize(msg, name)
> |NoMethodError#initialize(msg, name, args)
> |SystemCallError#initialize(msg, err)
>
> あ、わたし、この修正について誤解してました。
> これで構いません。取り込んでくださいませんか?
リファレンスマニュアル(SystemCallError)に追加してて思ったんです
が、エラーを発生させようとすると、これでもやはりちょっと面倒で
す。
# http://www.ruby-lang.org/ja/man-1.6/index.cgi?cmd=view;name=SystemCallError
begin
raise Errno::ENOENT
rescue Errno::ENOENT
p Errno::ENOENT::Errno # => 2
p $!.errno # => nil
end
# 現状
raise SystemCallError.new("nonexistent file", Errno::ENOENT::Errno)
Errno::EXXX#initializeでerrnoのデフォルト値として各Errnoを使う
ようにしてはどうかと思うんですが、やりすぎでしょうか。
raise Errno::ENOENT.new("nonexistent file")
# または
raise Errno::ENOENT, "nonexistent file"
Index: error.c
===================================================================
RCS file: /cvs/ruby/src/ruby/error.c,v
retrieving revision 1.66
diff -u -2 -p -r1.66 error.c
--- error.c 20 May 2003 01:51:32 -0000 1.66
+++ error.c 20 May 2003 03:13:10 -0000
@@ -543,8 +543,14 @@ syserr_initialize(argc, argv, self)
char *buf;
VALUE error, mesg;
+ VALUE klass = rb_obj_class(self);
- if (rb_scan_args(argc, argv, "11", &mesg, &error) == 1 && FIXNUM_P(mesg)) {
+ rb_scan_args(argc, argv, klass == rb_eSystemCallError ? "11" : "02",
+ &mesg, &error);
+ if (argc == 1 && FIXNUM_P(mesg)) {
error = mesg;
mesg = Qnil;
+ }
+ if (klass != rb_eSystemCallError && NIL_P(error)) {
+ error = rb_const_get_at(klass, rb_intern("Errno"));
}
err = strerror(NUM2LONG(error));
--
--- 僕の前にBugはない。
--- 僕の後ろにBugはできる。
中田 伸悦