[#2968] dbm/gdbm/sdbm etc — Dave Thomas <dave@...>
Does ext/dbm supersede gdbm and sdbm?
7 messages
2004/06/07
[#2977] Enumerable#each_with_index in "ri" — Johan Holmberg <holmberg@...>
11 messages
2004/06/12
[#3132] Reporting RI-documentation corrections ?
— Johan Holmberg <holmberg@...>
2004/07/05
[#3133] Re: Reporting RI-documentation corrections ?
— Dave Thomas <dave@...>
2004/07/05
[#3135] Re: Reporting RI-documentation corrections ?
— Austin Ziegler <halostatue@...>
2004/07/05
Speaking of ri documentation, is there anywhere that documents the
[#2978] Date.from_time — Gavin Sinclair <gsinclair@...>
Folks,
5 messages
2004/06/13
[#2982] Array#shift(n) — Michal Rokos <michal@...>
Hello,
15 messages
2004/06/14
[#2985] Re: [Patch] Array#shift(n)
— nobu.nokada@...
2004/06/14
Hi,
[#2987] Re: [Patch] Array#shift(n)
— matz@... (Yukihiro Matsumoto)
2004/06/14
Hi,
[#2988] Re: [Patch] Array#shift(n)
— Michal Rokos <michal@...>
2004/06/14
On Monday 14 of June 2004 16:13, Yukihiro Matsumoto wrote:
[#2989] Re: [Patch] Array#shift(n)
— matz@... (Yukihiro Matsumoto)
2004/06/14
Hi,
[#2991] Re: [Patch] Array#shift(n)
— Michal Rokos <michal@...>
2004/06/14
Hello,
[#2998] Re: [Patch] Array#shift(n)
— nobu.nokada@...
2004/06/15
Hi,
[#2999] Re: [Patch] Array#shift(n)
— Michal Rokos <michal@...>
2004/06/15
Hello,
[#3006] CVS repository — "Eugene Scripnik" <hoaz@...>
Hello.
21 messages
2004/06/16
[#3008] Re: CVS repository
— ts <decoux@...>
2004/06/16
>>>>> "E" == Eugene Scripnik <hoaz@gala.net> writes:
[#3009] Re: CVS repository
— Michal Rokos <michal@...>
2004/06/16
Hi!
[#3010] Re: CVS repository
— Elliott Hughes <ehughes@...>
2004/06/16
On Wed, 2004-06-16 at 09:45, Michal Rokos wrote:
[#3011] Re: CVS repository
— ts <decoux@...>
2004/06/16
>>>>> "M" == Michal Rokos <michal@ruby-lang.org> writes:
[#3012] Re: CVS repository
— "Eugene Scripnik" <hoaz@...>
2004/06/16
Hello.
[#3027] rb_mod_freeze??? — Michal Rokos <michal@...>
Hello!
5 messages
2004/06/17
[#3047] Move all stack info to gc.c — Michal Rokos <michal@...>
Hello,
13 messages
2004/06/23
[#3049] Re: [Patch] Move all stack info to gc.c
— matz@... (Yukihiro Matsumoto)
2004/06/23
Hi,
[#3057] Ruby 1.8.2 to be released. — matz@... (Yukihiro Matsumoto)
Hi,
20 messages
2004/06/23
[#3060] Re: Ruby 1.8.2 to be released.
— Hugh Sasse Staff Elec Eng <hgs@...>
2004/06/23
On Thu, 24 Jun 2004, Yukihiro Matsumoto wrote:
[#3063] Re: Ruby 1.8.2 to be released.
— matz@... (Yukihiro Matsumoto)
2004/06/23
Hi,
[#3090] class= and type checks when casting — "Sean O'Dell" <sean@...>
Matz, I'm not sure if you followed the discussion in ruby-talk about having a
6 messages
2004/06/25
[#3095] 1.8.2: Segfault — Elven <elven@...>
6 messages
2004/06/26
[#3102] gdbm abort - OSX — Dave Thomas <dave@...>
Just before I start another debugging session, has anyone seen this, or
7 messages
2004/06/27
Re: Date.from_time
From:
Gavin Sinclair <gsinclair@...>
Date:
2004-06-14 12:06:20 UTC
List:
ruby-core #2984
On Monday, June 14, 2004, 7:19:59 PM, nobu wrote:
> Hi,
> At Sun, 13 Jun 2004 12:29:17 +0900,
> Daniel Berger wrote in [ruby-core:02979]:
>> t = Time.new
>> d = Date.new(*ParseDate.parsedate(t.to_s)[0..2])
> $ ruby -rdate -e 'puts Date.new(*Time.now.to_a.values_at(5,4,3))'
> 2004-06-14
So it could be as simple as the following:
class Date
def Date.from_time(time)
Date.new(*time.to_a.values_at(5,4,3))
end
end
class DateTime
#
# This is more complicated because Time and DateTime handle
# timezones in *very* different ways. Time deals in seconds,
# DateTime deals in a Rational part of a day. DateTime also
# gives you a *different* time when you specify the time zone,
# which can't be specified up front.
#
# This implementation honors the timezone information from the
# Time object, but not the sub-second resolution, unfortunately.
# DateTime can *return* such a value with #sec_fraction, but
# I can't see how to *set* that value.
#
def DateTime.from_time(time)
gmt_offset = time.gmt_offset # in seconds
datetime_offset = Rational(gmt_offset, 24*3600) # as part of a day
args = time.to_a[0..5].reverse << datetime_offset
DateTime.new(*args)
end
end
The above implementation seems to work. Of course, scrutiny and unit
tests will make sure of it. I'm going to use it in my code, anyway.
So is there any hope of getting these methods in the standard library
once their implementation has been found to be correct?
BTW, the fact that Time#gmtime modifies the receiver bothers me. Why
can't we have 'gmtime' and 'gmtime!', rather than 'getgm' and 'gmtime'?
Gavin