[#31191] クラスメソッドについて — cyross@...

みなさん、初めまして。

16 messages 2001/09/02
[#31192] Re: クラスメソッドについて — matz@... (Yukihiro Matsumoto) 2001/09/02

まつもと ゆきひろです

[#31196] ありがとうございます( Re: Re: クラスメソッドについて) — cyross@... 2001/09/03

サイロスです。

[#31234] oracle: sub query — Yasushi Shoji <yashi@...>

やすしです。

16 messages 2001/09/04
[#31241] Re: oracle: sub query — Yasushi Shoji <yashi@...> 2001/09/05

At Tue, 4 Sep 2001 19:59:11 +0900,

[#31238] 半角から全角へ変換 — 吉川 正晃 <yosikawa@...>

吉川と申します。こちらには初めての投稿になります。

33 messages 2001/09/05
[#31240] Re: 半角から全角へ変換 — WATANABE Hirofumi <eban@...> 2001/09/05

わたなべです。

[#31244] jcode + String#tr は? — Take_tk <ggb03124@...> 2001/09/05

たけ(tk)です。

[#31245] Re: jcode + String#tr は? — WATANABE Hirofumi <eban@...> 2001/09/05

わたなべです。

[#31280] 掲示板の再読み込み時の問題 — みかみまさと <kofu@...>

こんにちは。いつもお世話になっています、みかみと申します。

13 messages 2001/09/06

[#31283] ruby 1.6.5 preview1 — matz@... (Yukihiro Matsumoto)

まつもと ゆきひろです

17 messages 2001/09/06

[#31377] 添付ライブラリのリファレンス (HTML) — "Sadayuki Sakamoto" <flea@...8.dion.ne.jp>

酒本と申します。

20 messages 2001/09/11

[#31414] ruby 1.6.5 preview — m_seki@...

18 messages 2001/09/14

[#31419] Hash#+ ハッシュの足し算はいかが? — Take_tk <ggb03124@...>

class Hash

12 messages 2001/09/14

[#31508] 全角を半角に変換 — yoshikazu tsubaki <y-tsubaki@...>

#2回目の人ごめんなさい(間違えて2つのMLに送信してしまいました)

14 messages 2001/09/17

[#31626] my LC2001 summary — Minero Aoki <aamine@...>

あおき@結局三日連続で飲んでしまった です。

117 messages 2001/09/28
[#31688] bcc (Re: my LC2001 summary) — Kazuhiro Yoshida <moriq.kazuhiro@...> 2001/10/01

もりきゅうです。

[#31692] Re: bcc (Re: my LC2001 summary) — "U.Nakamura" <usa@...> 2001/10/01

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

[#31779] Re: bcc (Re: my LC2001 summary) — Kazuhiro Yoshida <moriq.kazuhiro@...> 2001/10/05

もりきゅうです。

[#31782] Re: bcc (Re: my LC2001 summary) — "T.Kitahara" <tko-k@...> 2001/10/05

はじめまして、Kita といいます。

[#31785] Re: bcc (Re: my LC2001 summary) — Kazuhiro Yoshida <moriq.kazuhiro@...> 2001/10/06

もりきゅうです。

[#31805] Re: bcc (Re: my LC2001 summary) — nobu.nakada@... 2001/10/09

なかだです。

[#31806] Re: bcc (Re: my LC2001 summary) — "U.Nakamura" <usa@...> 2001/10/09

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

[#31808] Re: bcc (Re: my LC2001 summary) — nobu.nakada@... 2001/10/09

なかだです。

[#31809] Re: bcc (Re: my LC2001 summary) — "U.Nakamura" <usa@...> 2001/10/09

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

[#31814] Re: bcc (Re: my LC2001 summary) — Kazuhiro Yoshida <moriq.kazuhiro@...> 2001/10/09

もりきゅうです。

[#31642] Re: my LC2001 summary — Masaki Suketa <masaki.suketa@...> 2001/09/29

助田です。

[#31663] Re: my LC2001 summary — nobu.nakada@... 2001/09/30

なかだです。

[#31665] Re: my LC2001 summary — TAKAHASHI Masayoshi <maki@...> 2001/09/30

高橋征義です。

[#31672] Re: my LC2001 summary — matz@... (Yukihiro Matsumoto) 2001/10/01

まつもと ゆきひろです

[#31697] RUG (Re: my LC2001 summary) — TAKAHASHI Masayoshi <maki@...> 2001/10/02

高橋征義です。

[#31699] URUG (Re: RUG) — Kazuhiro Yoshida <moriq.kazuhiro@...> 2001/10/02

もりきゅうです。

[ruby-list:31230] Re: file exist check method?

From: nobu.nakada@...
Date: 2001-09-04 07:29:11 UTC
List: ruby-list #31230
なかだです。

At Sun, 2 Sep 2001 06:46:54 +0900,
Koji Arai <JCA02266@nifty.ne.jp> wrote:
> 一つ言えることは File.join の挙動が現状 (1) なのはUnixだけを
> 考えればそれで十分だからということは言えると思います。
> 
> で、私は DOSish ではある程度賢くなる必要があると考えてるわけ
> ですね(だって単純じゃないんだもの)。

 単純じゃないというよりも、破綻してるという方が近いような気も
しますが。

> それと挙動の一貫性、ルールの明確さも期待したい。私のこだわり
> はこちらの方が大きいですね。ドキュメント書くのに楽だし。
> 
> > だから、(3)を否定するわけではないのですが、それはそれで別途
> > 議論するということでもいいのではないかと思っています。
> > (2)は(3)を否定する/(3)によって否定される変更というわけでもな
> > いので、(2)を採用しておいて後から(3)を組み込んでいく、という
> > 段階的パスも採れるわけですし。
> 
> ま、この辺の方針はお任せします。

 [ruby-dev:31158]のjoin("c:","foo") => "c:./foo"というのは妥協
できる範囲のような気がします。とりあえずdosishで、先頭要素だけ
ドライブレターを認識するように試してみました。


--- dosish.c.orig	Fri Aug 31 20:22:02 2001
+++ dosish.c	Tue Sep  4 16:07:14 2001
@@ -301,10 +301,19 @@ rb_file_s_join(klass, args)
 
     ary = rb_funcall2(args, rb_intern("flatten"), 0, 0);
+    if (RARRAY(ary)->len > 0) {
+	str = RARRAY(ary)->ptr[0];
+	if (RSTRING(str)->len == 2) {
+	    if (RSTRING(str)->ptr[0] && RSTRING(str)->ptr[1] == ':') {
+		RARRAY(ary)->ptr[i] = str = rb_str_dup(str);
+		rb_str_cat2(str, ".");
+	    }
+	}
+    }
     for (i=0; i<RARRAY(ary)->len; i++) {
-	RARRAY(ary)->ptr[i] = str = rb_str_dup(RARRAY(ary)->ptr[i]);
+	str = RARRAY(ary)->ptr[i];
 	if (RSTRING(str)->len > 0) {
-	    conv_separator(RSTRING(str)->ptr);
-	    d = extract_file_root(RSTRING(str)->ptr);
-	    if (d == RSTRING(str)->len && RSTRING(str)->ptr[d-1] == '/') {
+	    d = extract_file_drive(RSTRING(str)->ptr);
+	    if (d+1 == RSTRING(str)->len && isdirsep(RSTRING(str)->ptr[d])) {
+		RARRAY(ary)->ptr[i] = str = rb_str_dup(str);
 		/* chop! */
 		RSTRING(str)->len--;
@@ -313,4 +322,6 @@ rb_file_s_join(klass, args)
     }
     str = rb_ary_join(ary, separator);
+    rb_str_modify(str);
+    conv_separator(RSTRING(str)->ptr);
 //    str = rb_str_uniqsep_bang(str);
     return str;


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

In This Thread