From: Tadayoshi Funaba Date: 1999-09-28T00:00:22+09:00 Subject: [ruby-dev:7937] Re: [PATCH] strftime "%z", timezone ふなばです。 At 1999-09-27T01:53:26+0900 (2451448.20377JD), eban@os.rim.or.jp (WATANABE Hirofumi) wrote: eban> わたしとしては何を狙ってたかというと missing/strftime.c を見てて -timeptr->tm_tzad timeptr->tm_gmtoff eban> -(daylight ? timezone : altzone) eban> -zone.tz_minuteswest eban> のいずれかを表に出して Time#zoneoffset みたいなものがあって eban> もいいんじゃないかなと思ってました. そうですね。僕もあれば便利だとは思っていました。 eban> この 4 つじゃカバーできないってことだと全然話にならないんだけど. 気がついたことを書きます。 timezone という外部変数をつかった %z の実装はまずいのではないかと思い ました。つねに地方時の時差になると思います。Time で時差をとるぶんには、 区別がつくのでよさそうですが。また、gettimeofday の timezone をつかう のも同じことだと思います。 # FreeBSD とか、gettimeofday の timezone はサポートしてないのね。たしか # に、今の実装を考えたら、システムコールでやることでなさそう。 GNU の strftime では tm_gmtoff がない場合に自分で計算する。だけど、こ のやりかたでは、つねに地方時の時差になると思う。これも、Timeでやるなら 問題ないと思います。上限下限付近のあつかいについて、少し考えてみる必要 がありそうですけど。これまで Ruby では、mktime(3) をつかうことはなかっ たけど、もし、これをやるとすると、ここでつかうことになるのかなあ。 ふなば ただよし