[#17017] 標準添付案 — Kazuhiro NISHIYAMA <zn@...>

西山和広です。

21 messages 2002/05/08
[#17019] Re: 標準添付案 — "Akinori MUSHA" <knu@...> 2002/05/08

At Wed, 8 May 2002 19:50:17 +0900,

[#17021] Re: 標準添付案 — GOTO Kentaro <gotoken@...> 2002/05/08

At Wed, 8 May 2002 22:45:06 +0900,

[#17031] double acosh — WATANABE Hirofumi <eban@...>

わたなべです。

25 messages 2002/05/10
[#17032] Re: double acosh — nobu.nakada@... 2002/05/10

なかだです。

[#17033] Re: double acosh — WATANABE Hirofumi <eban@...> 2002/05/10

わたなべです。

[#17036] Re: double acosh — matz@... (Yukihiro Matsumoto) 2002/05/10

まつもと ゆきひろです

[#17039] Re: double acosh — WATANABE Hirofumi <eban@...> 2002/05/10

わたなべです。

[#17134] argv[0] — Tanaka Akira <akr@...17n.org>

ふと ruby インタプリタの C における argv[0] を知りたくなったんですが、

23 messages 2002/05/18
[#17139] Re: argv[0] — matz@... (Yukihiro Matsumoto) 2002/05/18

まつもと ゆきひろです

[#17144] Re: msvcrt — "U.Nakamura" <usa@...>

こんにちは、なかむら(う)です。

18 messages 2002/05/19

[#17179] コマンドラインオプションの順序制約 — Kazuhiro NISHIYAMA <zn@...>

西山和広です。

13 messages 2002/05/22
[#17181] Re: コマンドラインオプションの順序制約 — matz@... (Yukihiro Matsumoto) 2002/05/22

まつもと ゆきひろです

[#17228] Re: [ruby-list:35305] Re: ((1.2)..(3.4)).to_a — matz@... (Yukihiro Matsumoto)

まつもと ゆきひろです

28 messages 2002/05/30

[ruby-dev:17137] Re: argv[0]

From: nobu.nakada@...
Date: 2002-05-18 09:13:35 UTC
List: ruby-dev #17137
なかだです。

At Sat, 18 May 2002 17:56:42 +0900,
Minero Aoki wrote:
> > ふと ruby インタプリタの C における argv[0] を知りたくなったんですが、
> > リファレンスマニュアルの組込み変数、組込み定数を眺めた限りでは見つかり
> > ませんでした。
> > 
> > これを得る方法ってないんでしょうか?
> 
> 組み込み変数のところにある
> 
> $0
>    
>     現在実行中のRubyスクリプトの名前。OSによってはこの変数に代入すると
>     ps(1) の出力が変化します。この機能はプログラムの現在の状態を表示するの
>     に便利です。(覚え方: sh や kshと同じ)
> 
> がそうです。

スクリプト名ではなく、Rubyインタプリタの名前がほしいのでは。拡
張ライブラリからならrb_argv0というのがありますが、この変数使わ
れてないですね。

# それと、1.7のset_arg0()の#endifは一行ずれているような気が。

こういうことではないかと思うんですが。


Index: ruby.c
===================================================================
RCS file: /cvs/ruby/src/ruby/ruby.c,v
retrieving revision 1.58
diff -u -2 -p -r1.58 ruby.c
--- ruby.c	2002/05/14 06:22:26	1.58
+++ ruby.c	2002/05/18 07:35:00
@@ -942,6 +942,7 @@ set_arg0(val, id)
 	    origargv[i] = 0;
     }
-#endif
     rb_progname = rb_tainted_str_new2(origargv[0]);
+#endif
+    OBJ_FREEZE(rb_progname);
 }
 
@@ -952,4 +953,5 @@ ruby_script(name)
     if (name) {
 	rb_progname = rb_tainted_str_new2(name);
+	OBJ_FREEZE(rb_progname);
 	ruby_sourcefile = rb_source_filename(name);
     }
@@ -1047,4 +1049,5 @@ ruby_process_options(argc, argv)
     dln_argv0 = argv[0];
 #endif
+    rb_define_global_const("RUBY_INTERPRETER", rb_progname);
     proc_options(argc, argv);
 


-- 
--- 僕の前にBugはない。
--- 僕の後ろにBugはできる。
    中田 伸悦

In This Thread