1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00

* time.c (time_dup): duplicate the class of original time.

[ruby-core:09357]

* lib/time.rb (Time::make_time, Time::rfc2822, Time::httpdate):
  should respect subclasses.  [ruby-core:09357]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@11250 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
matz 2006-10-31 08:08:46 +00:00
parent 12585d0477
commit 5f66e09590
3 changed files with 14 additions and 6 deletions

View file

@ -181,7 +181,7 @@ class Time
t.localtime if !zone_utc?(zone)
t
else
Time.local(year, mon, day, hour, min, sec, usec)
self.local(year, mon, day, hour, min, sec, usec)
end
end
private :make_time
@ -289,7 +289,7 @@ class Time
year, mon, day, hour, min, sec =
apply_offset(year, mon, day, hour, min, sec, zone_offset(zone))
t = Time.utc(year, mon, day, hour, min, sec)
t = self.utc(year, mon, day, hour, min, sec)
t.localtime if !zone_utc?(zone)
t
else
@ -316,14 +316,14 @@ class Time
(\d{2}):(\d{2}):(\d{2})\x20
GMT
\s*\z/ix =~ date
Time.rfc2822(date)
self.rfc2822(date)
elsif /\A\s*
(?:Monday|Tuesday|Wednesday|Thursday|Friday|Saturday|Sunday),\x20
(\d\d)-(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)-(\d\d)\x20
(\d\d):(\d\d):(\d\d)\x20
GMT
\s*\z/ix =~ date
Time.parse(date)
self.parse(date)
elsif /\A\s*
(?:Mon|Tue|Wed|Thu|Fri|Sat|Sun)\x20
(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\x20
@ -331,7 +331,7 @@ class Time
(\d\d):(\d\d):(\d\d)\x20
(\d{4})
\s*\z/ix =~ date
Time.utc($6.to_i, MonthValue[$1.upcase], $2.to_i,
self.utc($6.to_i, MonthValue[$1.upcase], $2.to_i,
$3.to_i, $4.to_i, $5.to_i)
else
raise ArgumentError.new("not RFC 2616 compliant date: #{date.inspect}")