From: Tadayoshi Funaba Date: 2001-02-14T01:36:07+09:00 Subject: [ruby-list:27803] Re: ParseDate.to_time ふなばです。 At 2001-02-13T23:29:35+0900 (2451954.10388JD), maki@inac.co.jp (TAKAHASHI Masayoshi) wrote: maki> (3)は例外かnilかが問題、というところでしょうか。私は例外ではなく maki> nilの方が扱いやすいと思うんですが……。 maki> 例えば、dataというHashにいろいろな文字列があるとして、 (中略) maki> みたいな使い方をするとして、いきなり例外があがっては困る場合が maki> 多そうな気がします。どうなんでしょう。 Time.parse であるとして、mktime で例外になるものは例外で構わないような 気がします。あと、Time.parse は new の変種と思いますが、new が nil を 返すというのは、個人的にどうもしっくりこないのですが、どうでしょう。 maki> それと、実はgetdateがどの程度のものなのか知らないので、(2-2)は maki> どっちがいいのか分かりませんでした。そんなに違うんでしょうか? strptime.rb (a) ではつぎ略名をあつかいます (本当はちょっとちがう)。 'ut' 'gmt' 'est' 'edt' 'cst' 'cdt' 'mst' 'mdt' 'pst' 'pdt' 'a' 'b' 'c' 'd' 'e' 'f' 'g' 'h' 'i' 'k' 'l' 'm' 'n' 'o' 'p' 'q' 'r' 's' 't' 'u' 'v' 'w' 'x' 'y' 'z' getdate.y (b) では、上記に加え、つぎのものをあつかうようです。 'utc' 'wet' 'bst' 'wat' 'at' 'ast' 'adt' 'yst' 'ydt' 'hst' 'hdt' 'cat' 'ahst' 'nt' 'idlw' 'cet' 'met' 'mewt' 'mest' 'mesz' 'swt' 'sst' 'fwt' 'fst' 'eet' 'bt' 'zp4' 'zp5' 'zp6' 'wast' 'wadt' 'cct' 'jst' 'east' 'eadt' 'gst' 'nzt' 'nzst' 'nzdt' 'idle 実際には、一部、'MET DST' のような形で現われます。これがどういう根拠で 選ばれたものなのかよくわかりません。必須用件からすれば、(a) だけでいい はずです。でも、それだと JST がないなど、文句をいう人はいるでしょうね。 あえて、JST をエラーとしてはじいて欲いといった用件がなければ、入れても 構わないのかも。 あと、両方とも ISO 8601 の +0900 のような時差をあつかいますが、(b) は +09 や+09:00 といったものはあつかえないようです。 ふなば ただよし